Verwendung von Casdoor als CAS-Server
Verwendung von Casdoor als CAS-Server
Casdoor kann jetzt als CAS-Server verwendet werden. Es unterstützt derzeit CAS 3.0.
Übersicht
Das CAS-Endpunktprefix in Casdoor ist <Casdoor-Endpunkt>/cas/<Organisationsname>/<Anwendungsname>
. Hier ist ein Beispiel mit dem Endpunkt https://door.casdoor.com
für eine Anwendung namens cas-java-app
unter der Organisation 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.
Ein Beispiel
Hier ist ein offizielles Beispiel GitHub-Repository, das eine Web-App enthält und den offiziellen CAS Java-Client GitHub-Repository verwendet. Indem Sie dieses Beispiel durchgehen, können Sie lernen, wie Sie sich über CAS mit Casdoor verbinden.
Hinweis: Derzeit unterstützt Casdoor nur alle drei Versionen von CAS: CAS 1.0, 2.0 und 3.0.
Die CAS-Konfiguration befindet sich in src/main/webapp/WEB-INF/web.yml
.
Standardmäßig verwendet diese App CAS 3.0, was durch die folgenden Konfigurationen angegeben wird:
<filter-name>CAS Validation Filter</filter-name>
<filter-class>org.jasig.cas.client.validation.Cas30ProxyReceivingTicketValidationFilter</filter-class>
Wenn Sie diese Web-App mit CAS 2.0 schützen möchten, ändern Sie den CAS-Validierungsfilter zu folgendem:
<filter-name>CAS Validation Filter</filter-name>
<filter-class>org.jasig.cas.client.validation.Cas20ProxyReceivingTicketValidationFilter</filter-class>
Für CAS 1.0 verwenden Sie folgendes:
<filter-name>CAS Validation Filter</filter-name>
<filter-class>org.jasig.cas.client.validation.Cas10TicketValidationFilter</filter-class>
Für alle Instanzen des Parameters casServerUrlPrefix
ändern Sie diese zu:
<param-name>casServerUrlPrefix</param-name>
<param-value>http://door.casdoor.com/cas/casbin/cas-java-app</param-value>
Für alle Instanzen des Parameters casServerLoginUrl
ändern Sie diese zu:
<param-name>casServerLoginUrl</param-name>
<param-value>http://door.casdoor.com/cas/casbin/cas-java-app/login</param-value>
Wenn Sie weitere Konfigurationen anpassen müssen, sehen Sie im Java CAS-Client GitHub-Repository für detaillierte Informationen.