প্রকাশিত: ৮ সেপ্টেম্বর, ২০২৫
বিভিন্ন খাতের নেতৃবৃন্দ বোঝেন যে, চমৎকার ব্যবহারকারী অভিজ্ঞতা প্রদানের পাশাপাশি গোপনীয়তা রক্ষা করা কতটা গুরুত্বপূর্ণ। সেজনাম একটি আপোসহীন ব্যবহারকারী অভিজ্ঞতা ও গোপনীয়তা প্রদানে প্রতিশ্রুতিবদ্ধ এবং সফলভাবে ফেডারেটেড ক্রেডেনশিয়াল ম্যানেজমেন্ট (FedCM) সংহত করেছে।
যে কোম্পানিগুলো ফেডসিএম থেকে লাভবান হয়
বিভিন্ন ক্ষেত্রের প্রতিষ্ঠানগুলো তাদের সলিউশনের সাথে FedCM সংহত করে। যেহেতু FedCM ফেডারেল আইডেন্টিটি ম্যানেজমেন্টের জন্য ডিজাইন করা হয়েছে, তাই আইডেন্টিটি প্রোভাইডাররাই (IdP) এর প্রধান সুবিধাভোগী। তারা একটি উন্নত সাইন-ইন অভিজ্ঞতা প্রদানের জন্য এটি ব্যবহার করে। ই-কমার্স পরিষেবা প্রদানকারী এবং পেমেন্ট প্রদানকারীরা, যাদের অনেকেই আইডেন্টিটি প্রোভাইডার হিসেবেও কাজ করে, তারাও FedCM-এর মাধ্যমে ব্যবহারকারীর অভিজ্ঞতা উন্নত করার সুযোগ খুঁজে পায়।
সেজনাম
সেজনাম একটি ইউরোপীয় প্রযুক্তি সংস্থা এবং পরিচয় প্রদানকারী প্রতিষ্ঠান, যা চেক প্রজাতন্ত্রের ৯০% মানুষের কাছে পৌঁছায়। এটি একটি সামাজিক, জ্ঞান এবং বিষয়বস্তু কেন্দ্র হিসেবে কাজ করে। সেজনাম তার অংশীদারদের প্ল্যাটফর্মে পরিচালিত অনলাইন স্টোরগুলির গ্রাহকদের তাদের সেজনাম অ্যাকাউন্ট ব্যবহার করে সাইন ইন করার সুযোগ দিতে ফেডসিএম (FedCM) গ্রহণ করেছে।

FedCM-এর মাধ্যমে, Seznam পার্টনার নেটওয়ার্কগুলিতে ব্যবহারকারীর সাইন-ইন হারে উল্লেখযোগ্য বৃদ্ধি, উন্নত ব্যবহারকারী অভিজ্ঞতা এবং থার্ড-পার্টি কুকির প্রাপ্যতা নির্বিশেষে একটি সামঞ্জস্যপূর্ণ পরিচয় প্রবাহ অর্জন করেছে।
অনুপ্রেরণা
সেজনাম বেশ কিছু স্বীকৃত সুবিধার কারণে ফেডসিএম বাস্তবায়ন করার সিদ্ধান্ত নিয়েছিলেন:
- ফেডসিএম ব্যবহারকারীকে মাথায় রেখে ডিজাইন করা হয়েছে, যা ব্যবহারকারীদের আইডিপি-কে দেওয়া তথ্যের ওপর নিয়ন্ত্রণ দেয়। এটি ব্যবহারকারীদের জন্য একটি নিরাপদ ও ব্যক্তিগত পরিবেশ তৈরির সেজনাম-এর দৃষ্টিভঙ্গির সাথে সামঞ্জস্যপূর্ণ।
- FedCM হলো ব্রাউজারের একটি অন্তর্নির্মিত বৈশিষ্ট্য এবং এটি Seznam-এর বিদ্যমান সাইন-ইন অভিজ্ঞতার সাথে সামঞ্জস্যপূর্ণ, যা OAuth 2.0 স্ট্যান্ডার্ড ব্যবহার করে।
- ফেডসিএম হলো আইডেন্টিটি ফেডারেশনের একটি গোপনীয়তা-কেন্দ্রিক পদ্ধতি। উদাহরণস্বরূপ, ব্যবহারকারীর রিলায়িং পার্টি (আরপি)-তে ভিজিটের তথ্য শুধুমাত্র আইডিপি-র সাথেই শেয়ার করা হয়, যদি ব্যবহারকারী সাইন ইন করেন। এটি টেকসই ব্যবসা বিষয়ে সেজনামের দৃষ্টিভঙ্গির সাথে সামঞ্জস্যপূর্ণ।
বাস্তবায়নের বিবরণ
সেজনাম তার বিদ্যমান OAuth সলিউশনের উপরে একটি স্তর হিসেবে FedCM প্রয়োগ করেছে। এই আর্কিটেকচারে, FedCM ফ্লো নিরাপদে IdP থেকে RP-দের কাছে একটি OAuth অথরাইজেশন কোড প্রেরণ করে।

বাস্তবায়ন প্রচেষ্টা
সেজনাম ফেডসিএম-এর বাস্তবায়নকে সহজবোধ্য এবং তাদের বিদ্যমান পদ্ধতির সাথে সামঞ্জস্যপূর্ণ বলে মনে করেছে। এর গবেষণা এবং এপিআই বাস্তবায়নে এক মাস সময় লেগেছিল এবং এর জন্য দুজন ডেভেলপারের প্রয়োজন হয়েছিল। ফেডসিএম-কে প্রোডাকশনে আনতে দুই মাসেরও কম সময় লেগেছিল। প্রক্রিয়াটি ছিল পুনরাবৃত্তিমূলক, যেখানে এপিআই অধ্যয়নে যথেষ্ট সময় ব্যয় করা হয়েছিল।
চ্যালেঞ্জ
প্রাথমিক ব্যবহারকারী হিসেবে, সেজনাম বেশ কিছু প্রতিবন্ধকতা চিহ্নিত করেন এবং মূল্যবান মতামত প্রদান করেন যা এপিআই-টিকে আরও উন্নত করতে সাহায্য করেছে।
একাধিক পরিচয় প্রদানকারীর জন্য সমর্থন
সেজনাম একাধিক আইডেন্টিটি প্রোভাইডারের জন্য ফেডসিএম-এর সমর্থনের বিষয়ে আগ্রহী ছিল। এই ফিচারের মাধ্যমে, তাদের লক্ষ্য ছিল পার্টনার আরপি-গুলোতে ব্যবহারকারীদের সেজনাম বা গুগল অ্যাকাউন্টের মধ্যে যেকোনো একটি বেছে নেওয়ার সুযোগ দেওয়া। তবে, সেজনাম যখন প্রথম ফেডসিএম-এ এটি বাস্তবায়নের জন্য যোগাযোগ করে, তখন ফিচারটি ছিল একেবারে প্রাথমিক পর্যায়ে, এবং ব্যবহারকারীদের জন্য ফিচারটি চালু করতে ডেভেলপারদের একটি অরিজিন ট্রায়ালের জন্য সাইন আপ করে একটি টোকেন ব্যবহার করতে হতো। এই কারণে, সেজনাম ক্রোম স্টেবল-এ ফিচারটি চালু হওয়া পর্যন্ত অপেক্ষা করার সিদ্ধান্ত নেয়।
এই ফিচারটি ক্রোম ১৩৬ থেকে পাওয়া যাচ্ছে, এবং ডেভেলপাররা একাধিক আইডেন্টিটি প্রোভাইডারের জন্য সাপোর্ট কনফিগার করতে পারেন। উদাহরণস্বরূপ, Seznam এবং Google উভয় আইডেন্টিটি প্রোভাইডারকে সাপোর্ট করার জন্য, IdP দুটি প্রোভাইডারকেই একটিমাত্র get() কলে অন্তর্ভুক্ত করতে পারে, এবং RP তা স্বাধীনভাবে করতে পারে:
// Executed on the RP's side:
const credential = await navigator.credentials.get({
identity: {
providers: [
{
// IdP1: Seznam config file URL
configURL: 'https://szn.cz/.well-known/web-identity',
clientId: '123',
},
{
// Allow Google Sign-in
configURL: 'https://accounts.google.com/gsi/fedcm.json',
clientId: '456',
},
],
},
});
সেজনাম ইঙ্গিত দিয়েছে যে এই ফিচারটি তাদের সমাধানের একটি অংশ হবে। এছাড়াও, ফেডসিএম টিম একাধিক get() কলের সুবিধাসহ একাধিক SDK-এর জন্য সাপোর্ট বাস্তবায়ন করছে ।
ব্যক্তিগত ডিএনএস
টেস্টিং পর্যায়ে সেজনাম তার নেটওয়ার্ক কনফিগারেশন সংক্রান্ত একটি সমস্যার সম্মুখীন হয়েছিল। এর টেস্ট IdP সার্ভারটি একটি প্রাইভেট নেটওয়ার্কের মধ্যে অবস্থিত ছিল, যা শুধুমাত্র প্রাইভেট DNS-এর মাধ্যমে অ্যাক্সেসযোগ্য ছিল। সর্বসাধারণের জন্য উন্মুক্ত করার আগে অভ্যন্তরীণ টেস্টিং এবং ডেভেলপমেন্ট এনভায়রনমেন্টের জন্য এই ধরনের সেটআপ প্রচলিত।
তবে, এই ব্যবস্থাটি একটি সমস্যার সৃষ্টি করে: যেহেতু একটি well-known ফাইল অবশ্যই একটি eTLD+1 থেকে পরিবেশন করতে হবে, এবং একটি ব্যক্তিগত ডেভেলপমেন্ট ডোমেইন পাবলিক সাফিক্স লিস্টে নিবন্ধিত নয়, তাই ব্রাউজারটি ডেভেলপমেন্ট ডোমেইনে হোস্ট করা well-known ফাইলটি ফেচ করার জন্য অনুরোধ পাঠাবে না।
-
login.idp.example: example production domain. -
idp.example/.well-known/web-identity: প্রোডাকশনে থাকা একটি উদাহরণwell-knownফাইল। -
login.dev.idp.example: উদাহরণ উন্নয়ন ডোমেইন। -
login.dev.idp.example/.well-known/web-identity: ডেভেলপমেন্ট এনভায়রনমেন্টের একটি উদাহরণwell-knownফাইল।
যখন FedCM ইমপ্লিমেন্টেশনটি একটি প্রাইভেট ডোমেইনে হোস্ট করা হয়, তখন well-known ফাইলে ব্রাউজার রিকোয়েস্ট করার ফলে এই এররটি দেখা দেয়:
The fetch of the well-known file resulted in a network error: ERR_NAME_NOT_RESOLVED
আপনি Chrome-এর #fedcm-without-well-known-enforcement ফ্ল্যাগটি সক্রিয় করে এই ত্রুটিটি সমাধান করতে পারেন। এই ফ্ল্যাগটি সক্রিয় করা হলে, ব্রাউজার পরীক্ষার উদ্দেশ্যে well-known ফাইলটি আনা এড়িয়ে যায়। Chrome-এ কীভাবে টেস্টিং ফ্ল্যাগ সক্রিয় করতে হয় তা জানুন।
কাস্টম তথ্য প্রকাশ
সেজনাম প্রাথমিক ফেডসিএম ইউআই ডিজাইনের পাশাপাশি অতিরিক্ত তথ্যও অন্তর্ভুক্ত করতে চেয়েছিলেন। স্ট্যান্ডার্ড ফেডসিএম ডায়ালগটি ব্যবহারকারীকে একটি নির্দিষ্ট বার্তা প্রদর্শন করে, যেখানে বলা থাকে যে নির্দিষ্ট ডেটা—সাধারণত ব্যবহারকারীর প্রোফাইল ছবি, নাম এবং ইমেল ঠিকানা—আরপি-এর সাথে শেয়ার করা হয়েছে।
ফেডসিএম টিম মতামত অন্তর্ভুক্ত করেছে এবং ব্যবহারকারীর কাছে উপস্থাপিত তথ্য কাস্টমাইজ করার সুযোগ দিতে এপিআই-কে সম্প্রসারিত করেছে। উদাহরণস্বরূপ, ‘ কন্টিনিউ অন’ ফিচারের মাধ্যমে, আইডিপি ব্যবহারকারীকে অতিরিক্ত তথ্য বা অনুমতির অনুরোধ করার জন্য একটি কাস্টম পেজে রিডাইরেক্ট করতে পারে। ক্রোম ১৩২ থেকে সমর্থিত ‘কাস্টম প্যারামিটার’ এবং ‘ফিল্ডস’ ফিচারগুলো আরও কাস্টমাইজেশনের সুযোগ দেয়।

নির্ভরকারী পক্ষের উৎস যাচাইকরণ
IdP সার্ভারকে অবশ্যই আগত FedCM অনুরোধের Origin HTTP হেডারটি যাচাই করতে হবে, যাতে নিশ্চিত করা যায় যে অনুরোধটি RP কর্তৃক IdP-তে পূর্ব-নিবন্ধিত অরিজিনের সাথে মেলে। এটি নিশ্চিত করে যে FedCM ID অ্যাসারশন অনুরোধটি একজন অনুমোদিত RP-এর কাছ থেকে এসেছে, এবং client_id ব্যবহারকারী কোনো আক্রমণকারীর কাছ থেকে নয়।
সেজনামের একটি ব্যতিক্রমী পরিস্থিতি রয়েছে: যখন এর অংশীদার আরপি-রা সেজনামে নিবন্ধন করে, তখন এটি আরপি-র উৎস সংক্রান্ত তথ্য জানতে চায় না। এর মানে হলো, আরপি-র উৎস যাচাই করা যায় না।
সেজনামের ফেডসিএম ইন্টিগ্রেশনটি একটি বিদ্যমান OAuth সলিউশনের উপর ভিত্তি করে তৈরি। এটি অরিজিন যাচাই না করেই সলিউশনটির নিরাপত্তা নিশ্চিত করতে আরপি-র client_id এবং client_secret উভয়ই ভ্যালিডেট করার বিকল্প পথ অবলম্বন করেছে।
পরিচয় প্রদানকারী ব্যবহারকারী-মুখী ডোমেন
সেজনাম-এর ব্যবহারকারী প্রমাণীকরণ পরিকাঠামো প্রধানত szn.cz ডোমেইনে পরিচালিত হয়, যেখানে FedCM-এর জন্য প্রয়োজনীয় IdP এন্ডপয়েন্টগুলো হোস্ট করা থাকে। তবে, এর প্রধান কর্পোরেট পরিচয় এবং যে ডোমেইনের অধীনে ব্যবহারকারীরা এর পরিষেবাগুলোকে ব্যাপকভাবে চেনে ও বিশ্বাস করে, তা হলো seznam.cz ।
FedCM ডায়ালগটি IdP এন্ডপয়েন্টগুলির প্রকৃত অরিজিন ডোমেইন প্রদর্শন করে: szn.cz seznam.cz ব্র্যান্ডের সাথে পরিচিত ব্যবহারকারীরা সাইন-ইন প্রক্রিয়ার সময় কম পরিচিত szn.cz ডোমেইন দিয়ে সাইন-ইন করতে বলা হলে বিভ্রান্ত হতে পারেন এবং দ্বিধা বোধ করতে পারেন।
ক্রোম ১৪১ থেকে শুরু করে, ফেডসিএম সেই ডোমেইনটি ছাড়া অন্য কোনো ডোমেইন প্রদর্শনের অনুমতি দেয় না, যেটিতে আইডিপি ইমপ্লিমেন্টেশন হোস্ট করা আছে। ব্যবহারকারীর স্বচ্ছতা নিশ্চিত করার উদ্দেশ্যে এই সীমাবদ্ধতাটি একটি ইচ্ছাকৃত ডিজাইন সিদ্ধান্ত। তবে, ফেডসিএম টিম এই সীমাবদ্ধতার কারণে সৃষ্ট চ্যালেঞ্জগুলো স্বীকার করে এবং সম্ভাব্য সমন্বয় নিয়ে আলোচনা করছে।
প্রভাব
FedCM API-এর মাধ্যমে, Seznam এখন অংশীদার ব্যবহারকারীদের জন্য এক ট্যাপে অনুমোদন প্রক্রিয়া প্রদান করতে পারে। এটি অন্যান্য প্রমাণীকরণ পদ্ধতির তুলনায় FedCM-এর ইউজার এক্সপেরিয়েন্সের (UX) সুবিধাসমূহ তুলে ধরেছে।
যদিও সেজনাম লক্ষ্য করেছে যে যেসব ওয়েবসাইট ফেডসিএম সাইন-ইন চালু করেছে, সেখানে ব্যবহারকারীর সম্পৃক্ততা উল্লেখযোগ্যভাবে বৃদ্ধি পেয়েছে, তবে অন্যান্য কারণ থেকে এর সুনির্দিষ্ট প্রত্যক্ষ প্রভাবকে আলাদা করার জন্য এটি কোনো ব্যাপক বিশ্লেষণ করেনি। ফেডসিএম ইন্টিগ্রেশনের আগে, ব্যবহারকারী শনাক্তকরণের জন্য সম্মতিপ্রাপ্ত হ্যাশ করা ইমেল ব্যবহার করে গেস্ট চেকআউটের ব্যবস্থা ছিল। এই ধরনের বিশ্লেষণ করার ক্ষেত্রে চ্যালেঞ্জটি ছিল এটি অনুমান করা যে, ব্যবহারকারীর কেনাকাটা ফেডসিএম-এর কারণেই হয়েছে, নাকি ব্যবহারকারী গেস্ট চেকআউট ব্যবহার করেই কেনাকাটা সম্পন্ন করতেন। সেজনামের অনুমান অনুযায়ী, ফেডসিএম-এর উন্নত ব্যবহার-সহজতা এই উচ্চতর কনভার্সন রেটে অবদান রেখে থাকতে পারে।
উপসংহার
Seznam successfully implemented FedCM, providing an alternative authorization flow alongside its existing OAuth solution. While Seznam faced some challenges related to identity provider support, private DNS setups, customization of the disclosure text, relying party origin validation, and user-facing domain display, the API has matured since its implementation. The FedCM team has incorporated feedback from Seznam and other early adopters, enabling better tools to address these challenges. As a next step, Seznam plans to implement FedCM's support for multiple identity providers.