Usando Casdoor como um Servidor CAS
Usando Casdoor como um Servidor CAS
Casdoor agora pode ser usado como um servidor CAS. Ele atualmente suporta CAS 3.0.
Visão Geral
O prefixo do endpoint CAS no Casdoor é <Casdoor endpoint>/cas/<nome da organização>/<nome da aplicação>
. Aqui está um exemplo usando o endpoint https://door.casdoor.com
com uma aplicação chamada cas-java-app
sob a organização 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.
Um Exemplo
Aqui está um exemplo oficial Repositório GitHub que contém um aplicativo web e utiliza o cliente oficial CAS Java Repositório GitHub. Ao seguir este exemplo, você pode aprender como se conectar ao Casdoor via CAS.
Nota: Atualmente, o Casdoor suporta apenas as três versões do CAS: CAS 1.0, 2.0 e 3.0.
A configuração do CAS está localizada em src/main/webapp/WEB-INF/web.yml
.
Por padrão, este aplicativo usa CAS 3.0, que é especificado pelas seguintes configurações:
<filter-name>CAS Validation Filter</filter-name>
<filter-class>org.jasig.cas.client.validation.Cas30ProxyReceivingTicketValidationFilter</filter-class>
Se você quiser proteger este aplicativo web usando CAS 2.0, altere o Filtro de Validação CAS para o seguinte:
<filter-name>CAS Validation Filter</filter-name>
<filter-class>org.jasig.cas.client.validation.Cas20ProxyReceivingTicketValidationFilter</filter-class>
Para CAS 1.0, use o seguinte:
<filter-name>CAS Validation Filter</filter-name>
<filter-class>org.jasig.cas.client.validation.Cas10TicketValidationFilter</filter-class>
Para todas as instâncias do parâmetro casServerUrlPrefix
, altere-os para:
<param-name>casServerUrlPrefix</param-name>
<param-value>http://door.casdoor.com/cas/casbin/cas-java-app</param-value>
Para todas as instâncias do parâmetro casServerLoginUrl
, altere-os para:
<param-name>casServerLoginUrl</param-name>
<param-value>http://door.casdoor.com/cas/casbin/cas-java-app/login</param-value>
Se você precisar personalizar mais configurações, consulte o Repositório GitHub do cliente Java CAS para informações detalhadas.