跳到主内容

Casdoor作为CAS服务器

简介

Casdoor 可用作CAS 服务器,并支持 CAS 1.0、2.0 和 3.0。

CAS URL 前缀为:<casdoor-host>/cas/<organization>/<application>。 示例适用于https://door.casdoor.com</code>, orgcasbin, app``cas-java-app:

  • /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 协议规范以了解参数和版本信息。

示例

Apereo CAS 示例 Java Web 应用程序与Java CAS 客户端可与 Casdoor 配合使用。 将客户端指向您的Casdoor CAS基础URL。

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>

如果您需要自定义更多配置,请查看Java CAS客户端GitHub仓库以获取详细信息。