در این مثال قصد دارم فرایند احراز هویت SSO با استفاده از پروتکل OAuth را به به شکل خیلی ساده با ذکر یک مثال توضیح بدم.
فرض کنید مهدی میخواهد برای مشاهده یک فیلم از سینما فرایند تهیه بلیط تا مجاز شدن برای دیدن اون فیلم رو طبق استاندارد OAuth طی کنه.
اولین مرحله: خرید بلیط سینما از سایت
فرض کنیم مهدی برای دیدن فیلم نهنگ عنبر ۲ از سینمای آزادی به سایت این سینما مراجعه کرده فیلم رو انتخاب کرده، صندلی را انتخاب کرده و نهایتاً رفته بانک، به صورت آنلاین پرداخت هم انجام داده و سایت سینما آزادی نهایتاً یک کد عددی کوتاه، رو به مهدی ارائه کرده.
اگر بخواهیم این مرحله رو، به صورت فنی معادل سازی کنیم؛ این مرحله دقیقاً همان جایی است که کاربر در SSO، لاگین کرده و پس از لاگین یک کد Code موقت را دریافت کرده تا به سایت مقصد (یعنی جایی که منابع اطلاعاتی هست) ببرد.
از ویژگیهای این کد، موقتی بودن آن هست یعنی یک اعتبار زمانی دارد؛ در استاندارد این احتمال زمانی، یک تا دو دقیقه است.
دومین مرحله: تبدیل کد به بلیط سینما
در این مرحله مهدی به سینما آزادی، مراجعه کرده و از همان گیشه جلوی درب، تقاضای بلیط کرده. مسئول گیشه هم از مهدی خواسته تا کد موقت رو اعلام کنه. اینجا مسئول گیشه، کد رو وارد سیستم میکنه تا از صحت و سقم اون اطمینان حاصل کنه و بعد بلیط رو در اختیار مهدی میگذاره، همچنین این کد یکبار مصرفه و پس از یک بار صدور بلیط، دیگر این کد کار نخواهد کرد.
به لحاظ فنی در این مرحله :مهدی در حال تبادل کد به توکن Code-to-Token Exchange است.
در اینجا مسئول گیشه همان سامانهِ اطلاعاتی است که طبق استاندارد، به آن کلاینت (Client) گفته میشود.
در اینجا بلیط، همان توکن JWT است .
سومین مرحله: ورود به سالن سینما
مهدی پس از دریافت کد از سایت که همان SSO بود، و ارائه آن به سامانه عملیاتی، که همان مسئول گیشه بود بلیط را دریافت کرده و حالا قصد دیدن فیلم را دارد در اینجا فیلم همان منبع اطلاعاتی است.
در محتوای داخل بلیطِ مهدی (که همان توکن JWT است) مشخص شده که مهدی حق مراجعه و ورود به سالن سینما را دارد و اجازه دارد در چه ساعتی چه فیلمی را در کدام سالن سینما ببیند. در بدو ورود به سالن سینما نیز همان جایی که میخواهیم فیلم را ببینیم یعنی همان جایی که مهدی میخواهد به منبع اطلاعاتی نهاییش دسترسی پیدا کند یک گارد وجود دارد و برای اینکه مطمئن شه، مهدی مجاز به دیدن فیلم است، یک نگهبان یا سیستم چکینگ فنی قبل از ارائه محتوا به او وجود دارد.
اگر بخواهیم مشابهت فنی بدهیم این گاردِ عینکی قوی هیکل، که اینجا ایستاده، همان لایه امنیت بک اند (Backend) است، مثلا در اکوسیستم برنامه نویسی جاوا این لایه را با Spring Security توسعه می دهیم.
پس از تایید امنیت، مهدی با پاپ کورن در حال تماشای فیلم نهنگ عنبر ۲ هست.
منبع : سایت SSO پلاس
نویسنده : مهدی طهماسبی
SSO پلاس، پنجرهای واحد برای و ورود یکباره به سامانهها، امروز بالغ بر ۶میلیون کاربر فعال در حال استفاده از این سامانه هستند و حدود ۵۰ شرکت نرمافزاری به آن متصل شدهاند. اس اس او پلاس توانسته از سال ۱۳۹۹ تاکنون تاییدیه چندین آزمایشگاه امنیت را با موفقیت کسب نماید. اس اس او پلاس یک راهکار نرمافزار سازمانی است که سازمانهای بزرگ و متوسط را در تحقق شکلدهی هویت دیجیتالِ (Digital Identity) کاربران و کارمندان خود، ممکن میسازد. از مهمترین ویژگیهای این راهکار سازمانی وجود فرایندهای متنوع احراز هویت و Multi-Factor Authentication است، همچنین با پیاده سازی ۳ سطحی مجازشماری Authorization ،توانسته است، تمامی نیازهای سازمان را به صورت یکجا محقق نماید .
اطلاعات تماس:
info@ssoplus.ir
989002271464+