سامانه احراز هویت متمرکز (SSO) ویتکو، محصول آزمایشگاه معماری سازمانی دانشگاه رازی

معرفی سامانه احراز هویت متمرکز (SSO) ویتکو، محصول آزمایشگاه معماری سازمانی دانشگاه رازی

 

در عصر حاضر کاربران روزانه از سامانه‌های متعدد و متفاوتی استفاده می کنند. ایجاد و به خاطر سپردن اطلاعات هویتی ورود به این سامانه‌ها به‌ خصوص با گذرواژه های پیچیده‌ای که امنیت را تضمین کنند، می تواند برای کاربران بسیار چالش برانگیز باشد.

روش احراز هویت Single Sign On یا SSO یکی از راه‌های مقابله با این چالش است. 

 

مقدمه

 

یکی از مهم‌ترین نیازها برای تسهیل دسترسی به خدمات و سامانه‌ها، استفاده از ورود یک‌پارچه و احراز هویت متمرکز کاربران است. احراز هویت متمرکز که با عنوان SSO شناخته می شود یکی از ابزارهای پایه به منظور فراهم شدن سرویسی است که در آن احراز هویت کابران در یک نقطه به صورت متمرکز انجام می شود و اطلاعات پایه در خصوص کاربران از منابع مطمئن برای استفاده دیگر سامانه‌های کاربردی فراهم میشود. یکی از فعالیت‌های مهم و کلیدی که در برنامه دولت الکترونیکی کشور، اخیرا مورد توجه جدی بوده است، گسترش این سرویس در حوزه‌های مختلف دولت بوده است که هم‌اکنون در سطح ملی با عنوان پنجره واحد خدمات هوشمند دولت، عملیاتی شده است و سازمان‌های مختلفی نیز به آن متصل گردیده‌اند.

احراز هویت متمرکز نه تنها امکان ورود از یک محل را برای کاربران فراهم می‌نماید که کاربران را درگیر ثبت انواع کاربری‌ها و رمزهای متفاوت برای دسترسی به سامانه‌ها نمی‌کند؛ بلکه اطلاعات پایه مانند اطلاعات هویتی و مکانی قابل استناد را نیز فراهم می‌نماید. از طرفی حوزه‌های مختلف دولت الکترونیکی مانند حوزه آموزش عالی کشور نیاز دارند که ضمن دسترسی به این اطلاعات، ورود کاربران به سامانه‌های حوزه‌های مختلف کاری خود را کنترل نمایند و سیاست‌های مختلف دسترسی خود را اعمال نمایند. گرچه سرویس احراز هویت متمرکز مطرح شده در این سند برای هر نوع سازمان و شرکتی قابل استفاده است ولی تمرکز روی استفاده از آن در فضای دانشگاهی است، زیرا هم تعداد سرویس‌ها و سامانه‌های دانشگاهی زیاد می‌باشند و هم تجارب این شرکت در تعامل با شرکت‌های فعال در حوزه دانشگاهی منجر به کاهش قابل توجه هزینه‌ها و زمان اجرا خواهد شد.

1. سرویس احراز هویت متمرکز ویتکو و قابلیت‌های آن

 

سرویس احراز هویت متمرکز ویتکو در راستای نیاز سازمان‌ها به ویژه مراکز دانشگاهی به صورت یک سرویس فنی و پایه قابل استفاده در تمامی پلتفرم‌ها، ارائه شده است. این سرویس به گونه‌ای پیاده‌سازی شده است که بتواند راه‌حل مطمئن و امنی را در اختیار دیگر سامانه‌های عملیاتی سازمان برای احراز هویت کاربران قرار دهد.

سرویس احراز هویت ویتکو دارای قابلیت‌ها و مشخصه‌های اصلی زیر است:

֎ پیروی از معماری و ساختار سرویس احراز هویت متمرکز ملی به ویژه در ساختار داده(به منظور اتصال ساده به پنجره دولت هوشمند ملی و دیگر سامانه‌های دولت الکترونیکی)

֎ امکان مدیریت اتصال سامانه‌های مختلف به سرویس احراز هویت متمرکز

֎ اتصال سریع SSO ویتکو به پنجره واحد دولت هوشمند و یا پنجره خدمات هوشمند دانشگاهی

֎ استفاده از شیوه ساده‌ای برای ارتباط دیگر سامانه‌ها با حداقل تغییرات

֎ امکان اضافه شدن، حذف شدن و ویرایش مشخصه‌های سامانه‌ها (مانند نام، لوگو، ساعات کاری و ...) به منظور دسترسی به سامانه‎‌های مختلف در یک پنجره واحد

֎ مدیریت ورود کاربران به طرق مختلف مانند نام کاربری و رمز، پنجره واحد ملی، کد فعالسازی

֎ مدیریت درخواست اتصال به سامانه‎‌ها با استفاده به صورت الکترونیکی (وجود فرآیندی برای ثبت درخواست اتصال و اجرای دیگر مراحل)

֎ استفاده از پایگاه داده شخصی سازی شده و خاص سیستم با اجرای الگوریتمهای رمزنگاری برای پشتیبانی از امنیت داده کاربران

֎ مدیریت توکنهای تخصیص داده شده به کاربران مانند زمان انقضاء، حذف آنها و از بین رفتن آنها زمان تغییر نقش کاربر و دیگر ملاحظات مختلف

֎ پشتیبانی از قابلیت‌های مختلف مانند RADIUS، JWT در موضوع احراز هویت

֎ پشتیبانی از پروتکل 2OAuth و آمادگی برای تغییر پروتکل متناسب با نیاز مشتری

֎ مدیریت ارتباط با کاربران، مدیریت نقش‌ها و کنترل دسترسی‌ها به سرویس‌ها و سامانه‌ها

֎ مدیریت نقش‌ها و تخصیص انواع کنترل‌ها برای دسترسی به سامانه‌ها

֎ وجود انواع الگوهای کدنویسی در زبان‌های مختلف جهت راهنمایی برنامه‌نویسان

֎ وجود قابلیت‌های لازم در حفظ مشخصه‌های کیفی مانند مقیاس‌پذیری، کارایی، امنیت و قابلیت اعتماد برای استفاده در سازمانهای بزرگ مانند دانشگاه‌ها، شهرداری‌ها و ...

֎ حمایت و همراهی با سازمان‌ها برای اتصال تمامی سامانه‌های دیگر به سیستم احراز هویت متمرکز

֎ ارزیابی امنیتی توسط مراکز آپا
 

2. سرویس احراز هویت متمرکز ویتکو و نحوه اتصال دیگر سامانه‌ها

 

سرویس احراز هویت متمرکز ویتکو(WeitCo)، وظیفه ورود کاربران برای تمامی سامانه‌های دیگر برعهده دارد. بنابراین وظیفه احراز هویت افراد در این روال به سرویس SSO WeitCo، محول میشود. سناریوی کلی این وظیفه در اینجا آورده می‌شود و جزئیات تعریف پیام‌ها و داده‌های ارسالی در ادامه خواهد آمد.

 

1. وقتی که کاربری در صفحه ورود سامانه خود روی گزینهای مانند Login SSO، کلیک میکند، آنگاه درخواست ورود آن کاربر با ارسال پیامی به سرویس URL_Authorize( به عنوان بخشی از SSO WeitCo(، هدایت میشود.

2. با دریافت پیام در سرویس URL_Authorize، پیام تأییدی برمی‌گردد که دارای کد موقتی (code) است که به آن مرکز نسبت داده می‌شود.

3. پنجره واحد مرکز از طریق سرویسی مانند API Login، درخواست ورود را از سرویس Login در WeitCo SSO (براساس کد موقت دریافت شده) خواهد نمود.

4. با تایید اطلاعات، ورود کاربر در SSO WeitCo از طریق سرویس Login صورت پذیرفته و اطلاعات توکن به APP برگشت داده می‌شود که شامل اطلاعات کاربر لاگین شده است.

5. سرویس API Login، اطلاعات با دریافت توکن نسبت به ایجاد نشست با کاربر و ایجاد توکن محلی، اقدام می‌نماید و درخواست اطلاعات کاربر را از سرویس SSO WeitCo، دریافت خواهد نمود .