Enough about Gaia-X theory – Let’s shift towards real use cases! - Plusserver...
SAML: Single Sign-On in Univention Management Console und Univention Apps
1. SAML: Single-Sign-On in der UMC und weiteren
Apps
Einführung in die Security Assertion Markup Language (SAML) und dessen
technische Integration in den Univention Corporate Server (UCS) und die
Univention Management Console (UMC)
Michel Smidt
Univention GmbH
smidt@univention.de
2. Einführung in SAML
Förderierter Identitäts Standard
Komponenten
Principal (User)
Identity Provider (IdP)
Service Provider (SP)
Attribute basierte Autorisierung
(Web) Single-Sign-On
3. Mehrwert
Nutzer
Einmaliges Einloggen an verschiedenen Services
IT-Abteilung
Einsparung in der Passwortverwaltung
Zugangsmanagement (Authorisierung) in der UMC
Sicherheitsgewinn
Sichere Anbindung interner und externer Services (SaaS, PaaS)
Identity service (IdP) nur im internen Netz zugänglich
Hochverfügbarkeit (UCS only)
7. Authentifizierung mit SAML
3. GET an IdP mit
samlp:AuthnRequest
univent.intern
SP
univent.saasserv.ice
SP
wiki.univent.intern
1./8. wiki.univent.intern/login
2. Redirect to IdP mit
samlp:AuthnRequest
IdP
4. Authentifizierung
5. XHTML Form samlp:response
6. POST an SP
7. Redirect
wiki.univent.intern/login
11. Migrationsszenario 1 – Anbindung eines neuen Service
Ausgangspunkt:
Service kann Just-in-Time Provisioning
Migrationsschritte
Konfiguration Univention Management Console
Konfiguration Service
12.
13.
14. Migrationsszenario 2 – Anbindung eines bestehen
Service
Ausgangspunkt:
Teilweise bestehen Benutzer bereits
Es gibt keine Benutzersynchronisation
Migrationsschritte
Konfiguration Univention Management Console
Weiteres LDAP-Attribute als NameID
Konfiguration Service
15. Welche Fragen sind zu klären bei einer SAML-
Einführung
Kann der anzubindende Service SAML 2.0?
Wie sieht die Benutzersynchronisation aus?
Kann der anzubindende Service Just-in-Time Provisioning?
Wie werden Benutzer gelöscht?
Wie kann eine anderweitige Provisionierung durchgeführt werden?
Welche Rollen soll es im anzubindenden Service geben?
Gibt es viele verschiedene Rollen von Benutzern?
Gibt es eine Standardrolle für Benutzer?
16. Zusammenfassung
SAML …
… ist hervorragend für hybride IT-Landschaften geeignet.
… erfordert weiterhin eine Benutzerverwaltung.
… erhöht die Sicherheit.
… funktioniert Out-of-the-Box in UCS 4.1.
17. Vielen Dank für Ihre Aufmerksamkeit!
Kontakt
Michel Smidt
Univention GmbH
smidt@univention.de
www.univention.de
18. SAML in UCS 4.1
SaaS wird in 77% aller Unternehmen verwendet ([1] S.12)
Top Hemmnise vor Cloud: Sicherheit, Datenschutz, Kompetenz ([1]
S.35)
UCS 4.1 wird Hybrid
Hybrides Identity Management Out-of-the-Box
Hybrides Services Management Out-of-the-Box
[1] 5th annual North Bridge Future of Cloud Computing Survey
14:02 – 2 min
Heißt, das ein Zugriff auf mehrere autonome Dienste angeboten wird ohne das Zugangsdaten untereinander kopiert werden.
XML-Syntax
Ticket Session Cookie
14:03 – 3 min
Verwaltung von Anmeldedaten ausschließlich auf dem UCS
SaaS wird in 77% aller Unternehmen verwendet ([1] S.12)
Top Hemmnise vor Cloud: Sicherheit, Datenschutz, Kompetenz ([1] S.35)
Hochverfügbarkeit mit verschlüsseltem memcache wenn ein IdP wegbricht
14:04 – 4 min
14:05 – 5 min
14:06 – 6 min
Metadatendatei des IdP erwähnen
Für die Konfiguration ist ein sauberes DNS nötig.
URLs müssen vom Benutzer aufzulösen sein.
14:08 – 8 min
1 Useranfrage an Service (Login) service.univention.intranet/login
2. Redirect to SSO Service Endpunkt des UCS IdP
https://ucs-sso.univention.intranet/…/SSOService.php/Redirect?SAMLRequest=<samlp:AuthnRequest>
3. GET Request an IdP Bearbeitung der AuthnRequest
– User Authentifikation
4. Respond als XHTML Form mit <samlp:Response>
5. POST Request an SP
6. Der SP erstellt einen security context und redirect zu service.univention.intranet/login
7. GET an service.univention.intranet/login
8. SP gibt security context an user
14:09 – 9 min
SAML ist nicht für die Benutzerverwaltung designed.
Anmeldungen sind steuerbar.
14:10 – 10 min
Dies ist eine Auswahl an Services wo SAML geht. Die meisten haben wir schon selbst angebunden.
14:11 – 11 min
14:12 – 12 min
Betrifft vorallem SaaS
Kann aber auch intern sein
14:13 – 13 min
14:19 – 19 min
Links kommen jeweils aus der Dokumentation
Für Pause in UCR. Hier könnte man auch definieren, dass der Standardlogin SAML sein soll.
Für die Konfiguration aber ein sauberes DNS nötig.
14:20 – 20 min
14:24 – 24 min
Links kommen jeweils aus der Dokumentation
14:25 – 25 min
Betrifft vorallem SaaS
Kann aber auch intern sein
14:27 – 27 min
Stichwort Authorisierung
14:28 – 28 min
Ich wollte noch etwas zum Integrationsaufwand sagen.
- UCS super
- SaaS Services auch sehr gut (Google, Office, Slack, Salesforce)
- Interne Tools wie MediaWiki, DokuWiki eher anstrengend
- Noch keine Apps möglich (owncloud ist noch am weitesten, OX schwierig)
14:04 – 4 min
SaaS (+78%) & PaaS (+58%) wachsen stark <3M ([1] S.37 & S.38)
Erwartungshaltung von Univention
Produkt Cloudfähig machen
SSO für Univention
Wir sehen ein anwachsen von SaaS Services bei unseren Kunden
Hauptunterschied ist die Vertrauensstellung
Als SAML SP „vertraust“ du dem IdP.
Bei OpenID „vertraust“ du jeder Identität.
Wenn jemand mit einem unbekannten SAML Token kommt weist du diesen einfach zurück.
SAML ist mehr für das Enterprise Umfeld gedacht.
Hier steht die Förderation auf Service Ebene im Vordergrund. Das muss aber auch vorweg konfiguriert werden.
Das OpenID Konzept ist sehr viel offener angelegt. Hier besteht praktisch kein Konfigurationsaufwand vorweg.
OpenID ist Authentifizierung
OAuth ist Authorisierung zwischen zwei Diensten ohne Credential Verteilung.
1. SAML2 supports single sign-out - but OpenID does not
2. SAML2 service providers are coupled with the SAML2 Identity Providers, but OpenID relying parties are not coupled with OpenID Providers. OpenID has a discovery protocol which dynamically discovers the corresponding OpenID Provider, once an OpenID is given. SAML has a discovery protocol based on Identity Provider Discovery Service Protocol.
3. With SAML2, the user is coupled to the SAML2 IdP - your SAML2 identifier is only valid for the SAML2 IdP who issued it. But with OpenID, you own your identifier and you can map it to any OpenID Provider you wish.
4. SAML2 has different bindings while the only binding OpenID has is HTTP
5. SAML2 can be either Service Provider (SP) initiated or Identity Provider (IdP) initiated. But OpenID always SP initiated.
6. SAML 2 is based on XML while OpenID is not.