التخطي إلى المحتوى الرئيسي

نظرة عامة

في هذا القسم، سنوضح لك كيفية ربط تطبيقك بـ Casdoor.

كمزود خدمة (SP)، يدعم Casdoor بروتوكولين للمصادقة:

  • OAuth 2.0 (OIDC)
  • SAML

كمزود هوية (IdP)، يدعم Casdoor أربعة بروتوكولات للمصادقة:

  • OAuth 2.0
  • OIDC
  • SAML
  • CAS 1.0, 2.0, 3.0

OAuth 2.0 (OIDC)

ما هو OAuth 2.0؟

OAuth 2 هو إطار عمل للتفويض يمكّن التطبيقات - مثل Facebook وGitHub وCasdoor - من الحصول على وصول محدود إلى حسابات المستخدمين على خدمة HTTP. يعمل من خلال تفويض مصادقة المستخدم إلى الخدمة التي تستضيف حساب المستخدم وتفويض التطبيقات الطرفية الثالثة للوصول إلى حساب المستخدم. يوفر OAuth 2 تدفقات التفويض لتطبيقات الويب وسطح المكتب، بالإضافة إلى الأجهزة المحمولة.

عملية التفويض في Casdoor مبنية على بروتوكول OAuth 2.0. نوصي باستخدام بروتوكول OAuth 2.0 للأسباب التالية:

  1. البروتوكول بسيط وسهل التنفيذ، ويمكن أن يحل العديد من السيناريوهات.
  2. لديه مستوى نضج عالي ودعم مجتمعي واسع.

لذلك، سيتواصل تطبيقك مع Casdoor عبر OAuth 2.0 (OIDC). هناك ثلاث طرق للاتصال بـ Casdoor:

عميل OIDC القياسي

عميل OIDC القياسي: استخدم تنفيذ عميل OIDC القياسي، والذي يتوفر على نطاق واسع في أي لغة برمجة أو إطار عمل.

ما هو OIDC؟

OpenID Connect (OIDC) هو بروتوكول مصادقة مفتوح يعمل فوق إطار عمل OAuth 2.0. يستهدف المستهلكين، ويسمح OIDC للأفراد باستخدام تسجيل الدخول الموحد (SSO) للوصول إلى مواقع الطرف الثالث باستخدام مزودي OpenID (OPs)، مثل مزود البريد الإلكتروني أو الشبكة الاجتماعية، للتحقق من هوياتهم. يوفر للتطبيق أو الخدمة معلومات حول المستخدم، سياق مصادقتهم، والوصول إلى معلومات ملفهم الشخصي.

Casdoor يدعم بروتوكول OIDC بالكامل. إذا كان تطبيقك يستخدم بالفعل مزود هوية آخر لـ OAuth 2.0 (OIDC) عبر مكتبة عميل OIDC القياسية، وترغب في الانتقال إلى Casdoor، فإن استخدام اكتشاف OIDC سيجعل الانتقال إلى Casdoor سهلاً للغاية.

حزم تطوير برمجيات Casdoor

حزم تطوير برمجيات Casdoor: لمعظم لغات البرمجة، توفر Casdoor مكتبات SDK سهلة الاستخدام فوق OIDC، مع وظائف موسعة متاحة فقط في Casdoor.

مقارنة ببروتوكول OIDC القياسي، توفر حزم تطوير برمجيات Casdoor وظائف أكثر، مثل إدارة المستخدمين ورفع الموارد، من بين أمور أخرى. الاتصال بـ Casdoor عبر حزم تطوير برمجيات Casdoor يتطلب وقتًا أطول من استخدام مكتبة عميل OIDC القياسية، ولكنه يوفر أفضل مرونة وأقوى واجهة برمجة تطبيقات قوية.

إضافة Casdoor

إضافة Casdoor: إذا كان تطبيقك مبنيًا على منصة شهيرة (مثل Spring Boot، WordPress، إلخ) وقدمت Casdoor (أو طرف ثالث) بالفعل إضافة أو وسيطًا لها، فيجب عليك استخدامها. استخدام إضافة أسهل بكثير من استدعاء حزم تطوير برمجيات Casdoor يدويًا لأن الأولى مصممة خصيصًا للمنصة.

الإضافات:

الوسيط:

SAML

ما هو SAML؟

لغة توصيف تأكيد الأمان (SAML) هي معيار مفتوح يسمح لمزودي الهوية (IdP) بنقل بيانات الاعتماد الخاصة بالتفويض إلى مزودي الخدمة (SP). ما يعنيه هذا المصطلح هو أنه يمكنك استخدام مجموعة واحدة من بيانات الاعتماد لتسجيل الدخول إلى مواقع ويب مختلفة. إدارة تسجيل دخول واحد لكل مستخدم أسهل بكثير من إدارة تسجيلات دخول منفصلة للبريد الإلكتروني، وبرمجيات إدارة علاقات العملاء (CRM)، والدليل النشط، وغيرها.

تستخدم معاملات SAML لغة الترميز القابلة للتوسيع (XML) للتواصل الموحد بين مزود الهوية ومزودي الخدمات. SAML هو الحلقة الوصل بين توثيق هوية المستخدم والتصريح باستخدام خدمة.

يمكن استخدام Casdoor كـ SAML IdP. حاليًا، يدعم Casdoor الميزات الرئيسية لـ SAML 2.0. لمزيد من التفاصيل، انظر SAML.

مثال:

Casdoor كـ SAML IdP في Keycloak

الاقتراحات:

  1. البروتوكول قوي ويغطي العديد من السيناريوهات، مما يجعله واحدًا من أكثر بروتوكولات SSO شمولية.
  2. البروتوكول كبير، مع العديد من المعاملات الاختيارية، لذا فمن الصعب تغطية جميع سيناريوهات التطبيق بنسبة 100% في التنفيذ الفعلي.
  3. إذا كان التطبيق حديثًا التطوير، فإن SAML غير موصى به بسبب تعقيده التقني العالي.

CAS

ما هو CAS؟

خدمة المصادقة المركزية (CAS) هي بروتوكول تسجيل دخول موحد للويب. الغرض منه هو السماح للمستخدم بالوصول إلى تطبيقات متعددة مع تقديم بيانات اعتماده (مثل معرف المستخدم وكلمة المرور) مرة واحدة فقط. كما يسمح لتطبيقات الويب بمصادقة المستخدمين دون الحصول على بيانات اعتماد أمان المستخدم، مثل كلمة المرور.

قام Casdoor بتنفيذ ميزات CAS 1.0، و2.0، و3.0. لمزيد من التفاصيل، انظر CAS.

الاقتراحات:

  1. البروتوكول نفسه خفيف نسبيًا وسهل التنفيذ، لكنه يمكن أن يحل سيناريو واحد فقط.
  2. يتم إنشاء الثقة المتبادلة بين عميل CAS وخادم CAS من خلال استدعاء الواجهة دون أي آلية تشفير أو توقيع لضمان المزيد من الأمان.
  3. بروتوكول CAS ليس له ميزة على البروتوكولات الأخرى.

جدول التكاملات

بعض التطبيقات لديها بالفعل أمثلة تتصل بـ Casdoor. يمكنك اتباع التوثيق للاتصال بسرعة بـ Casdoor. يمكنك رؤية جميع التطبيقات في جدول التكاملات.