& & Prototyp Interoperable Servicekonten Überblick über den Lösungsvorschlag V 0.2 vom 05.10.2016 Projektbezeichnung Prototyp Interoperable Servicekonten Dokumentname Überblick über den Lösungsvorschlag Projektleiter Herr Kirschenbauer (StMFLH) Version 0.2 Erstellt am 05.10.2016 Zuletzt geändert Anton Kronseder, 05.10.2016 Bearbeitungszustand In Bearbeitung Dokumentablage https://www.interoperable-servicekonten.de/p/x/LoBv Prototyp Interoperable Servicekonten Überblick über den Lösungsvorschlag V 0.2 vom 05.10.2016 2 Änderungsverzeichnis Nr. 1 Datum 01.09.2016 V Kapitel 0.1 Alle Beschreibung Initiale Erstellung Autor Zustand Anton Nicht Kronseder, veröffentlicht Robert Reiner 2 05.10.2016 0.2 Alle Klarstellung: IdP-Proxy nur als zentrale Anton In Instanz nicht erlaubt Kronseder, Bearbeitung Klarstellung zu Vertrauenszonen Klarstellung der Abläufe Robert Reiner (Vertrauenszonen) Klarstellung der Kommunikationswege im Dipol Vereinfachte Grafik für Dipoleigenschaft, Text angepasst Klarstellung: VD tritt nicht als SP auf (Proxy-Alternative) Konkretisierung von SAML-Proxy zu SAML-IdP-Proxy Prototyp Interoperable Servicekonten Überblick über den Lösungsvorschlag V 0.2 vom 05.10.2016 3 Dieses Dokument beschreibt in einem kurzen Überblick die gewählte Lösung und grenzt sie gegenüber alternativen Lösungen ab. Diese Hintergrundinformation ist für das Verständnis der Integration von Servicekonten für die Teilnehmer relevant. Die in diesem Dokument beinhalteten Spezifikationen und Definitionen stellen eine Diskussionsgrundlage für die Teilnehmer am fachlichen Prototypen und dem BSI dar. Der Hinweis, dass jede Aussage oder Forderung ungeachtet der Formulierung stets nur ein Vorschlag ist erfolgt aus Gründen der Lesbarkeit nur jeweils zu Beginn eines Tour-Dokuments. In Teilen der Dokumentation, beispielsweise welche Attribute in der Föderation übermittelt werden und wie diese aufgebaut sein sollen, werden lediglich Vorschläge unterbreitet, da es sich hier um nicht technische, sondern um fachliche Spezifikationen handelt. Die fachlichen Spezifikationen sollen von den Teilnehmern am fachlichen Prototypen erarbeitet und mit dem BSI abgestimmt werden. Prototyp Interoperable Servicekonten Überblick über den Lösungsvorschlag V 0.2 vom 05.10.2016 4 Inhaltsverzeichnis 1 Realisierung...............................................................................................6 1.1 Zusammenfassung ............................................................................................................ 6 1.2 Hintergrund....................................................................................................................... 7 1.3 Servicekonten als Schlüssel .............................................................................................. 7 1.4 Vertrauenszonen .............................................................................................................. 8 1.5 Servicekonto ist ein Dipol ............................................................................................... 10 1.6 Informationen zur Anbindung ........................................................................................ 11 2 Alternativen ............................................................................................ 12 2.1 Alternative Standards ..................................................................................................... 12 2.2 SAML-IdP-Proxies ............................................................................................................ 12 2.3 Discovery-Service ............................................................................................................ 14 3 Literaturverweise .................................................................................... 16 4 Glossar .................................................................................................... 17 Prototyp Interoperable Servicekonten Überblick über den Lösungsvorschlag V 0.2 vom 05.10.2016 5 1 Realisierung Ein Überblick über die Implementierung der Integration von interoperablen Servicekonten. 1.1 Zusammenfassung Dieses Dokument beschreibt, wie Servicekonten unterschiedlicher Anbieter innerhalb der Föderation miteinander kommunizieren. Es wird gezeigt, dass Verwaltungsdienste nur mit ihrem eigenen Servicekonto interagieren. Die Interoperabilität ist damit ausschließlich auf den Servicekonten definiert. Abbildung: Schematische Darstellung eines Servicekontos mit seinen Schnittstellen und den Metadaten Prototyp Interoperable Servicekonten Überblick über den Lösungsvorschlag V 0.2 vom 05.10.2016 6 1.2 Hintergrund Im Fokus steht die Interoperabilität und die Fähigkeit der Föderationsmitglieder ihre Innovationskraft in die Föderation einzubringen. Aus diesem Grund wird die Schnittstelle der Verwaltungsdienste bei der Interoperabilität der Servicekonten nicht berücksichtigt. Auf diese Weise steht es den einzelnen Föderationsteilnehmern frei, wie sie ihre Verwaltungsdienste an ihre Servicekonten anbinden. Der Verwaltungsdienst selbst spricht dabei zu keinem Zeitpunkt mit dem fremden Servicekonto. Um an der Föderation teilzunehmen, müssen die Teilnehmer ihre Verwaltungsdienste dadurch nicht anpassen. Dies schützt die getätigten Investitionen der Teilnehmer und führt zu keinem Aufwand für eine Anpassung aller Verwaltungsdienste. Dies ist vorteilhaft, da die Zahl der Servicekonten überschaubar ist und - so die Identitätsfeststellung durch wenige Server in den Bundesländern erfolgt - konstant bleibt, die Zahl der Verwaltungsdienste aber sehr groß ist und voraussichtlich stark wächst. Die Aufgabe von Servicekonten der Föderation ist - im ersten Schritt - lediglich, Nutzer zu identifizieren. Dazu gehören die Authentifizierung und die Zuordnung der zur Identitätsfeststellung zugehörigen Personenattributen. Möchte ein Nutzer einen Verwaltungsdienst eines Bundeslandes nutzen, kann er das Servicekonto eines anderen Bundeslandes zur Authentifizierung verwenden. 1.3 Servicekonten als Schlüssel Der Lösungsansatz erlaubt es Nutzern ein von ihnen gewähltes Servicekonto als Schlüssel für ihre Authentifizierung durch ein fremdes Servicekonto zu verwenden. Abbildung: Schematisches, vereinfachtes Schaubild Prototyp Interoperable Servicekonten Überblick über den Lösungsvorschlag V 0.2 vom 05.10.2016 7 Das Schaubild zeigt nicht die tatsächlichen Kommunikationswege, sondern visualisiert nur das Prinzip ein Servicekonto als Schlüssel für ein anderes Servicekonto zu verwenden. Ein Servicekonto dient - ähnlich wie bei einem SAML-IdP-Proxy - sowohl als IdP als auch als SP. Die Lösung kommt im Gegensatz zu einem Proxy-Ansatz ohne zentralem Proxy aus, der alle Informationen mitlesen muss. Damit realisiert dieser Ansatz eine Ende-zu-Ende Verschlüsselung der personenbezogenen Daten des Benutzers zwischen den Servicekonten. Durch die Begrenzung der Kommunikation auf die Servicekonten, ist die Zahl der auszutauschenden Zertifikate für die Kommunikationsstrecken aber begrenzt und einfach zu verwalten. 1.4 Vertrauenszonen Der Anbieter eines Verwaltungsdiensts muss die Daten des Nutzers, der diesen Verwaltungsdienst nutzt, entgegennehmen. Der Anbieter eines Verwaltungsdiensts muss auch die Authentifizierung des Nutzers vornehmen oder vornehmen lassen, um entscheiden zu können, ob der Nutzer zu der Nutzung des Diensts berechtigt ist. Wenn der Anbieter diese Authentifizierung durch einen Drittens, außerhalb der eigenen, übergreifenden Vertrauenszone, vornehmen lässt, muss er die Nutzerinformationen mit der Zustimmung des Nutzers an diesen Dritten übertragen. Die Authentifizierungsantwort enthält ebenfalls Daten des Nutzers und darf nur mit dessen Zustimmung von der außerhalb der übergreifenden Vertrauenszone liegenden Authentifizierungsstelle an den Verwaltungsdienst (direkt oder indirekt) übertragen werden. Stimmt der Nutzer einer der beiden Übertragungen nicht zu, kann der Verwaltungsdienst nicht genutzt werden. Die folgende Grafik zeigt an welchen Stellen die Daten des Nutzers auftreten. Innerhalb der Konten können die Daten des Nutzers im Klartext vorliegen. Die Föderation schreibt vor, dass die Daten über die grün markierten Kommunikationswege verschlüsselt übertragen werden müssen. Prototyp Interoperable Servicekonten Überblick über den Lösungsvorschlag V 0.2 vom 05.10.2016 8 Abbildung: Vertrauenszonen in der Föderation Die Servicekonten und Verwaltungsdienste des Teilnehmers bilden eine Vertrauenszone. In diese Vertrauenszone können weitere Servicekonten und Verwaltungsdienste aufgenommen werden. Jede Vertrauenszone definiert ein Servicekonto, das diese Vertrauenszone vertritt und in der Föderation auftritt. Zwischen diesem Servicekonto und den Servicekonten der andern Föderationsmitglieder werden die Informationen verschlüsselt übersendet. Kein Dritter kann diese Informationen mitlesen. Die Vertrauenszone eines Teilnehmers muss nicht homogen sein. Es ist möglich, dass die Vertrauenszone in weitere kleinere Vertrauenszonen unterteilt wird. Innerhalb der Vertrauenszone eines Teilnehmers kann es mehrere Servicekonten geben, die in einer durch den Teilnehmer definierten Weise miteinander kommunizieren. Die konkrete Ausgestaltung Prototyp Interoperable Servicekonten Überblick über den Lösungsvorschlag V 0.2 vom 05.10.2016 9 der Vertrauenszone obliegt somit dem Teilnehmer. Aus Sicht der Föderation ist die Vertrauenszone des Teilnehmers eine Blackbox mit einem ausgezeichneten Servicekonto. Dieses Konzept ist analog zu einem Portal, das seinen Nutzern verschiedene Dienste anbietet. Dem Nutzer muss dargelegt werden, wer seine Daten entgegen nimmt und was diese Stelle mit diesen Daten tun darf. Ob die Stelle für die Erbringung dieser Dienstleistung einen oder mehrere Server in unterschiedlichen Rechenzentren benötigt, ist für die Betrachtung der Sicherheit nicht relevant, solange der Betreiber die Daten vor den Zugriffen Dritter schützt. Die tatsächliche Ausgestaltung der Kommunikation innerhalb einer Vertrauenszone obliegt dem Teilnehmer und seinen Anforderungen an den Schutz der Daten. Es ist also wichtig, dass der Nutzer informiert wird, welche Stellen die von ihm übertragenen Daten mitlesen können und was diese Stellen mit diesen Daten tun dürfen. Die Verantwortlichen der Vertrauenszonen müssen sicherstellen, dass die Beteiligten der Vertrauenszone die Daten nur gemäß der durch den Nutzer erteilten Zustimmung verwenden. Generell ist es anzustreben, dass die Informationen von Nutzern von möglichst wenig Beteiligten gelesen werden können. Die Vertrauenszone definiert die Beteiligten und macht es so für die Nutzer transparent, wie die Daten des Nutzers verwendet werden. Das Konzept für interoperable Servicekonten schreibt nicht vor, wie die Vertrauenszonen technisch oder organisatorisch intern ausgestaltet werden. Diese Freiheitsgrade können von den Föderationsteilnehmern genutzt werden, um eigene Lösungen zu entwickeln, die beispielsweise auch den spezifischen organisatorischen Rahmenbedingungen gerecht werden. 1.5 Servicekonto ist ein Dipol Servicekonten werden über die Security Assertion Markup Language (SAML) an die Föderation angebunden. Prototyp Interoperable Servicekonten Überblick über den Lösungsvorschlag V 0.2 vom 05.10.2016 10 Für die Integration eines Servicekontos ist es wichtig zu verstehen, dass aus Sicht der Interoperabilität das Servicekonto ein Dipol mit den beiden Polen Identity-Provider (IdP) und Service-Provider (SP) ist. Abbildung: Schematische Darstellung eines Servicekontos als Dipol Die Abbildung zeigt vereinfacht die Dipoleigenschaften von Servicekonten. Es werden nicht alle Kommunikationswege aufgezeigt, sondern nur schematisch die Dipoleigenschaft. Die beiden Kommunikationswege (a) und (b) sind voneinander unabhängig. In beiden Fällen wird beschrieben, wie die Anmeldung an einem fremden Servicekonto erfolgt. Im dem Anwendungsfall (a) meldet sich der Nutzer für die Nutzung eines Verwaltungsdiensts 1 mit Servicekonto 2 an. Im Anwendungsfall (b) meldet sich der Nutzer für die Nutzung eines Verwaltungsdiensts 2 mit Servicekonto 1 an. 1.6 Informationen zur Anbindung Damit Föderationsteilnehmer ihr Servicekonto in die Föderation integrieren können, sind folgende Schritte durchzuführen: 1. Anmeldung als Teilnehmer (außerhalb dieser Spezifikation) 2. Bereitstellung von Metadaten zum eigenen Servicekonto 3. Integration der Metadaten der anderen Föderationsteilnehmer (über automatische Anmeldung) Prototyp Interoperable Servicekonten Überblick über den Lösungsvorschlag V 0.2 vom 05.10.2016 11 2 Alternativen Eine kurze Diskussion der möglichen Alternativlösungen. Zu dem gewählten Ansatz wurden verschiedene alternative Lösungsstrategien betrachtet. Hier eine kurze Darlegung, warum diese Alternativen nicht gewählt wurden. 2.1 Alternative Standards Offene Standards sind für das E-Government wichtig, um den Teilnehmern der Föderation freie Hand bei der Wahl ihrer Technologien zu geben. Das E-Government beginnt nicht auf der grünen Wiese. Viele Teilnehmer haben bereits Servicekonten, die mit möglichst geringem Aufwand angebunden werden müssen. Zudem bieten offene Standards die Möglichkeit, Technologien zu einem späteren Zeitpunkt zu wechseln. Dies ist wichtig, da Technologieanbieter Geschäftsstrategien ändern können und dadurch Produkte vom Markt genommen oder zu ungünstigeren Konditionen angeboten werden. Die Verwendung von SAML als offenen Standard für die Anbindung von Servicekonten wurde durch den Auftraggeber vorgegeben. Eine naheliegende Alternative von OpenID Connect stand daher nicht zur Wahl. Generell könnte aber in Zukunft die Föderation auch über den OpenID Connect Standard aufgebaut bzw. erweitert werden, falls die ersten Servicekonten diesen Standard implementieren. Dies hätte dann zum gegebenen Zeitpunkt eine weitere Untersuchung zur Folge. 2.2 SAML-IdP-Proxies SAML-IdP-Proxies werden in vielen E-Govenment-Lösungen weltweit für interoperable Identifizierung von Nutzern (Studenten, Mitarbeitern und Bürgern) verwendet. Diese Lösung skaliert gut und ist durch viele Umsetzungen erprobt. Diese Lösung wurde beispielsweise auf europäischer Ebene für STORK gewählt (siehe auch http://www.esens.eu/content/eidasconnector | PDF). Prototyp Interoperable Servicekonten Überblick über den Lösungsvorschlag V 0.2 vom 05.10.2016 12 SAML unterscheidet Identity-Provider (IdPs) und Service-Provider (SPs). Damit zwei Server miteinander kommunizieren können, müssen sie für die Verschlüsselung und das Signieren der übertragenen Informationen die Zertifikate des Kommunikationspartners kennen. Diese Zertifikate müssen vor Beginn der Kommunikation ausgetauscht werden. Bei einer großen Zahl von Kommunikationspartnern ist der Austausch der Zertifikate nicht trivial. Jeder Kommunikationspartner muss die Zertifikate aller potentiellen Gegenstellen kennen und bei Aktualisierung entsprechend informiert werden. SAML-IdP-Proxies umgehen dieses Problem durch die Hierarchisierung. Jeder IdP-Proxy muss so nur die Zertifikate seiner unmittelbaren Kommunikationspartner kennen: Alle untergeordneten Knoten und einen übergeordneten Knoten. In einer SAML-IdP-Proxy-Architektur, begeben sich die Teilnehmer der Föderation in eine besondere Vertrauensstellung. Personenbezogenen Informationen liegen auf den Servern der Teilnehmer kurzzeitig auch unverschlüsselt vor. Durch die IdP-Proxy-Architektur werden die Knoten mit einem zentralen Wurzelknoten in einer Baumstruktur angeordnet. Über diesen Wurzelknoten laufen alle Informationen und könnten technisch dort mitgelesen und ausgewertet werden. Die Verwaltungsdienste sind in diesem Lösungsvorschlag nicht enthalten, treten also nicht als SAML-SPs auf. Daher treten sie auch nur intern mit ihrem Servicekonto in Verbindung, sind also kein Teil einer IdP-SP-Kommunikation der interoperablen Servicekonten. Daher sind keine vermittelnden Proxies notwendig. Die Kommunikation erfolgt ausschließlich direkt zwischen dem SP des anfragenden und dem IdP des antwortenden Servicekontos. Aus diesem Grund sind auch hier keine Proxies notwendig. Der IdP-Proxy-Standard weist bei den Produkten unterschiedlicher Anbieter unterschiedliche Auslegungen auf. Die Interpretation von SAML-IdP-Proxy-Requests (SAML-Authn-Requests, die die unter 3.4.1.5 in der Assertions and Protocols for the OASIS Security Assertion Markup Language (SAML) V2.0 angegebenen Restriktionen erfüllen) ist gegenüber Nicht-ProxyAuthn-Requests nicht immer einheitlich. Demzufolge ist die Interoperabilität bei der Verwendung von SAML-IdP-Proxies gegenwärtig schlechter als bei SAML-Kommunikation ohne Verwendung eines SAML-IdP-Proxies. Prototyp Interoperable Servicekonten Überblick über den Lösungsvorschlag V 0.2 vom 05.10.2016 13 Der Auftraggeber hat die Vorgabe gemacht, zentrale SAML-IdP-Proxies nicht zu verwenden. Die Verwendung von SAML-IdP-Proxies durch die Föderationsteilnehmer ist hierbei natürlich nicht beschränkt. Jeder Teilnehmer kann für die Anbindung seines Servicekontos eine für ihn passende Strategie wählen und daher auch einen Proxy verwenden. Gefordert ist lediglich, dass der durch die Interoperabilität definierte Schnittstelle entsprochen wird. 2.3 Discovery-Service Um die Möglichkeit des Mitlesens aller Informationen im zentralen Wurzel-IdP-Proxy zu verhindern, wurde ursprünglich auch eine Lösung mit Discovery-Service angedacht. Auftraggeber und Auftragnehmer planten diesen Ansatz weiter zu untersuchen. Bei diesem Ansatz ist die Lösungsstrategie, dass ein Servicekonto die Informationen für die Kommunikation mit einem anderen Servicekonto von einem zentralen Discovery-Service erhält. Hierbei handelt es sich also um einen Metadata-Discovery-Service. Metadata- gegenüber IdP-Discovery Grundsätzlich muss zwischen einem Discovery-Service für Metadaten und einen DiscoveryService für IdPs unterschieden werden. Ein IdP-Discovery-Service hat lediglich die Aufgabe, den zu einem Benutzer passenden IdP automatisch oder per Rückfrage zu ermitteln. Ein Metadata-Discovery-Service ermittelt die Verbindungsdaten für eine sichere Kommunikation zwischen SAML-Entities. Grundsätzlich unterscheiden wir zwischen einem dynamischen und einem statischen Metadata-Service. Bei dem dynamischen Metadata-Discovery werden die Verbindungsdaten für eine sichere Kommunikation zwischen Servicekonten zur Zeit der Nutzeranfrage ermittelt. Bei einem statischen Metadata-Service werden die Daten über einen definierten Kanal außerhalb des SAML-Standards ausgetauscht. Für einen dynamischen Metadata-Discovery-Ansatz gab es zum Zeitpunkt der Erstellung dieses Prototypen noch keinen offenen oder Industriestandard. Aufgrund des Zeitplans war eine umfassende Betrachtung des Themas nicht möglich. Prototyp Interoperable Servicekonten Überblick über den Lösungsvorschlag V 0.2 vom 05.10.2016 14 Der SAML-Standard für Metadata definiert das Nachrichtenformat und sieht drei statische Möglichkeiten vor, die standardisierten Deskriptoren abzurufen: 1. Austausch über DNS 2. Austausch über einen Standard-URL (ein sogenannter well-known URL) 3. Out-of-Band (also außerhalb des Standards) Die ersten beiden Möglichkeiten implizieren, dass jeder Teilnehmer seine Daten selbst auf seinen Servern dezentral zur Föderation publiziert. Das bedeutet dann aber auch, dass jeder Teilnehmer bei jedem anderen Teilnehmer die aktuellen Daten abrufen muss. Bei 16 Teilnehmern müsste jeder Teilnehmer also zur Ermittlung aller Verbindungsinformationen 15 verschiedene Server innerhalb der Föderation anfragen. Zur Erleichterung der Ermittlung der aktuellen Metadaten haben wir uns für den Prototypen daher für einen zentralen Ansatz entschieden. Die Metadaten werden auf einem zentralen Server von den Teilnehmern der Phase 2 über einen Webschnittstelle eingespielt und können über dieselbe Schnittstelle automatisiert bezogen werden. Dieser Austausch findet bei der Integration eines Servicekontos in die Föderation statt. Die Deskriptoren werden dabei vom Metadata-Server validiert, um frühestmöglich etwaige Konfigurationsprobleme zu lokalisieren. Die Föderation muss definieren in welchen Abständen die Teilnehmer die Konfigurationen auf dem zentralen Metadata-Server überprüfen müssen. Alternativ kann auch gefordert werden, dass bei einem Kommunikationsproblem, die Metadaten erneut abgeglichen werden müssen. Derzeit sind diese Eckpunkte noch nicht definiert. Gerade im Testbetrieb können Teilnehmer ihre Zugangsdaten häufiger ändern wollen. Wir empfehlen daher in der Phase 2 die Daten regelmäßig abzugleichen und bei Problemen die Daten zu überprüfen. Im Rahmen einer weiteren Untersuchung könnte das Thema des dynamischen MetadataDiscovery-Service jedoch von Interesse sein. Prototyp Interoperable Servicekonten Überblick über den Lösungsvorschlag V 0.2 vom 05.10.2016 15 3 Literaturverweise Weitere Informationen zum Thema Interoperable Servicekonten finden Sie in den folgenden Dokumenten. Name Kurzbeschreibung Version Tour für neue Eine geführte Tour durch die Dokumentation für neue Föderationsmitglieder Föderationsmitglieder. Überblick über die Liste der Anwendungsfälle, die für die Spezifikation des Anwendungsfälle Lösungsvorschlags betrachtet werden. Beschreibung der SAML- Dokumentation der SAML-Metadaten für die an der Metadaten Föderation teilnehmenden IdPs und SPs. Beschreibung der Dokumentation der Kommunikationsschnittstellen Schnittstellen außerhalb der SAML-Metadaten. API-Dokumentation Informationen zur Nutzung des APIs. 0.1 Kurzanleitung für Liste von Kurzanleitungen, die Aufgaben der 0.1 Föderationsteilnehmer Föderationsteilnehmer beschreiben. Glossar Beschreibung der zentralen Begriffe im Kontext von 0.1 0.2 0.2 0.2 0.1 interoperablen Servicekonten der Föderation. Prototyp Interoperable Servicekonten Überblick über den Lösungsvorschlag V 0.2 vom 05.10.2016 16 4 Glossar Die in diesem Dokument verwendeten Begriffe aus der Domäne Interoperable Servicekonten werden in einem separaten Glossar erklärt. In diesem Glossar werden alle Begriffe der Domäne aufgelistet. Prototyp Interoperable Servicekonten Überblick über den Lösungsvorschlag V 0.2 vom 05.10.2016 17
© Copyright 2024 ExpyDoc