نظرة عامة
في هذا القسم، سنوضح لك كيفية ربط تطبيقك بـ Casdoor.
كمزود خدمة (SP)، يدعم Casdoor بروتوكولين للمصادقة:
OAuth 2.0 (OIDC)SAML
كمزود هوية (IdP)، يدعم Casdoor أربعة بروتوكولات للمصادقة:
OAuth 2.0OIDCSAMLCAS 1.0, 2.0, 3.0
OAuth 2.0 (OIDC)
ما هو OAuth 2.0؟
OAuth 2 هو إطار عمل للتفويض يمكّن التطبيقات - مثل Facebook وGitHub وCasdoor - من الحصول على وصول محدود إلى حسابات المستخدمين على خدمة HTTP. It works by delegating user authentication to the service that hosts the user account and authorizing third-party applications to access that account. OAuth 2 provides authorization flows for web applications, desktop applications, and mobile devices.
عملية التفويض في Casdoor مبنية على بروتوكول OAuth 2.0. We recommend using OAuth 2.0 for the following reasons:
- The protocol is simple, easy to implement, and can address many authentication scenarios.
- لديه مستوى نضج عالي ودعم مجتمعي واسع.
لذلك، سيتواصل تطبيقك مع Casdoor عبر OAuth 2.0 (OIDC). هناك ثلاث طرق للاتصال بـ Casdoor:
عميل OIDC القياسي
Standard OIDC client: Use a standard OIDC client implementation, which is widely available in any programming language or framework.
ما هو OIDC؟
OpenID Connect (OIDC) هو بروتوكول مصادقة مفتوح يعمل فوق إطار عمل OAuth 2.0. Targeted toward consumers, OIDC allows individuals to use single sign-on (SSO) to access relying party sites using OpenID Providers (OPs), such as email providers or social networks, to authenticate their identities. It provides applications or services with information about the user, the context of their authentication, and access to their profile information.
Casdoor يدعم بروتوكول OIDC بالكامل. إذا كان تطبيقك يستخدم بالفعل مزود هوية آخر لـ OAuth 2.0 (OIDC) عبر مكتبة عميل OIDC القياسية، وترغب في الانتقال إلى Casdoor، فإن استخدام اكتشاف OIDC سيجعل الانتقال إلى Casdoor سهلاً للغاية.
حزم تطوير برمجيات Casdoor
Casdoor SDKs: For most programming languages, Casdoor provides easy-to-use SDK libraries built on top of OIDC, with extended functionality that is only available in Casdoor.
Compared to the standard OIDC protocol, Casdoor's SDK provides additional functionality, such as user management and resource uploading. الاتصال بـ Casdoor عبر حزم تطوير برمجيات Casdoor يتطلب وقتًا أطول من استخدام مكتبة عميل OIDC القياسية، ولكنه يوفر أفضل مرونة وأقوى واجهة برمجة تطبيقات قوية.
إضافة Casdoor
Casdoor plugin: If your application is built on top of a popular platform (such as Spring Boot, WordPress, etc.) and Casdoor (or a third party) has already provided a plugin or middleware for it, you should use it. Using a plugin is much easier than manually invoking the Casdoor SDK because plugins are specifically designed for their target platform.
الإضافات:
الوسيط:
SAML
ما هو SAML؟
لغة توصيف تأكيد الأمان (SAML) هي معيار مفتوح يسمح لمزودي الهوية (IdP) بنقل بيانات الاعتماد الخاصة بالتفويض إلى مزودي الخدمة (SP). This means you can use one set of credentials to log into many different websites. It's much simpler to manage one login per user than to manage separate logins for email, customer relationship management (CRM) software, Active Directory, etc.
تستخدم معاملات SAML لغة الترميز القابلة للتوسيع (XML) للتواصل الموحد بين مزود الهوية ومزودي الخدمات. SAML هو الحلقة الوصل بين توثيق هوية المستخدم والتصريح باستخدام خدمة.
يمكن استخدام Casdoor كـ SAML IdP. حاليًا، يدعم Casdoor الميزات الرئيسية لـ SAML 2.0. لمزيد من التفاصيل، انظر SAML.
مثال:
Casdoor كـ SAML IdP في Keycloak
الاقتراحات:
- البروتوكول قوي ويغطي العديد من السيناريوهات، مما يجعله واحدًا من أكثر بروتوكولات SSO شمولية.
- البروتوكول كبير، مع العديد من المعاملات الاختيارية، لذا فمن الصعب تغطية جميع سيناريوهات التطبيق بنسبة 100% في التنفيذ الفعلي.
- إذا كان التطبيق حديثًا التطوير، فإن SAML غير موصى به بسبب تعقيده التقني العالي.
CAS
ما هو CAS؟
خدمة المصادقة المركزية (CAS) هي بروتوكول تسجيل دخول موحد للويب. الغرض منه هو السماح للمستخدم بالوصول إلى تطبيقات متعددة مع تقديم بيانات اعتماده (مثل معرف المستخدم وكلمة المرور) مرة واحدة فقط. كما يسمح لتطبيقات الويب بمصادقة المستخدمين دون الحصول على بيانات اعتماد أمان المستخدم، مثل كلمة المرور.
قام Casdoor بتنفيذ ميزات CAS 1.0، و2.0، و3.0. لمزيد من التفاصيل، انظر CAS.
الاقتراحات:
- البروتوكول نفسه خفيف نسبيًا وسهل التنفيذ، لكنه يمكن أن يحل سيناريو واحد فقط.
- يتم إنشاء الثقة المتبادلة بين عميل CAS وخادم CAS من خلال استدعاء الواجهة دون أي آلية تشفير أو توقيع لضمان المزيد من الأمان.
- بروتوكول CAS ليس له ميزة على البروتوكولات الأخرى.
جدول التكاملات
بعض التطبيقات لديها بالفعل أمثلة تتصل بـ Casdoor. يمكنك اتباع التوثيق للاتصال بسرعة بـ Casdoor. يمكنك رؤية جميع التطبيقات في جدول التكاملات.