OpenID Connect (OIDC) হল একটি প্রমাণীকরণ এবং অনুমোদন প্রোটোকল যা OAuth 2.0 কাঠামোর উপরে কাজ করে। OIDC-এর প্রাথমিক লক্ষ্য হল ওয়েব এবং মোবাইল অ্যাপ্লিকেশনগুলি ব্যবহারকারীদের প্রমাণীকরণ এবং তাদের সুরক্ষিত সংস্থানগুলিতে অ্যাক্সেস পরিচালনা করার উপায়কে মানক করা। এটি একটি নমনীয়, আন্তঃপরিচালনযোগ্য এবং সুরক্ষিত পরিচয় স্তর প্রদান করে OAuth 2.0 এর ক্ষমতা প্রসারিত করে যা ব্যবহারকারীর তথ্য স্থানান্তর করতে ব্যবহার করা যেতে পারে, যা "দাবি" নামে পরিচিত। ওআইডিসিটি ওপেনআইডি ফাউন্ডেশন দ্বারা তৈরি এবং রক্ষণাবেক্ষণ করা হয়েছিল গুগল, মাইক্রোসফ্ট এবং ফেসবুকের মতো কয়েকটি শীর্ষস্থানীয় প্রযুক্তি সংস্থার সহায়তায়।
ওআইডিসি আধুনিক ব্যবহারকারী প্রমাণীকরণ সমাধানগুলির একটি অপরিহার্য উপাদান হয়ে উঠেছে কারণ এটি কাস্টম প্রমাণীকরণ স্কিমগুলি বাস্তবায়ন করার সময় বিকাশকারীদের দ্বারা সম্মুখীন হওয়া বেশ কয়েকটি মূল চ্যালেঞ্জের সমাধান করে। এই চ্যালেঞ্জগুলির মধ্যে রয়েছে নিরাপদে পাসওয়ার্ড স্টোরেজ পরিচালনা করা, একাধিক অ্যাপ্লিকেশন জুড়ে একক সাইন-অন (SSO) সক্ষম করা এবং মাল্টি-ফ্যাক্টর প্রমাণীকরণ (MFA) এর জন্য সমর্থন প্রদান করা। OIDC ব্যবহার করে, বিকাশকারীরা তাদের অ্যাপ্লিকেশনের নির্দিষ্ট প্রয়োজনীয়তার উপর ফোকাস করতে সক্ষম করে বিশ্বস্ত আইডেন্টিটি প্রোভাইডার (IdPs) এর কাছে প্রমাণীকরণের দায়িত্বগুলি অফলোড করতে পারে।
একটি আদর্শ ওআইডিসি প্রবাহে, তিনটি প্রধান ভূমিকা জড়িত: ব্যবহারকারী, ক্লায়েন্ট অ্যাপ্লিকেশন এবং আইডেন্টিটি প্রোভাইডার (আইডিপি)।
- ব্যবহারকারী: ব্যবহারকারী হল সেই ব্যক্তি যিনি একটি ক্লায়েন্ট অ্যাপ্লিকেশনের সুরক্ষিত সংস্থানগুলিতে অ্যাক্সেস চাইছেন৷
- ক্লায়েন্ট অ্যাপ্লিকেশন: ক্লায়েন্ট অ্যাপ্লিকেশন হল এমন একটি সফ্টওয়্যার যেটির কার্য সম্পাদনের জন্য ব্যবহারকারীর তথ্যের অ্যাক্সেস প্রয়োজন। AppMaster প্ল্যাটফর্মের প্রেক্ষাপটে, এটি প্ল্যাটফর্মের স্বজ্ঞাত no-code সরঞ্জাম ব্যবহার করে নির্মিত একটি ওয়েব বা মোবাইল অ্যাপ্লিকেশন হতে পারে।
- আইডেন্টিটি প্রোভাইডার (আইডিপি): আইডেন্টিটি প্রোভাইডার হল ব্যবহারকারীকে প্রমাণীকরণ এবং সুরক্ষিত সংস্থানগুলি অ্যাক্সেস করার জন্য প্রয়োজনীয় টোকেন তৈরি করার জন্য দায়ী সার্ভার। IdPs হতে পারে Google, Apple, Facebook, Microsoft, অথবা OIDC স্ট্যান্ডার্ড বাস্তবায়নকারী অন্য কোনো পরিষেবা।
OIDC বাস্তবায়নের জন্য, বিকাশকারীরা সাধারণত কয়েকটি ধাপ অনুসরণ করে, যার মধ্যে রয়েছে: নির্বাচিত আইডিপির সাথে তাদের অ্যাপ্লিকেশন নিবন্ধন করা, ব্যবহারকারীদের প্রমাণীকরণের জন্য অনুরোধ জানানোর জন্য ক্লায়েন্ট অ্যাপ্লিকেশন কনফিগার করা, টোকেন প্রদান পরিচালনা করা এবং ব্যবহারকারীর তথ্যের জন্য টোকেন বিনিময় পরিচালনা করা এবং অবশেষে অ্যাক্সেস পরিচালনা করা। এবং প্রদত্ত টোকেন ব্যবহার করে তাদের আবেদনের নিরাপত্তা।
OIDC এর তিনটি অপরিহার্য বিল্ডিং ব্লক রয়েছে: আইডি টোকেন, ইউজারিনফো এন্ডপয়েন্ট এবং ডিসকভারি। আসুন তাদের প্রতিটি বিস্তারিত আলোচনা করা যাক:
- আইডি টোকেন: একটি আইডি টোকেন হল একটি JSON ওয়েব টোকেন (JWT) যাতে প্রমাণীকৃত ব্যবহারকারী সম্পর্কে দাবির একটি সেট থাকে। OIDC-এর জন্য "সাব" (বিষয় বা ব্যবহারকারীর শনাক্তকারী), "অড" (শ্রোতা বা উদ্দিষ্ট প্রাপক) এবং "ইসস" (ইস্যুকারী বা সনাক্তকারী সত্তা যা টোকেন জারি করেছে) এর মতো ন্যূনতম স্ট্যান্ডার্ড দাবিগুলির একটি সেট প্রয়োজন। বিকাশকারীরা অতিরিক্ত ব্যবহারকারীর তথ্য উপস্থাপন করার জন্য কাস্টম দাবিগুলিও সংজ্ঞায়িত করতে পারে।
- ইউজারিনফো এন্ডপয়েন্ট: ইউজারিনফো এন্ডপয়েন্ট হল আইডিপি দ্বারা প্রদত্ত একটি OAuth 2.0 সুরক্ষিত সংস্থান যা প্রমাণীকৃত ব্যবহারকারীর বিষয়ে দাবি ফেরত দেয়। এই দাবিগুলি সাধারণত ক্লায়েন্ট অ্যাপ্লিকেশন দ্বারা আরও বিস্তারিত ব্যবহারকারীর তথ্য যেমন ইমেল ঠিকানা, পুরো নাম এবং প্রোফাইল ছবি পেতে ব্যবহার করা হয়।
- আবিষ্কার: OIDC IdPs দ্বারা প্রকাশিত মেটাডেটার গতিশীল আবিষ্কারকে সমর্থন করে যার ফলে ক্লায়েন্ট অ্যাপ্লিকেশনের জন্য endpoints, সমর্থিত স্কোপ এবং আইডিপি-র সাথে যোগাযোগ করার জন্য প্রয়োজনীয় অন্যান্য তথ্য কনফিগার করা সহজ হয়। এই মেটাডেটা সাধারণত একটি সুপরিচিত আবিষ্কারের endpoint পাওয়া যায় এবং রানটাইমে প্রোগ্রাম্যাটিকভাবে আনা যেতে পারে।
OIDC স্পেসিফিকেশন বেশ কিছু স্ট্যান্ডার্ড ফ্লোকে সংজ্ঞায়িত করে যা বিভিন্ন ধরনের অ্যাপ্লিকেশন, চাহিদা এবং ক্ষমতা পূরণ করে। কিছু জনপ্রিয় প্রবাহ হল অনুমোদন কোড ফ্লো (PKCE সহ বা ছাড়া), অন্তর্নিহিত প্রবাহ এবং হাইব্রিড ফ্লো। প্রতিটি প্রবাহ বিভিন্ন প্রয়োজনীয়তা পূরণ করে এবং বিভিন্ন মাত্রার নিরাপত্তা ও জটিলতা প্রদান করে।
AppMaster প্ল্যাটফর্মের প্রেক্ষাপটে, ওয়েব, ব্যাকএন্ড এবং মোবাইল অ্যাপ্লিকেশনগুলির জন্য নিরাপদ এবং নির্বিঘ্ন প্রমাণীকরণ বাস্তবায়নের জন্য OIDC-এর সাহায্য নেওয়া যেতে পারে। জনপ্রিয় আইডিপিগুলির সাথে একীভূত হওয়ার মাধ্যমে, AppMaster ডেভেলপারদের একাধিক ডিভাইস, প্ল্যাটফর্ম এবং অ্যাপ্লিকেশন জুড়ে একটি ধারাবাহিক প্রমাণীকরণ অভিজ্ঞতা প্রদান করতে সক্ষম করে। উপরন্তু, OIDC ব্যবহার করে, AppMaster-উত্পাদিত অ্যাপ্লিকেশনগুলি বর্ধিত নিরাপত্তা, হ্রাসকৃত উন্নয়ন প্রচেষ্টা এবং উন্নত ব্যবহারকারীর অভিজ্ঞতা থেকে উপকৃত হয়, যা একটি দ্রুত, আরও নিরাপদ, এবং সাশ্রয়ী অ্যাপ্লিকেশন বিকাশ প্রক্রিয়ার দিকে পরিচালিত করে।
উপসংহারে, OpenID Connect হল একটি শক্তিশালী প্রমাণীকরণ এবং অনুমোদন কাঠামো যা ওয়েব এবং মোবাইল ইকোসিস্টেম জুড়ে আধুনিক ব্যবহারকারী প্রমাণীকরণের জন্য ডি-ফ্যাক্টো স্ট্যান্ডার্ড হয়ে উঠেছে। এর শক্তিশালী নিরাপত্তা বৈশিষ্ট্য এবং আন্তঃব্যবহারযোগ্যতার সাথে, OIDC ডেভেলপার এবং শেষ ব্যবহারকারী উভয়ের জন্যই উল্লেখযোগ্য সুবিধা প্রদান করে। AppMaster প্ল্যাটফর্মে OIDC অন্তর্ভুক্ত করার মাধ্যমে, বিকাশকারীরা সুবিন্যস্ত প্রমাণীকরণ প্রক্রিয়া, ব্যতিক্রমী ব্যবহারকারীর অভিজ্ঞতা এবং নিরাপদ এবং নির্ভরযোগ্য অ্যাক্সেস ম্যানেজমেন্টের নিশ্চয়তা সহ উচ্চ-মানের অ্যাপ্লিকেশন সরবরাহ করতে পারে।