ما هو OpenID (اتصال OpenID)؟
ما هو OpenID (اتصال OpenID)؟
OpenID Connect عبارة عن مواصفات مفتوحة لـ المصادقة والدخول الموحد (الدخول الموحد). لقد تم إنشاؤه استنادًا إلى بروتوكول OAuth 2.0 لإضافة إمكانات المصادقة وتسجيل الدخول الموحّد (SSO).
OpenID Connect هو بروتوكول مصادقة شائع. فهو يساعد على توحيد العملية ل مصادقة المستخدم عندما يحاول المستخدمون الوصول إلى ملف browser أو تطبيق الهاتف المحمول.
تم إنشاء OpenID لأول مرة في عام 2005، وهو يسمح لمواقع الويب وخدمات المصادقة بتبادل المعلومات الأمنية بطريقة موحدة. في فبراير 2014، مؤسسة OpenID أطلقت نسخة جديدة من البروتوكول يسمى اتصال OpenID. يعتمد OpenID Connect على OAuth 2.0 إطار المصادقة للتحسين إدارة الهويةوقابلية التشغيل البيني ودعم العديد من أنواع التطبيقات.
فوائد اتصال OpenID
يوفر OIDC طريقة موثوقة وبسيطة للتحقق من هوية المستخدم الذي يحاول ذلك الوصول إلى خدمة رقمية. ويجعل هذا المعيار من السهل والآمن دمج إدارة الهوية في أي نوع من الخدمات الرقمية، بما في ذلك ما يلي:
فائدة أخرى لـ OIDC هي أنها تسمح لمطوري الخدمة ومالكيها بالحصول على معلومات ملف تعريف المستخدم بطريقة قابلة للتشغيل البيني وآمنة. نظرًا لأن البروتوكول يحدد مجموعة من فئات بيانات الملف الشخصي (المستخدم)، فليست هناك حاجة لموفري الخدمة لتخزين كلمات مرور المستخدم أو إدارتها. وهذا يقلل من احتمالية خروقات البيانات تنطوي سرقة بيانات الاعتماد.
يتيح OpenID Connect أيضًا للمستخدمين النهائيين تسجيل الدخول مرة واحدة للوصول إلى موارد متعددة ومتباينة داخل وخارج الويب. فهو يتيح تسجيل الدخول الموحّد (SSO) المريح والآمن، مما يعزز تجربة المستخدم ويقلل من استخداماته التخلي عن موقع الويب/التطبيق.
المواصفات التي تحظى بدعم العديد مقدمي الخدمات السحابية، مثل Amazon وGoogle وMicrosoft، من المتوقع أن تمهد الطريق أمام الشركات لاستبدال هويتها المحلية وإدارة الوصول (أنا أكون) الأنظمة ذات العروض السحابية.
في الواقع، يمكن للمؤسسات استخدام نظام IAM من Microsoft (معرف إنترا) لمصادقة هويات المستخدم ثم استخدام OIDC لتمرير المصادقة إلى التطبيقات الأخرى. ومن خلال القيام بذلك، يمكنهم تمكين الدخول الموحّد (SSO)، بحيث يتمكن المستخدمون من الوصول إلى تطبيقات متعددة عن طريق تسجيل الدخول مرة واحدة فقط باستخدام مجموعة واحدة من بيانات الاعتماد.
OIDC أيضا يبسط إدارة الهوية في المنظمات. من خلال توفير تسجيل الدخول الموحد (SSO) الممكّن لـ OIDC، فإنهم يديرون عددًا أقل من الهويات وحلول إدارة هوية أقل. يمكنهم أيضًا تتبع الأذونات المتغيرة وتطبيق سياسات الوصول عبر تطبيقات متعددة.
كيف يعمل OpenID Connect؟
يستفيد OIDC من ستة مكونات رئيسية لتمكين مصادقة المستخدم:
- المستخدمون: هؤلاء هم الأشخاص الذين يحاولون الوصول إلى التطبيق دون إنشاء مجموعة جديدة من بيانات الاعتماد (أو توفير مجموعة من بيانات الاعتماد الموجودة) والتي يجب مصادقتها قبل أن يتم منحهم حق الوصول.
- المصادقة: عملية التأكد من أن المستخدم حقيقي يكون من هم يقول هم.
- الرموز: تدوين كائن JavaScript، أو JSON، يتم استخدام رموز الويب (JWTs) التي تحتوي على بيانات هوية المستخدم، مثل اسمه أو تاريخ ميلاده أو عنوان بريده الإلكتروني، لمصادقة المستخدم.
- العميل: التطبيق أو موقع الويب الذي يطلب الرموز المميزة المستخدمة لمصادقة المستخدم.
- الأطراف المعتمدة (RP): التطبيقات التي تستخدم موفري OIDC لمصادقة المستخدمين.
- موفر OIDC (المعروف أيضًا باسم موفر الهوية): التطبيقات التي يمتلكها المستخدم بالفعل. بيانات اعتماد تسجيل الدخول وبالتالي يمكنها مصادقة المستخدم وتمرير المعلومات إلى الطرف المعتمد.
بالإضافة إلى ذلك، يستخدم البروتوكول خادم التفويض لمصادقة المستخدمين كذلك النطاقات التي تحدد ما يمكن للمستخدم فعله من خلال وصوله.
إليك كيفية عمل عملية المصادقة مع OIDC:
- يفتح المستخدم التطبيق الذي يريد الوصول إليه.
- ويقومون بمصادقة أنفسهم، عادةً من خلال توفير اسم المستخدم وكلمة المرور الخاصة بهم.
- يقوم التطبيق بإعادة توجيههم إلى موفر الهوية.
- يقوم موفر الهوية بمصادقة المستخدم.
- بعد المصادقة، يرسل موفر الهوية رمز هوية إلى RP ويعيد توجيه المستخدم مرة أخرى إلى RP.
- يرسل RP الرمز المميز إلى جهاز المستخدم.
- يتم تسجيل دخول المستخدم إلى تطبيق RP.
- بمجرد اكتمال العملية، يحصل المستخدم على بعض الإشارة على التطبيق توضح أنه تم تسجيل دخوله.
حالات استخدام OpenID Connect
يعد OpenID Connect بروتوكولًا مفيدًا للعديد من السيناريوهات.
يمكن للمستخدمين إعادة استخدام حساباتهم في تطبيقات متعددة دون الحاجة إلى إنشاء مجموعة جديدة من بيانات الاعتماد لكل تطبيق. إن مجرد دمج OIDC مع موفر الهوية يسمح لهم بذلك إعادة استخدام الحسابات الحالية والاستفادة من SSO.
يمكن استخدام البروتوكول لإنشاء مركز لموفري الهوية. وهذا يعني أنه يمكن لموفر الخدمة توصيل تطبيقه بموفر هوية واحد (يعمل كمركز لموفرين آخرين)، لذلك لا يتعين عليهم دعم موفري خدمات متعددين بشكل منفصل.
يمكن أن يعمل OIDC كوكيل للبروتوكولات الأخرى، بما في ذلك لغة ترميز تأكيد الأمان (SAML). يتيح ذلك للأجهزة ذات الموارد المحدودة التكامل بسلاسة مع موفر هوية SAML عبر OIDC.
OpenID Connect مقابل SAML مقابل OAuth 2.0
SAML هو معيار يسمح لمجالات الأمان المختلفة بتبادل بيانات المصادقة والترخيص. يتيح ذلك للمستخدمين المنتمين إلى مجال واحد (المجال أ) لاستهلاك خدمات مجال آخر (المجال ب) دون مطالبة النطاقين A وB بتكرار ملف تعريف هذا المستخدم.
مثل OIDC، يعتمد SAML على الرموز المميزة الموقعة رقميًا والتي تسمح بذلك طرف ثالث تطبيقات لتأكيد معلومات المستخدم والمصادقة عليها بسرعة. ولكن على عكس OIDC، يعتمد SAML بشكل كبير على لغة التوصيف القابلة للتوسيع (XML) ، والذي يمكن أن يكون ثقيلًا جدًا (وبالتالي غير ضروري) للتطبيقات التي تحتاج فقط إلى مصادقة المستخدمين اتصالات منخفضة السرعة أو أجهزة أقل قوة.
الغرض الرئيسي من OIDC هو تمكين مصادقة المستخدم وتزويد المستخدمين تسجيل دخول واحد للوصول إلى مواقع متعددة. تم تطويره لتعزيز قدرات OAuth 2.0، والذي يتعلق بشكل أساسي بالوصول إلى الموارد ومشاركتها. كما أن OAuth 2.0 هو تفويض إطار العمل على عكس OIDC، وهو المصادقة نطاق.
يمكّن OAuth 2.0 الأنظمة العميلة (على سبيل المثال، تطبيقات الجدولة) من استخدام خوادم الموارد – على سبيل المثال، واجهة برمجة تطبيقات موقع الويب (واجهة برمجة التطبيقات) نيابة عن مالكي الموارد (المستخدمين النهائيين). تم إنشاء OAuth 2.0 للتعامل مع سيناريوهات التفويض المفوض، على الرغم من استخدامه بشكل متزايد لمصادقة المستخدم.
مثل OIDC، OAuth 2.0 يستخدم خادم التفويض، ولكن ليس لمصادقة المستخدمين ولكن لتمكين مالكي الموارد من تحديد ما إذا كانوا يريدون السماح للعميل بالقيام بشيء نيابة عنهم. يستخدم OIDC هذا المصطلح أيضًا رمز وصول بدلا من رمز الهوية. رمز الوصول هو ما يسمح للعملاء (تطبيقات الطرف الثالث) بالتصرف نيابة عن المستخدمين (أصحاب الموارد). وهو أيضًا الأداة التي تستخدمها خوادم الموارد (واجهات برمجة التطبيقات) للسماح للعميل بتنفيذ الإجراء نيابة عن مالك المورد.
يعد OpenID Connect هو المعيار الموحد الأكثر شيوعًا والمبني على OAuth 2.0. اكتشف كيفية استخدم OpenID Connect للمصادقة. كما تعد مفاتيح API والرموز المميزة طريقتين رائدتين لإدارة الوصول. تعلم الفرق بين مفاتيح API والرموز المميزة.