Central Authentication Service

aus Wikipedia, der freien Enzyklopädie
Wechseln zu: Navigation, Suche

Central Authentication Service (CAS)[1] ist ein föderiertes Identitätsmanagement, welches ursprünglich von der Yale Universität entwickelt wurde. Mittlerweile ist CAS ein Projekt des JA-SIG / Apereo Konsortiums, welches zum Ziel hat, Universitäten und andere höhere Bildungsinstitute zu vernetzen um einen freien Austausch von Wissen und Technologien zu gewährleisten. Die Funktionalität von CAS ist grundsätzlich mit Shibboleth vergleichbar, lediglich in der Umsetzung gibt es gewisse Unterschiede.

Technik[Bearbeiten]

Für eine Identitätsmanagement-Lösung mit CAS wird ein Central Authenticate Server benötigt. Dieser Central Authenticate Server ist im Prinzip eine Web-Applikation, die das Anmelde- und Authentifizierungs-Prozedere übernimmt. Dabei werden drei URLs benötigt, mit welchen das Anmelde- und Authentifizierungs-Prozedere jeweils durch eine verschlüsselte HTTP-Verbindung (HTTPS-Verbindung) zu dem Central Authentication Server abgewickelt wird.

Ablauf einer Benutzeranmeldung[Bearbeiten]

Login URL
Bei der Anmeldung an dem gewünschten Web Service wird der Browser des Benutzers inklusive einer Service-URL, welche den CAS Client Web Service eindeutig kennzeichnet, automatisch auf die Login URL des Central Authenticate Servers weitergeleitet. Hier findet die eigentliche Authentifizierung statt, indem der Benutzername und das Passwort abgefragt und geprüft werden. Wenn diese Authentifizierung erfolgreich war, leitet der CAS Server auf die angegebene Service-URL zurück und hängt einen "ticket" Parameter mit an. Der "ticket" Wert ist ein eindeutiger Login Token für den angemeldeten Benutzer. [2]
Validation URL
Der CAS Client Web Service validiert das erhaltene Ticket und die Service-URL über die CAS Server Validation URL. Dabei prüft der Central Authenticate Server, ob das erhaltene Ticket bereits in seiner Datenbank vorhanden ist. Um die Validierung erfolgreich abzuschließen, muss der Server dem Web Service bestätigen, dass das Ticket bereits vorhanden ist, worauf der Zugriff auf den Web Service freigegeben wird. Als Antwort (HTTP response) sendet der CAS Server ein Response Dokument (CAS XML oder SAML XML) an die CAS Client Applikation zurück. Das Response-Dokument enthält mindestens den Benutzernamen des angemeldeten Benutzers bei erfolgreicher Validierung.
Logout URL
Bei Zugriff auf die CAS Server Logout-URL prüft der CAS Server anhand des übergebenen CAS TGT-Cookies, ob der Benutzer angemeldet ist und invalidiert das CAS TGT Ticket sowie das Cookie. Falls der CAS Server sowie die verbundenen CAS Client Applikationen (Web Services) das optionale Single-Sign-Out Protokoll unterstützen, wird ein Benutzer mit diesem Zugriff automatisch bei allen besuchten CAS Client Web Services abgemeldet.

CAS Server Implementierungen[Bearbeiten]

Das CAS Protokoll ist ein offenes Protokoll, weshalb folgende CAS Server Implementierungen bekannt sind

  • JASIG CAS Server Referenz-Implementierung[3]
  • RubyCAS[4]

Weblinks[Bearbeiten]

Einzelnachweise[Bearbeiten]

  1. Jasig CAS
  2. CAS Protocol Spezifikation 3.0
  3. Apereo Jasig CAS Server Referenzimplementierung
  4. Ruby CAS Server