Перейти до основного вмісту

Використання 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

For more information about CAS, its different versions, and parameters for these endpoints, refer to the CAS Protocol Specification.

Приклад

Ось офіційний приклад GitHub репозиторій, який містить веб-додаток та використовує офіційний CAS Java клієнт 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>

Якщо вам потрібно налаштувати більше конфігурацій, дивіться GitHub репозиторій Java CAS клієнта для отримання детальної інформації.