WebSSO

Allgemeine Informationen

Was ist WebSSO und wie funktioniert es?

Um viele universitäre Dienste nutzen zu können, brauchen sich FAU-Angehörige seit mittlerweile acht Jahren nur noch einmal über WebSSO, den zentralen Anmeldedienst der FAU, anzumelden. Weitere Anmeldevorgänge bei den unterschiedlichen Diensten und Applikationen erfordern danach keine weitere Interaktion mit dem Benutzer.

WebSSO ermöglicht also eine zentrale Authentifizierung und Autorisierung von webbasierten Ressourcen. Das System besteht im Wesentlichen aus zwei miteinander kommunizierenden Modulen:

  • Identity Provider (IdP)
  • Service Provider (SP)

Der IdP ist für die Authentifizierung und die Bereitstellung von Attributen verantwortlich. Dies erfolgt über die Provisionierung eines Datenbank-Servers, der als Authentifizierungs- und Attributquelle für den IdP dient. Dieser Server enthält die von den SPs benötigten Attribute. Ein am IdP authentifizierter Benutzer, kann die Ressourcen aller angeschlossenen SPs nutzen, ohne sich erneut authentifizieren zu müssen. Vom IdP gibt es nur eine zentrale Instanz, diese ist unter www.sso.uni-erlangen.de zu erreichen.

Die vom IdP weitergegebenen Attribute werden für jeden SP einzeln festgelegt. Die übertragenen Attribute werden dem Nutzer durch das so genannte Consent-Modul angezeigt und es wird nach der Zustimmung zur Übertragung gefragt. Wir weisen darauf hin, dass ebenso als Voraussetzung eine Beschreibung der Verarbeitungstätigkeiten gemäß Art. 30 DSGVO für das jeweilige System vorliegt.

Die Datenschutz-Grundverordnung verpflichtet nach Art. 30 DSGVO dazu eine schriftliche Dokumentation und Übersicht über Verfahren zu führen, bei denen personenbezogene Daten verarbeitet werden. In dem Verzeichnis von Verarbeitungstätigkeiten müssen wesentlichen Angaben zur Datenverarbeitung aufgeführt werden, wie u. a. die Datenkategorien, der Kreis der betroffenen Personen, der Zweck der Verarbeitung und die Datenempfänger. Auf Anfrage ist es der Aufsichtsbehörde vollständig zur Verfügung zu stellen.

Falls bei Webanwendungen der FAU auf das sogenannte Consent-Modul verzichtet werden soll, sind die Beschreibung der Verarbeitungstätigkeiten sowie deren Datenschutzfreigabe eine Grundvoraussetzung.

Die Anbindung der SPs erfolgt unter Beachtung des Gebots der Datensparsamkeit. Der Zugriff auf den zentralen IdP von außen ist nur über den verschlüsselten HTTPS-Port erreichbar. Dieser dient zur Kommunikation mit den Benutzern, wie z. B. bei der Authentifizierung.

Der SP ist für die ihm zugeordneten Ressourcen (Webanwendung) verantwortlich. Für jeden Server, auf dem eine Webanwendung das WebSSO nutzen soll, muss also ein SP installiert sein. Die Entscheidung über einen erfolgreichen Zugriff trifft der SP aufgrund der Aussagen des IdP. D. h. anhand der vom IdP erhaltenen Attribute, entscheidet der SP, auf welche Ressourcen der Benutzer zugreifen kann. Einem authentifizierten Benutzer kann natürlich auch der komplette Zugriff, aufgrund fehlender Attribute, verwehrt werden.

Wie kann ich meine Webanwendung oder Applikation an WebSSO anbinden?

Generell kann jede Webanwendung an das WebSSO angeschlossen werden. Dabei kommuniziert diese nicht direkt mit dem zentralen Identity Provider (IdP), sondern mit einem lokal installierten Service-Provider (SP).

Wir unterstützen im Moment zwei Implementierungen von SPs unter Linux:

Der Shibboleth-SP kommt als Daemon inkl. Apache-Module. Diese Variante kann von allen Webanwendungen, welche den Apache-Webserver einsetzen, verwendet werden.

Der SP von simpleSAMLphp kommt als PHP-Anwendung. Einzige Voraussetzung ist somit ein PHP-fähiger Webserver, wobei wir Unterstützung für den Apache-Webserver anbieten können. Diese Variante kann allerdings nur von PHP-Webanwendungen genutzt werden, da die Nutzung nur über eine PHP-API möglich ist.

Beide Implementierung müssen nach erfolgreicher Installation entsprechend konfiguriert werden. Danach muss der neue SP beim zentralen IdP registriert werden. In dieser Phase müssen auch die zu übergebenen Attribute definiert werden.

Die vom IdP weitergegebenen Attribute werden für jeden SP einzeln festgelegt. Die übertragenen Attribute werden dem Nutzer durch das so genannte Consent-Modul angezeigt und es wird nach der Zustimmung zur Übertragung gefragt. Wir weisen darauf hin, dass ebenso als Voraussetzung eine Beschreibung der Verarbeitungstätigkeiten gemäß Art. 30 DSGVO für das jeweilige System vorliegt.

Sollten sensible Attribute angefordert werden, behalten wir uns immer eine Rücksprache mit dem Datenschützer der FAU vor sowie die Anforderung der Beschreibung der Verarbeitungstätigkeiten und eine Datenschutzfreigabe.

Die Datenschutz-Grundverordnung verpflichtet nach Art. 30 DSGVO dazu eine schriftliche Dokumentation und Übersicht über Verfahren zu führen, bei denen personenbezogene Daten verarbeitet werden. In dem Verzeichnis von Verarbeitungstätigkeiten müssen wesentlichen Angaben zur Datenverarbeitung aufgeführt werden, wie u. a. die Datenkategorien, der Kreis der betroffenen Personen, der Zweck der Verarbeitung und die Datenempfänger. Auf Anfrage ist es der Aufsichtsbehörde vollständig zur Verfügung zu stellen.

Weiterhin ist es der Universitätsleitung ein Anliegen, bei Webanwendungen der FAU auf das sogenannte Consent-Modul zu verzichten. Die Beschreibung der Verarbeitungstätigkeiten sowie die Datenschutzfreigabe sind dabei Grundvoraussetzung.

Consent-Modul WebSSO
Consent-Modul zur Abfrage der Zustimmung für die Attributsübermittlung bei WebSSO

Weiterhin ist es für die Anmeldung über WebSSO ohne Consent-Modul notwendig, in der Beschreibung zur Verarbeitungstätigkeit die Attribute anzugeben, die vom IdP an den SP übermittelt werden sollen. In dem oben genannten Beispiel wären das

  • Nachname
  • E-Mail-Adresse
  • Vorname
  • EduPersonEntitlement
  • Geschlecht

[/notice-hinweis]

Folgende Daten werden für die Anbindung an WebSSO zusätzlich vom SP benötigt:

  • Name, Telefonnummer, E-Mail-Adresse des technischen Ansprechpartners (=Administrator)
  • Name des Systems / der Webanwendung (Entity-ID)
  • Beschreibung des Systems / der Webanwendung
  • Metadaten der Webanwendung im php-Format (oder URL der Metadaten)