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

استخدام Casdoor كخادم CAS

استخدام Casdoor كخادم CAS

يمكن الآن استخدام Casdoor كخادم CAS. يدعم حاليًا CAS 3.0.

نظرة عامة

بادئة نقطة النهاية لـ CAS في Casdoor هي <Casdoor endpoint>/cas/<organization name>/<application name>. إليك مثال باستخدام نقطة النهاية https://door.casdoor.com مع تطبيق يسمى cas-java-app تحت المنظمة casbin:

  • /login endpoint: https://door.casdoor.com/cas/casbin/cas-java-app/login
  • /logout endpoint: https://door.casdoor.com/cas/casbin/cas-java-app/logout
  • /serviceValidate endpoint: https://door.casdoor.com/cas/casbin/cas-java-app/serviceValidate
  • /proxyValidate endpoint: https://door.casdoor.com/cas/casbin/cas-java-app/proxyValidate
  • /proxy endpoint: https://door.casdoor.com/cas/casbin/cas-java-app/proxy
  • /validate endpoint: https://door.casdoor.com/cas/casbin/cas-java-app/validate
  • /p3/serviceValidate endpoint: https://door.casdoor.com/cas/casbin/cas-java-app/p3/serviceValidate
  • /p3/proxyValidate endpoint: https://door.casdoor.com/cas/casbin/cas-java-app/p3/proxyValidate
  • /samlValidate endpoint: https://door.casdoor.com/cas/casbin/cas-java-app/samlValidate

لمزيد من المعلومات حول CAS، وإصداراته المختلفة، والمعلمات لهذه النقاط النهائية، راجع مواصفات بروتوكول CAS.

مثال

إليك مثال رسمي مستودع GitHub الذي يحتوي على تطبيق ويب ويستخدم عميل CAS الرسمي لجافا مستودع GitHub. من خلال الاطلاع على هذا المثال، يمكنك تعلم كيفية الاتصال بـ Casdoor عبر CAS.

ملاحظة

ملاحظة: حاليًا، يدعم Casdoor جميع الإصدارات الثلاثة من CAS: CAS 1.0، و2.0، و3.0.

تقع تهيئة CAS في src/main/webapp/WEB-INF/web.yml.

بشكل افتراضي، يستخدم هذا التطبيق CAS 3.0، والذي يتم تحديده بواسطة التكوينات التالية:

<filter-name>CAS Validation Filter</filter-name>
<filter-class>org.jasig.cas.client.validation.Cas30ProxyReceivingTicketValidationFilter</filter-class>

إذا كنت ترغب في حماية هذا التطبيق الويب باستخدام CAS 2.0، قم بتغيير فلتر التحقق من CAS إلى ما يلي:

<filter-name>CAS Validation Filter</filter-name>
<filter-class>org.jasig.cas.client.validation.Cas20ProxyReceivingTicketValidationFilter</filter-class>

لـ CAS 1.0، استخدم ما يلي:

<filter-name>CAS Validation Filter</filter-name>
<filter-class>org.jasig.cas.client.validation.Cas10TicketValidationFilter</filter-class>

لجميع حالات معلمة casServerUrlPrefix، قم بتغييرها إلى:

<param-name>casServerUrlPrefix</param-name>
<param-value>http://door.casdoor.com/cas/casbin/cas-java-app</param-value>

لجميع حالات معلمة casServerLoginUrl، قم بتغييرها إلى:

<param-name>casServerLoginUrl</param-name>
<param-value>http://door.casdoor.com/cas/casbin/cas-java-app/login</param-value>

إذا كنت بحاجة إلى تخصيص المزيد من التكوينات، راجع مستودع عميل CAS جافا GitHub للحصول على معلومات مفصلة.