Humboldt-Universität zu Berlin - Computer- und Medienservice

Shibboleth

Ein webbasiertes Single Sign On Sytem zur Authentifizierung und Autorisierung.

Shibboleth-Logo

 

Wie funktioniert Shibboleth?

Viele webbasierte Dienste der Humboldt-Universität sind auf eine Authentifizierung ihrer Nutzer und häufig auch auf deren Autorisierung angewiesen. Momentan implementiert jeder Dienst eigene Anmeldefunktionen, was zur Folge hat, dass Sie als Nutzer möglicher Weise mit mehreren verschiedenen Arten zur Anmeldung am Tag konfrontiert werden.

Eine für Sie leichter handhabbare Lösung bietet das Shibboleth Single Sign On (SSO) System, welches Ihnen erlaubt, sich nur einmal je Sitzung zu authentifizieren und innerhalb dieser Sitzung alle an Shibboleth angebundenen Dienste ohne weitere Authentifizierung zu nutzen. Ermöglicht wird diese Funktion durch Technologien des Ihres Browsers und der zentralen Authentifizierung im Shibboleth SSO System. Eine Sitzung bezeichnet dabei den Zeitraum zwischen dem Öffnen Ihres Browsers und dem Schließen der letzten offenen Instanz Ihres Browsers.

Zusätzlich zur Authentifizierung kann das Shibboleth System sogenannte Attribute (persönliche Informationen, die vom zentralen Identitätsmanagement der Humboldt-Universität bereitgestellt werden) für Ihre Autorisierung an den Dienst liefern. Dazu wird im Shibboleth System vorher einmalig festgelegt, welcher Dienst welche Attribute benötigt. Diese werden mit Ihrer ausdrücklichen Zustimmung nach erfolgreicher Authentifizierung an den Dienst übertragen. Ihre eigentliche Autorisierung übernimmt der Dienst auf Grundlage der übertragenen Attribute selbst.

Für Sie als Nutzer ergeben sich folgende Szenarien für den Zugriff auf webbasierte Dienste:

Erster Zugriff innerhalb der laufenden Sitzung

Öffnen Sie Ihren Browser und wählen Sie die Adresse des gewünschten Dienstes (Siehe Abbildung 1: 1 Starte Dienst). Auf dem Server des Dienstanbieters, Service-Provider (SP) genannt, leitet das Shibboleth-SP Modul über Ihren Browser an den zentralen Shibboleth-Server, dem sogenannten Identity-Provider (IdP) weiter (Abbildung 1: 2 Umleitung), denn nur dieser hat Informationen über Sie. Der IdP präsentiert Ihnen im Browser die Login-Seite, in die Sie Ihren Nutzernamen und Ihr Passwort eingeben (Abbildung 1: 3 Login? und 3 Login.).

Mit Nutzernamen und Passwort schaut der IdP in seine Sammlung von Identitätsdaten (bereitgestellt vom Identitätsmanagement der Humbold-Universität), ob Sie mit dem angegebenen Account und Passwort enthalten sind, wenn ja sind Sie authentifiziert, wenn nein, bekommen Sie im Browser die Login-Seite erneut präsentiert. Haben Sie sich vielleicht vertippt? Erst mit einer erfolgreichen Authentifizierung können Sie die Login-Seite wieder verlassen.

Sind Sie authentifiziert, legt der IdP eine Shibboleth-Sitzung für Sie an und schreibt die Kennung dieser Sitzung (Abbildung 1: 5 Umleitung: der Schlüssel) in ein sogenanntes Browser-Cookie, das wie ein Merkzettel im Browser funktioniert. Für jeden weiteren Dienst, der sich an den IdP wendet, wird dieses Cookie zum Auffinden der Shibboleth-Sitzung und damit zur Authentifizierung anstelle der Login Anfrage benutzt.

Zusätzlich zur Authentifizierung, schaut der IdP welche weiteren, persönlichen Informationen zu Ihnen vom aktuellen Dienst benötigt werden. Das sind die sogenannten Attribute. Erneut schaut der IdP in seine Sammlung von Nutzerdaten und liest die persönlichen Informationen speziell für Sie aus und stellt damit die Liste der geforderten Attribute zusammen.

Damit Sie jederzeit die Kontrolle über die zu übertragenden Informationen haben, müssen Sie der Übertragung der Attribute zustimmen. Diese Zustimmung können Sie generell für die Attributlisten jedes beliebigen beteiligten Dienstes geben, oder für die Attributliste eines bestimmten Dienstes einzeln. Dazu präsentiert Ihnen der IdP die Liste der aktuell zu übertragenden Attribute mit den entsprechenden Möglichkeiten zur Zustimmung (generell oder für den aktuellen Dienst). Sie können Ihre Zustimmung durch ein Häkchen auf der Login-Seite des IdP jederzeit zurückziehen.

Haben Sie der Übertragung der Attribute zugestimmt, werden diese zusammen mit der Information der erfolgreichen Authentifizierung in eine verschlüsselte Nachricht gepackt, die über Ihren Browser an den Shibboleth-SP zurück übertragen wird. (Abbildung 1: 5 Umleitung).

Der Shibboleth-SP Modul packt die Nachricht aus und übergibt dem eigentlichen Dienst die Attribute. Anschließend überträgt der Shibboleth-SP Modul dem eigentlichen Dienst die Kontrolle (Abbildung 1: 6 Dienst!). Der Dienst kann jetzt mit Hilfe der Attribute entscheiden, welche konkreten Funktionen Sie nutzen dürfen.

Skizze-Shibboleth-Anmeldung

  Abbildung 1: Shibboleth Anmeldung aus Nutzersicht

 

Jeder weitere Zugriff innerhalb der laufenden Sitzung

Wählen Sie im gleichen Browser die Adresse eines weiteren Dienstes, leitet der Shibboleth-SP Modul auch in diesem Fall wieder über Ihren Browser zum IdP weiter. Dieser sieht das Cookie und erkennt die Shibboleth-Sitzung und überprüft, ob diese immer noch gültig ist. Shibboleth-Sitzungen des IdP der Humboldt-Universität sind 10 Stunden, also einem ganzen Arbeitstag lang gültig. Ist die Sitzung nicht mehr gültig, wird wie beim oben beschriebenen ersten Zugriff weiter verfahren. Liegt jedoch eine gültige Sitzung - wie in den meisten Fällen - vor, werden sofort die benötigten Attribute für den aktuellen Dienst zusammengestellt. Die Wege 3 und 4 in Abbildung 1 entfallen in diesem Fall.

Alle weiteren Vorgänge sind identisch zu den beim ersten Zugriff ablaufenden Vorgängen, d.h. auch hier müssen Sie wieder der Übertragung der Attribute zustimmen, wobei die Zustimmung meist schon vorliegt und damit keine weiteren Eingaben nötig sind. Danach geht die Nachricht mit den Attributen wieder über Ihren Browser an den Shibboleth-SP Modul zurück (Abbildung 1: 5 Umleitung) der sie auspackt und dem aktuellen Dienst übergibt.

In diesem Fall passieren alle diese Prozesse im Hintergrund, ohne dass Sie eingreifen müssen. Sie bekommen über den Browser gleich die Seite des Dienstes präsentiert.

Wozu gibt es Shibboleth Föderationen?

Durch die Organisation mehrerer Einrichtungen (z.B. Universitäten, Hochschulen, Verlage) in Föderationen ist es möglich, Web-Dienste Zugehörigen anderer Institutionen zugänglich zu machen und selbst Web-Dienste anderer Einrichtungen zu nutzen.

Für Sie als Nutzer ist für den Zugriff auf Web-Dienste fremder Einrichtungen innerhalb der Föderation lediglich die Wahl der Heimateinrichtung zu Beginn der Authentifizierung nötig. Die Heimateinrichtung ist die Einrichtung, wo Sie Ihren Account besitzen (i.A. die Humboldt-Universität zu Berlin).

Für den ersten Zugriff innerhalb einer laufenden Sitzung erhalten Sie oft über Ihren Browser vom Shibboleth-SP Modul als erstes die Frage nach Ihrer Heimateinrichtung. Danach erfolgt die Umleitung zu dieser gewählten Einrichtung über Ihren Browser. (Abbildung 1: 2 Umleitung).

Die weiteren Schritte sind identisch zum Verlauf der Anmeldung ohne Föderation (siehe oben).

Quellen

Internet2: http://shibboleth.internet2.edu/

DFN-AAI: https://www.aai.dfn.de/