উত্তর:
এগুলি প্রমাণীকরণের দুটি পৃথক প্রোটোকল এবং প্রযুক্তিগত স্তরে এগুলি পৃথক।
দূরত্ব থেকে, ব্যবহারকারীগণ যখন প্রমাণীকরণ শুরু করেন তখন পার্থক্যগুলি শুরু হয়। ওপেনআইডি-র সাথে, একজন ব্যবহারকারী লগইন সাধারণত সংস্থানটির একটি HTTP ঠিকানা যা প্রমাণীকরণের জন্য দায়ী। অন্যদিকে, এসএএমএল আপনার সাইট এবং পরিচয় সরবরাহকারীর মধ্যে সুস্পষ্ট বিশ্বাসের উপর ভিত্তি করে তাই অজানা সাইট থেকে শংসাপত্র গ্রহণ করা অস্বাভাবিক বিষয়।
ওপেনআইডি পরিচয়গুলি নেট থেকে ঘুরে আসা সহজ। একজন বিকাশকারী হিসাবে আপনি কেবল তখনই একেবারে পৃথক ওপেনআইডি সরবরাহকারী ব্যবহারকারীদের গ্রহণ করতে পারেন। অন্যদিকে, একজন এসএএমএল সরবরাহকারীকে সাধারণত আগাম কোডিং করতে হয় এবং আপনি কেবলমাত্র নির্বাচিত পরিচয় সরবরাহকারীদের সাথে আপনার অ্যাপ্লিকেশনটিকে সংঘবদ্ধ করে তোলেন। স্বীকৃত ওপেনআইডি পরিচয় সরবরাহকারীদের তালিকা সংকীর্ণ করা সম্ভব তবে আমি মনে করি এটি সাধারণ ওপেনআইডি ধারণাটির বিরুদ্ধে থাকবে।
ওপেনআইডি-র মাধ্যমে আপনি স্বেচ্ছাসেবক সার্ভার থেকে আগত পরিচয় স্বীকার করেন। কেউ দাবি করে http://someopenid.provider.com/john.smith
। আপনি কীভাবে এটি আপনার ডেটাবেজে কোনও ব্যবহারকারীর সাথে মেলে যাচ্ছেন? কোনওরকম, উদাহরণস্বরূপ কোনও নতুন অ্যাকাউন্টের সাথে এই তথ্যটি সঞ্চয় করে এবং ব্যবহারকারী যখন আপনার সাইটটিতে আবার দেখা হয় তখন এটি সনাক্ত করে। নোট করুন যে ব্যবহারকারী সম্পর্কে অন্য কোনও তথ্য (তার নাম বা ইমেল সহ) বিশ্বাস করা যায় না!
অন্যদিকে, আপনার অ্যাপ্লিকেশন এবং এসএএমএল আইডি সরবরাহকারীর মধ্যে যদি একটি সুস্পষ্ট বিশ্বাস থাকে তবে আপনি নাম এবং ইমেল সহ ব্যবহারকারী সম্পর্কে সম্পূর্ণ তথ্য পেতে পারেন এবং বিশ্বাসের সম্পর্কের কারণে এই তথ্যটি বিশ্বাসযোগ্য হতে পারে। এর অর্থ হল যে আপনি বিশ্বাস করেন যে আইডি সরবরাহকারী কোনওভাবে সমস্ত তথ্য বৈধ করেছে এবং আপনি অ্যাপ্লিকেশন পর্যায়ে এটি বিশ্বাস করতে পারেন। যদি ব্যবহারকারীরা অজানা সরবরাহকারী দ্বারা প্রদত্ত এসএএমএল টোকেনগুলি নিয়ে আসে, আপনার অ্যাপ্লিকেশনটি কেবল প্রমাণীকরণটিকে প্রত্যাখ্যান করে।
(বিভাগটি 07-2017, 08-2018 প্রসারিত)
এই উত্তরের তারিখগুলি 2011 এবং সেই সময় ওপেনআইডিআইপি ওপেনআইডি 2.0 এর জন্য দাঁড়িয়েছিল । পরে, কোথাও কোথাও, OAuth2.0 প্রকাশিত হয়েছে এবং ২০১৪-এ, ওপেনআইডি কানেক্ট ( এখানে আরও বিস্তারিত টাইমলাইন )।
আজকাল যে কারও কাছে এটি পড়ছে - ওপেনআইডি কানেক্ট একই ওপেনআইডি নয় মূল উত্তরটি বোঝায় , বরং এটি OAuth2.0 এ এক্সটেনশনের সেট।
যদিও এই উত্তর ধারণাগত দৃষ্টিকোণ থেকে কিছু হালকা চালা করতে পারেন কেউ OAuth2.0 পটভূমি সহ আসার জন্য একটি খুব সংক্ষিপ্ত সংস্করণ যা থেকে OpenID হয় হয় আসলে OAuth2.0 কিন্তু এটি একটি আদর্শ উপায় যোগ করা ব্যবহারকারী তথ্য অনুসন্ধান অ্যাক্সেস টোকেন পর সহজলভ্য.
মূল প্রশ্নের উল্লেখ করে - ওপেনআইডি কানেক্ট (OAuth2.0) এবং এসএএমএল এর মধ্যে মূল পার্থক্যটি কীভাবে অ্যাপ্লিকেশন এবং পরিচয় সরবরাহকারীর মধ্যে বিশ্বাসের সম্পর্ক তৈরি করা হয়:
এসএএমএল একটি ডিজিটাল স্বাক্ষরের উপর বিশ্বাসের সম্পর্ক তৈরি করে, পরিচয় প্রদানকারী কর্তৃক প্রদত্ত এসএএমএল টোকেনগুলি স্বাক্ষরিত এক্সএমএল হয়, অ্যাপ্লিকেশন স্বাক্ষরটি নিজেই যাচাই করে এবং এটি যে শংসাপত্রটি উপস্থাপন করে তা বৈধ। ব্যবহারকারীর তথ্য অন্য তথ্যগুলির মধ্যে একটি এসএএমএল টোকেনে অন্তর্ভুক্ত।
OAuth2 অ্যাপ্লিকেশন থেকে সনাক্তকরণের জন্য প্রত্যক্ষ এইচটিটিপি কলের উপর বিশ্বাসের সম্পর্ক তৈরি করে। অনুরোধটিতে অ্যাক্সেস টোকেন রয়েছে (প্রোটোকল প্রবাহের সময় অ্যাপ্লিকেশন দ্বারা প্রাপ্ত) এবং প্রতিক্রিয়াটিতে ব্যবহারকারী সম্পর্কে তথ্য রয়েছে।
অ্যাপ্লিকেশন থেকে পরিচয় সরবরাহকারীকে কলটির সাথে যুক্ত এই অতিরিক্ত পদক্ষেপ ছাড়াই পরিচয় পাওয়া সম্ভব করার জন্য ওপেনআইডি কানেক্টটি আরও প্রসারিত করে । ধারণাটি ভিত্তিতে তৈরি করা হয়েছে যে ওপেনআইডি কানেক্ট সংস্থাগুলি প্রকৃতপক্ষে দুটি টোকেন ইস্যু করে access_token
, একই, একটি একই OAuth2.0 ইস্যু এবং নতুন, id_token
যা জেডাব্লুটি টোকেন, পরিচয় প্রদানকারী দ্বারা স্বাক্ষরিত । id_token
JWT টোকেনের অন্তর্ভুক্ত দাবির উপর ভিত্তি করে অ্যাপ্লিকেশনটি স্থানীয় সেশনটি স্থাপন করতে ব্যবহার করতে পারে তবে অন্যান্য পরিষেবাদি সম্পর্কে আরও জিজ্ঞাসা id_token
করার জন্য এটি ব্যবহার করা যাবে না , তৃতীয় পক্ষের পরিষেবাগুলিতে এই জাতীয় কলগুলি এখনও ব্যবহার করা উচিতaccess_token
। আপনি ওপেনআইডি সংযোগটি তখন SAML2 (স্বাক্ষরিত টোকেন) এবং OAuth2 (অ্যাক্সেস টোকেন) এর মধ্যে একটি হাইব্রিড হিসাবে ভাবতে পারেন, যেমন ওপেনআইডি কানেক্টটিতে কেবল উভয়ই জড়িত।
ওপেনআইডিআইএল এবং এসএএমএল 2 উভয়ই ফেডারেটেড পরিচয়ের একই ধারণার ভিত্তিতে। তাদের মধ্যে কিছু পার্থক্য নীচে দেওয়া হল ..
পার্টির পক্ষে বেশ দেরি হয়ে কারিগরি বিবরণগুলি একপাশে রেখে, আমি কী বুঝতে পারি যে এসএএমএল এবং অন্যান্য লেখক মান (ইনক। ওপেনআইডি) এর মধ্যে সবচেয়ে বড় পার্থক্য হ'ল
জন্য SAML , পরিচয় প্রদানকারী (আইডিপি) এবং সার্ভিস প্রোভাইডার (এসপি) প্রয়োজন একে অপরের হাত আগে জানতে প্রাক কনফিগার , স্ট্যাটিক প্রমাণীকরণ এবং অনুমোদন। ওপেনআইডি (+ সংযুক্ত) এর এমন কোনও প্রয়োজন নেই।
আইডিপিগুলির জন্য এটি গুরুত্বপূর্ণ যে কে ডেটা অ্যাক্সেস করছে তার উপর সম্পূর্ণ নিয়ন্ত্রণ চায়। স্ট্যান্ডার্ডের অংশটি হ'ল নির্দিষ্ট এসপিগুলিতে কী সরবরাহ করা হয় তা কনফিগার করা।
উদাহরণস্বরূপ, কোনও ব্যাংক তার ব্যবহারকারীদের কিছু পূর্বনির্ধারিত বিষয়গুলি (নিয়ম বা অন্যান্য কঠোর সুরক্ষা বিধিগুলির কারণে) ব্যতীত কোনও পরিষেবা অ্যাক্সেস করতে চায় না।
এর অর্থ এই নয় যে একটি ওপেনআইডি আইডিপি, এই জাতীয় বিধিনিষেধ প্রয়োগ করতে পারে না। একটি ওপেনআইডি প্রয়োগকারী অ্যাক্সেস নিয়ন্ত্রণ করতে পারে তবে এটি ওপেনআইডি-র উদ্দেশ্য নয়।
পূর্বনির্ধারিত, কড়া, স্থিতিশীল, অ্যাক্সেস নিয়ন্ত্রণের পার্থক্য ছাড়া ধারণাটি (প্রযুক্তিগতভাবে নয়), ওপেনআইডি কানেক্ট এবং এসএএমএল একই রকম।
নীচের লাইন, আপনি যদি এসপি হন তবে আপনার গ্রাহকদের যা প্রয়োজন তা সমর্থন করা উচিত:
এসএএমএল এবং ওপেনআইডি উভয়ই পরিচয় সরবরাহকারী (সংক্ষেপিত আইডিপি) অর্থাৎ বিকেন্দ্রীভূত প্রমাণীকরণ প্রোটোকল (একক সাইন-অন পরিচয়) হিসাবে কাজ করতে পারে।
এস ecurity একটি ssertion এম arkup এল anguage ( জন্য SAML ) নিরাপত্তা ডোমেন জুড়ে প্রমাণীকরণ এবং অনুমোদন তথ্য আদান প্রদানের জন্য প্রোফাইলের একটি সেট। এসএএমএল ডোমেন মডেলটিতে একটি পরিচয় প্রদানকারী একটি বিশেষ ধরণের প্রমাণীকরণ কর্তৃপক্ষ। বিশেষত, একটি এসএএমএল পরিচয় সরবরাহকারী এমন একটি সিস্টেম সত্তা যা এসএএমএল এর এসএসও প্রোফাইলের সাথে একত্রে প্রমাণীকরণের assertions জারি করে। একটি নির্ভরযোগ্য পার্টি যা এই প্রমাণীকরণের দাবিগুলি গ্রাস করে তাকে এসএএমএল পরিষেবা সরবরাহকারী বলা হয়। উৎস
ও পেন আইডি সি অননেট ( ওআইডিসি ) OAuth 2.0 এর উপরে একটি অনুমোদনের স্তর, একটি অনুমোদনের কাঠামো। ওপেনআইডি ফাউন্ডেশন দ্বারা মান নিয়ন্ত্রণ করা হয়। OAuth অনুমোদনের প্রোটোকল এবং বিশেষত একটি প্রমাণীকরণ প্রোটোকল হিসাবে নকশাকৃত ওপেনআইডির চেয়ে অনুমোদনের প্রোটোকলের জন্য। ওআইডিসি সাধারণ জেএসএন ওয়েব টোকেন (জেডাব্লুটি) ব্যবহার করে, এগুলি জাভাস্ক্রিপ্ট দ্বারা গ্রাস করা সহজ।
যদি আপনার ব্যবহারকারীরা কেবল ফেসবুক বা টুইটারের সাহায্যে লগইন করতে চান তবে OAuth ব্যবহার করুন। যদি আপনার ব্যবহারকারীরা তাদের ওপেনআইডিআইডি সরবরাহকারীদের ঘাড় ঘুরিয়ে রাখেন তারা ওপেনআইডি ব্যবহার করুন কারণ তারা "তাদের পরিচয়ের মালিক অন্য কেউ চান না"।