Usando Casdoor como un Servidor CAS
Usando Casdoor como un Servidor CAS
Casdoor ahora puede ser utilizado como un servidor CAS. Actualmente soporta CAS 3.0.
Visión general
El prefijo del punto final de CAS en Casdoor es <Casdoor endpoint>/cas/<nombre de la organización>/<nombre de la aplicación>
. Aquí hay un ejemplo utilizando el punto final https://door.casdoor.com
con una aplicación llamada cas-java-app
bajo la organización 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.
Un Ejemplo
Aquí hay un ejemplo oficial Repositorio de GitHub que contiene una aplicación web y utiliza el cliente oficial de CAS Java Repositorio de GitHub. Al revisar este ejemplo, puedes aprender cómo conectarte a Casdoor a través de CAS.
Nota: Actualmente, Casdoor solo soporta las tres versiones de CAS: CAS 1.0, 2.0 y 3.0.
La configuración de CAS se encuentra en src/main/webapp/WEB-INF/web.yml
.
Por defecto, esta aplicación utiliza CAS 3.0, que está especificado por las siguientes configuraciones:
<filter-name>CAS Validation Filter</filter-name>
<filter-class>org.jasig.cas.client.validation.Cas30ProxyReceivingTicketValidationFilter</filter-class>
Si quieres proteger esta aplicación web usando CAS 2.0, cambia el Filtro de Validación de CAS a lo siguiente:
<filter-name>CAS Validation Filter</filter-name>
<filter-class>org.jasig.cas.client.validation.Cas20ProxyReceivingTicketValidationFilter</filter-class>
Para CAS 1.0, utiliza lo siguiente:
<filter-name>CAS Validation Filter</filter-name>
<filter-class>org.jasig.cas.client.validation.Cas10TicketValidationFilter</filter-class>
Para todas las instancias del parámetro casServerUrlPrefix
, cámbialas a:
<param-name>casServerUrlPrefix</param-name>
<param-value>http://door.casdoor.com/cas/casbin/cas-java-app</param-value>
Para todas las instancias del parámetro casServerLoginUrl
, cámbialas a:
<param-name>casServerLoginUrl</param-name>
<param-value>http://door.casdoor.com/cas/casbin/cas-java-app/login</param-value>
Si necesitas personalizar más configuraciones, consulta el Repositorio de GitHub del cliente Java CAS para obtener información detallada.