Identity and Access Management for Complex Research Data Workflows Richard Zahoransky, Saher Semaan, Klaus Rechert richard.zahoransky@rz.uni-freiburg.de, semaan@uni-freiburg.de, klaus.rechert@rz.uni-freiburg.de DFN-Forum 2013, Erlangen 04.06.2013
Was IdM für uns tun kann Ein System, welches Benutzerinformationen speichert Dadurch beweisbar, dass Ein Benutzer eine gültige Person ist Ein Benutzer einer bestimmten Organisation angehört... Identity & Access Management for Complex Research Data Workflows - Zahoransky, Semaan, Rechert DFN-Forum 2013 2
Was moderne IdM Systeme für uns tun können IdM-Systeme übernehmen Authentifizierung und liefern Benutzerinformationen an Dienste und Dienstanbieter Dadurch erleichtert IdM Workflows, die mit verteilten Diensten arbeiten Jeder einzelne Dienst verlangt nach Authentifizierung Zum Beispiel liefern universitäre IdM-Systeme den Angehörigen einfachen Zugang zu Journalen Wissenschaftliche Veröffentlichungen Dienste und Dienstanbieter stellen eine Herausforderung für IdM-System dar Identity & Access Management for Complex Research Data Workflows - Zahoransky, Semaan, Rechert DFN-Forum 2013 3
Neue Herausforderungen für IdM Grob gesagt: Einzelne Dienste entsprechen singulärem Web-Portal Neue, große und verteilte Dienste: Einzelne Dienstanbieter nicht mehr ausreichend Komplexere Aufgaben erfordern, dass Dienste miteinander interagieren Neue Herausforderungen und Möglichkeiten für moderne IdM-Systeme 1. Delegation von Benutzerrechten erforderlich 2. Neue Authorisierungskonzepte notwendig Identity & Access Management for Complex Research Data Workflows - Zahoransky, Semaan, Rechert DFN-Forum 2013 4
Unser praktischer Use Case bwfla Funktionale Langzeitarchivierung Work in progress Darstellen von archivierten, komplexen, digitalen Objekten in einer föderierten Umgebung Herausforderung: 1. Ermöglichen, dass einzelne Dienste im Namen ihres Benutzerkontexts interagieren können 2. Implementierung eines föderierten Authentifizierungsschemas Ziel: Verbinden der einzelnen Dienste durch bwidm Identity & Access Management for Complex Research Data Workflows - Zahoransky, Semaan, Rechert DFN-Forum 2013 5
Das Projekt bwidm Partner: Die neun Universitäten von BadenWürttemberg Motivation: Universitäten bieten verschiedenartige Dienste an Hoher Verwaltungsaufwand, um Dienste einer anderen Universität zu nutzen Bedarf an einer Landesweiten IdMLösung Identity & Access Management for Complex Research Data Workflows - Zahoransky, Semaan, Rechert DFN-Forum 2013 6
Das Projekt bwidm Anforderung: Dezentral: Kein zentrales Nutzermanagement Redundanzen minimieren: Keine redundanten Informationen speichern Minimal: IdM-Systeme und Dienste sollten so wenig wie möglich beeinflusst werden Ziel: Ein föderiertes IdM für Baden-Württemberg, um Angehörigen den Zugang über Universitätsgrenzen hinweg mit ihren lokalen Nutzeraccount zu ermöglichen Identity & Access Management for Complex Research Data Workflows - Zahoransky, Semaan, Rechert DFN-Forum 2013 7
Technologie Föderationsfähige Technologie in Universitäten und wissenschaftlichen Einrichtungen: Shibboleth, eine Implementierung von SAML (Security Assertion Markup Language) Infrastruktur größtenteils bereits vorhanden (An Universitäten und den meisten Hochschulen) Know-how vorhanden Unterstützung für Datenschutz SAML als Technologie zum Aufbau der Infrastruktur gewählt Identity & Access Management for Complex Research Data Workflows - Zahoransky, Semaan, Rechert DFN-Forum 2013 8
Workflow in Shibboleth Shibboleth trennt Service Provider und Identity Provider Erlaubt eine Föderation zwischen Service Provider and Identity Provider Memory Institution 1. User Request SP 5. deny or grant Access base on IdPAnswer Dienstanbieter: Service Provider (SP) 2. Redirect Auth request to IdP 3. User chooses IdP and enters credentials 4. IdP-Answer sent back Identitätsmanagement: Identity Provider (IdP) Identity & Access Management for Complex Research Data Workflows - Zahoransky, Semaan, Rechert DFN-Forum 2013 9
Shibboleth aus Sicht des Dienstanbieters Ein Service Provider (SP) muss seine Benutzer nicht kennen Er delegiert Identität- und Nutzer-Management Der Service vertraut dem Identity Provider (IdP) Der Service erhält seine Benutzerinformationen durch den IdP Anhand dieser Informationen kann der Service Authorisierungsfragen beantworten Identity & Access Management for Complex Research Data Workflows - Zahoransky, Semaan, Rechert DFN-Forum 2013 10
Shibboleth aus Sicht des Benutzers Der Benutzer loggt sich an seiner Heimatorganisation ein Der lokale IdP fragt nach Benutzername und Passwort Der Benutzer muss sich keine Sorgen machen, dass sein Passwort gestohlen wird Besucht der Benutzer weitere Service, stellt der IdP sicher, dass seine Identität mitreist Kein weiteres Login notwendig: Single Sign On (SSO) Identity & Access Management for Complex Research Data Workflows - Zahoransky, Semaan, Rechert DFN-Forum 2013 11
Shibboleth Login-Prozedur Browser IdP SP A Request for URL Time Authentication Request Browser redirect Loginpage, Login Response (POST) Browser redirect containing security token Benutzer Login mit Browser Browser leitet Anfrage an IdP weiter Benutzer beweist seine Identität (Benutzername und Passwort) Anwort des IdPs wird an den Service Provider weitergeleitet Identity & Access Management for Complex Research Data Workflows - Zahoransky, Semaan, Rechert DFN-Forum 2013 12
Untersuchung des Use-Cases Aufgabe: Benutzer benötigt Zugang zu einem komplexen, digitalem Objekt Einbindung von drei unabhängigen Einheiten / Diensten: 1.Lokaler Bibliotheksservice Liefert digitales Objekt und zugehörige Metadaten 2.Föderiertes Software-Archiv Bietet standartisierte Software Komponenten 3.Emulationsservice (Emulation-as-a-Service) Ermöglicht Ausführung der Software und des Objekts Identity & Access Management for Complex Research Data Workflows - Zahoransky, Semaan, Rechert DFN-Forum 2013 13
1. Lokale Bibliothek (Bibliothek-Service) Management von lokalen, digitalen Objekten Interne Zugangsbeschränkung für jedes einzelne Objekt Direkter Zugang für den Benutzer Identity & Access Management for Complex Research Data Workflows - Zahoransky, Semaan, Rechert DFN-Forum 2013 14
2. Föderiertes Software Archiv Verteiltes Software Archiv Verteiltes Syndikat von spezialisierten Software Archiven Gemeinsame Zugangs-API Zugangberechtigung Abonement pay-per-use flat-rate Zugang pro Benutzer / pro Institution Identity & Access Management for Complex Research Data Workflows - Zahoransky, Semaan, Rechert DFN-Forum 2013 15
3. Emulation-as-a-Service Syndikat von Emulationsknoten verteilte / speziell verbundene Dienste Zugangsberechtigung Abonement Rechenzeit Zugang pro Benutzer / pro Institution Identity & Access Management for Complex Research Data Workflows - Zahoransky, Semaan, Rechert DFN-Forum 2013 16
Überblick Bibliothek-Service Identity & Access Management for Complex Research Data Workflows - Zahoransky, Semaan, Rechert DFN-Forum 2013 17
Überblick Bibliothek-Service Identity & Access Management for Complex Research Data Workflows - Zahoransky, Semaan, Rechert DFN-Forum 2013 18
Überblick Bibliothek-Service Identity & Access Management for Complex Research Data Workflows - Zahoransky, Semaan, Rechert DFN-Forum 2013 19
Shibboleth Login-Prozedur Benutzer greift nur über ein Portal zu (lokale Bibliothek) Kein direkter Zugang zum SW-Archiv oder EmulationService durch Browser Frage: Wie weiß der Backend-Service, dass der Benutzer gültig ist SSO funktioniert hier nicht Antwort: SAML biete ein Profil genannt Enhanced Client or Proxy (ECP) ECP bietet eine Funktion genannt Delegation Diese Funktion erlaubt es einem SP sich im Namen seines Benutzers zu authentifizieren Der lokale Bibliotheks-Service kann sich gegenüber dem SWArchive und dem Emulationsservice authentifizieren Identity & Access Management for Complex Research Data Workflows - Zahoransky, Semaan, Rechert DFN-Forum 2013 20
SP A (Bibliothek-Service) SP B (SW-Archiv) SAML: Single Sign On (SSO) ECP delegation ECP delegation SAML: Security Assertion Markup Language / ECP: Enhanced Client or Proxy (a subset of SAML ) Identity & Access Management for Complex Research Data Workflows - Zahoransky, Semaan, Rechert DFN-Forum 2013 21
SP A (Bibliothek-Service) SP B (SW-Archiv) SAML: Single Sign On (SSO) ECP delegation ECP delegation SAML: Security Assertion Markup Language / ECP: Enhanced Client or Proxy (a subset of SAML ) Identity & Access Management for Complex Research Data Workflows - Zahoransky, Semaan, Rechert DFN-Forum 2013 22
SP A (Bibliothek-Service) SP B (SW-Archiv) SAML: Single Sign On (SSO) ECP delegation ECP delegation SAML: Security Assertion Markup Language / ECP: Enhanced Client or Proxy (a subset of SAML ) Identity & Access Management for Complex Research Data Workflows - Zahoransky, Semaan, Rechert DFN-Forum 2013 23
Was wird von Backend Services benötigt? Problem gelöst: Delegation von Benutzer-Identitäten Jedoch: Welche Informationen wird von den Backend-Services für Autorisierung benötigt? Erinnerung: Individuelle, verteilte, lose gekoppelte, föderierte Dienste Autorisierung anhand individueller Übereinkünfte (1:1) skaliert nicht Wir benötigen globale Abmachungen zwischen Dienst- und Identitätsanbieter! Wie soll ein Benutzerkontext repräsentiert werden? Wie soll dieser Kontext zwischen den Diensten übermittelt werden? Wie soll die Autorisierung anhand des Benutzerkontexts stattfinden? Identity & Access Management for Complex Research Data Workflows - Zahoransky, Semaan, Rechert DFN-Forum 2013 24
Übertragung von Benutzerattributen durch Shibboleth Unsere Abmachung besteht aus einer Reihe Attributen Diese Attribute lassen sich durch Shibboleth übertragen Anhand dieser Attribute kann jeder Dienstanbieter seine Autorisierung durchführen Was ist jedoch, falls Die Attribute nicht ausreichen, um eine Autorisierung durchzuführen? Die Attribute nicht richtig verstanden werden? Ein Dienstanbieter zusätzlich eine lokale Datenbank mit Zugangsberechtigungen halten möchte? Hybrides Autorisierungsmodell Identity & Access Management for Complex Research Data Workflows - Zahoransky, Semaan, Rechert DFN-Forum 2013 25
Warum hybrides Autorisationsmodell Unterschiedliche Organisationen haben unterschiedliche Konzepte von Attributen: Was sagt das Attribut affiliation Wie lautet die Definition, welche Werte darf es annehmen? (Mitgliedschaft)? aus Student, employee, member, staff? Trade-off zwischen Autorisierung basierend auf Attributen und Verhandlungsaufwand, um Attribute eindeutig festzulegen Identity & Access Management for Complex Research Data Workflows - Zahoransky, Semaan, Rechert DFN-Forum 2013 26
Attribut Schemata LDAP-Schema eduperson-schema EU Schema dfneduperson-schema Weit verbreitete Spezialisierung in wissenschaftlichen Einrichtungen edugain-schema Weit verbreitet Deutsche Spezialisierung Eigenes Schema? Identity & Access Management for Complex Research Data Workflows - Zahoransky, Semaan, Rechert DFN-Forum 2013 27
Zusammenfassung Umsetzung mehrschichtiger Dienste mit Shibboleth möglich Aushandeln eines allgemein anerkanntem Set an Attributen ist schwer Nur eine Untermenge aller Möglichkeiten abdeckbar Anhand dieser Untermenge an Attributen lässt sich eine grobe Autorisierung durch die Diensten durchführen Der Rest muss an den Diensten lokal implementiert werden, falls nötig Zu tun: Ein machbarer Trade-Off zwischen föderierter und lokaler Autorisierung finden bwidm: Entwickeln eines solchen Sets an Attributen Identity & Access Management for Complex Research Data Workflows - Zahoransky, Semaan, Rechert DFN-Forum 2013 28