Norm 410 Security Token Service

Ähnliche Dokumente
Norm 410 Security Token Service

Norm 225 Service Definition mit WSDL

Norm 440 Externe Navigation in VU-Portale

Verteilte Systeme: Übung 4

Wissenschaftliche Vertiefung Web Services. Esslingen, 22. Januar 2016 Simon Schneider

Norm 270 Abbildung von Individualitäten

Übersicht. Angewandte Informatik 2 - Tutorium 6. Teile einer WSDL-Datei. Was ist WSDL. Besprechung: Übungsblatt 5

Norm 240 Versionierung

Service Contract Handling. Best-Practices zum Umgang mit Service Contract Artefakten (WSDL) in Oracle SOA Suite 11g

wsdl-analyse von hand kein normaler mensch macht das am beispiel currencyconverter

SOA, Webservices und SOAP für Schnelleinsteiger

Technische Spezifikation Schnittstelle sedex Autorisierungs-Dienst

extra und WebServices

Web-Sevices : WSDL Entwicklung von Web-Anwendungen

Agenda. Web Services unter Lotus Notes/Domino

Onlineumfragen WebServices (OWS)

SOA Guidelines. Service Contract Design mit der Web Service Description Language (WSDL) Guido Schmutz Technology Manager

WSDL. Heutige Vorlesung. Wozu WSDL? Wie wird WSDL verwendet? Language. Services. Description. Web. Abstrakte vs. konkrete Syntax

Grundlagen der Web-Entwicklung INF3172

Netzprogrammierung Web-Dienste

Seminar E-Services WS 02/03 WSDL. Web Services Description Language. Moritz Kleine SES 02 - WSDL

XML- und Webservice- Sicherheit

Generierung von Serviceverträgen auf Basis objektorientierter ereignisgesteuerter Prozessketten

Norm 260 Sicherheitsmechanismen

Serviceorientierte Architektur / Web Service

Norm Produktmodell

Optimierung des Versicherungsvertriebes

Themen. Web Service - Clients. Kommunikation zw. Web Services

WebServices LLynch endion ASP 2.3

Asynchrone Webservices mit Axis 1.x in Java

WebServices Zwischen Buzzword und Nutzen

H.2 Problematik. 2 Enterprise Application Integration EAI. H.1 Überblick. 2 Enterprise Application Integration (2)

Norm 260 Sicherheitsmechanismen

Grundlagen der Normen des BiPRO e.v.

Oracle WebServices im praktischen Einsatz

Die Technik hinter Web Services. Wie baut man einen Web Service? Was sind die technischen Details von WSDL, SOAP und UDDI?

Norm 260 Sicherheitsmechanismen

Arten von Broker Architekturen

BiPRO-Anbindung unter.net/wcf

Vorlesung "SOA Entwicklung verteilter Systeme auf Basis serviceorientierter Architekturen" 3. Implementierung von Web Services und Clients

Norm 230 Übertragung von Dateien

Netzwerk. A. Eberhart, S. Fischer: Web Services. München: Hanser Verschiedene Definitionen Web Service

Verteilte Anwendungen. Teil 10: UDDI und WSDL

Comtarsia Web Client Einführung und Installation

Auszug aus JAX-WS Folien

Seminarbericht Rechnernetze XML Web Services Schnittstelle zwischen den Welten.NET und Java

Wiederholung: Beginn

WSDL. Web Services Description Language. André Vorbach. André Vorbach

Erläuterungen zu Darstellung des DLQ-Datenportals

Web Services. Standards und Realisierung in Java

3-schichtige Informationssystem-Architektur

Norm 430 Automatisierte Übertragung für Dokumente, Vorgänge, und GDV- Daten

Norm 430 Automatisierte Übertragung für Dokumente, Vorgänge, und GDV- Daten

Prozessbaukasten der BiPRO

Java Web Services. Seminarunterlage. Version 4.03 vom

Benutzerhandbuch. Neukirchen

5. Übung zur Vorlesung Service-orientierte Architekturen

Client/Server-Programmierung

.NET-Networking 2 Windows Communication Foundation

Webservices. 1 Einführung 2 Verwendete Standards 3 Web Services mit Java 4 Zusammenfassung. Hauptseminar Internet Dienste

Norm 300 Grundlagen Fachlichkeit

<Insert Picture Here> Einführung in SOA

Autor: Peter Seemann Seminar: Softwarearchitekturen Betreuer: Benedikt Meurer

Shiptrack.com Service

Postkorb-Nachricht an das Bayernportal Version 2.03

Ein Vergleich zwischen SCA,JBI und WCF. Marcello Volpi

Technologien 1 XML 1 2 WSDL Was ist WSDL Aufbau von WSDL-Dokumenten 9 3 SOAP Was ist SOAP Aufbau von SOAP 11 4 AXIS 12

Zustandsgebundene Webservices

Gliederung. 1. Einleitung (1) 1. Einleitung (3) 1. Einleitung (2)

Der Einsatz von SOAP und WSDL am Beispiel von LIMBAS

Web Services. Eine kleine Einführung. Werner Gaulke

Handbuch Xlive FILE ROUTER Intrexx Konfiguration

Seifenfrei Interoperabilität von Java und.net ohne SOAP

Übersicht. Eclipse Foundation. Eclipse Plugins & Projects. Eclipse Ganymede Simultaneous Release. Web Tools Platform Projekt. WSDL Editor.

Anleitung zur Fleet & Servicemanagement Evatic Schnittstelle

GRUDIS RB3 (Schnittstelle MapViewer)

Service-Oriented Architecture (SOA) [1]

SOAP, WSDL, UDDI. Martin Grimmer. Proseminar: Die Zukunft der Softwareentwicklung: Komponentensysteme/Web Services Vortrag 1 am

SOAP. SOAP: Envelope

Transkript:

1 Norm 410 Security Token Service 2 3 Release und Version Release 1, Version 1.0, vom 19. Juni 2007 4 5 Status Offizielle Norm 6 7 Editor Dr. Thomas Kippenberg, NÜRNBERGER 8 9 10 11 12 13 14 Autoren Dr. Dieter Ackermann, VOLKSWOHL BUND (dieter.ackermann@volkswohl-bund.de) Dr. Günther vom Hofe, Continentale (guenter.vomhofe@continentale.de) Dr. Thomas Kippenberg, NÜRNBERGER (thomas.kippenberg@nuernberger.de) Dr. Torsten Schmale, inubit AG (ts@inubit.com) Sören Chittka, VOLKSWOHL BUND, (soeren.chittka@volkswohl-bund.de) Carsten Baehr, VOLKSWOHL BUND, (carsten.baehr@volkswohl-bund.de) 15 16 17 Gegenstand der Norm Die vorliegende Norm 410 definiert die Schnittstelle zur Implementierung eines Security- Token-Services (STS). 18 19 Voraussetzung Norm 225 Release 1 Version 2 20 Norm 260 Release 1 Version 4 21 Norm 270 Release 1 Version 1 22 - Seite 1 von 10 -

23 24 25 26 27 28 29 30 Hinweis zur Veröffentlichung Die anliegend überreichte Norm ist urheberrechtlich für die BiPRO geschützt. Das Dokument wird Ihnen im Rahmen Ihrer Mitgliedschaft bei der BiPRO und damit als Mitglied dieses geschlossenen Empfängerkreises überlassen. Dementsprechend stellt die Überlassung an Sie keine Erstveröffentlichung der Norm dar. Zur Erstveröffentlichung gegenüber Dritten bleibt somit die BiPRO alleine berechtigt. Die Veröffentlichung erfolgt gemäß Norm100. Aufgrund der besonderen Wertigkeit der Normen für die Mitglieder sind wir gehalten, Verstöße gerichtlich zu ahnden. 31 - Seite 2 von 10 -

32 Inhaltsverzeichnis 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 Norm 410 Security Token Service... 1 Inhaltsverzeichnis... 3 Einführung... 4 Verwendete Standards... 4 Abgrenzung... 4 Spezifikation... 5 Template Definition... 5 WSDL-Template für einen Security-Token-Service (STS)... 5 wsdl:definitions... 5 wsp:policies... 6 wsdl:types... 6 wsdl:message... 6 wsdl:porttype... 6 wsdl:binding... 8 wsdl:service... 8 wsdl:port... 9 49 - Seite 3 von 10 -

50 Einführung 51 52 53 Verwendete Standards Grundlage des in dieser Norm spezifizierten Security-Token-Services (STS) sind die folgenden OASIS Spezifikationen. 54 55 56 57 58 59 60 WS-Security (Version 1.1) Sicherheitsframework für WebServices WS-Trust (Februar 2005) Definition von Security-Token-Services WS-SecureConversation (Februar 2005) Abwicklung sicherer Sessions WS-SecurityPolicies (Juli 2005) Definition der Sicherheitsanforderungen WS-Trust definiert einen Security-Token-Service und WS-SecureConversation das Verfahren, wie ein Sicherheitskontext-Token (Security Context Token) generiert und genutzt wird. Beide Spezifikation sind sehr umfassend und sind explizit als Baustein-System entworfen. 61 62 63 64 Abgrenzung Diese Norm enthält lediglich die detaillierte technische Spezifikation der Schnittstelle eines STS im Sinne von BiPRO. Die Verfahren zur Einbindung des STS sind in Norm 260 beschrieben, die Erstellung von Sicherheitspolicies ist Teil der Norm 270. 65 - Seite 4 von 10 -

66 Spezifikation 67 68 Template Definition Im weiteren Verlauf werden folgende Variablen für Templates verwendet: Variable Wert ${X1} Namespace WS-Trust: http://schemas.xmlsoap.org/ws/2005/02/trust ${X2} Namespace SW-Policy : http://schemas.xmlsoap.org/ws/2004/09/policy 69 70 71 72 73 74 75 76 77 WSDL-Template für einen Security-Token-Service (STS) Die verschiedenen Web-Service-Funktionen, mit denen die von einem Provider im BiPRO- Umfeld angebotenen Authentifizierungsverfahren realisiert werden, MÜSSEN sich nur auf der untersten Ebene der Schnittstellenbeschreibung unterscheiden, nämlich hinsichtlich der Service-Endpoints. Sie lassen sich darum als Kommunikationsschnittstellen ( WSDL-Ports) eines einzigen STS realisieren, dessen WSDL-Beschreibung über drei message-elemente, ein porttype-element, ein binding-element und ein service-element mit mehreren port- Elementen verfügt. Im Folgenden wird ein Template für eine solche WSDL-Beschreibung vorgestellt. 78 79 80 81 Jedes Authentifizierungsverfahren in einem eigenen STS zu realisieren ist im Sinne der BiPRO-Normen eine gleichwertige Alternative. Die WSDL-Beschreibungen dieser Services wären dann weitgehend identisch, da sie sich nur in den jeweils einzigen Port-Elementen unterschieden. 82 83 Um eine BiPRO-Konformität sicher zu stellen, MUSS die Beschreibung der STS-Schnittstelle unter Verwendung der allgemeinen Muster für WSDL Templates (siehe Norm 230) erfolgen. 84 85 86 wsdl:definitions Dieses Template definiert den grundlegenden Aufbau der Schnittstellendatei und die rele- vanten Namensräume (siehe Norm 230). - Seite 5 von 10 -

87 88 wsp:policies Das Template zu diesem Abschnitt ist in Norm 270 definiert. 89 90 91 wsdl:types Dieses Template definiert die Objekte und Datentypen, die vom Consumer an den STS oder vom STS an den Consumer übertragen werden können. 92 93 94 95 96 97 98 99 100 101 102 103 104 105 Das Template zu diesem Abschnitt wird analog zur Norm 230 gebildet. Entsprechend der verwendeten Spezifikationen werden mehrere externe Schemata importiert. <wsdl:types> <xsd:schema version="1.0" xmlns="http://www.w3.org/2001/xmlschema" xmlns:xsd="http://www.w3.org/2001/xmlschema"> <xsd:import namespace="${1}" schemalocation="${1}/ws-trust.xsd" /> </xsd:schema> <xsd:schema version="1.0" xmlns="http://www.w3.org/2001/xmlschema" xmlns:xsd="http://www.w3.org/2001/xmlschema"> <xsd:import namespace="${2}" schemalocation="${2}/ws-policy.xsd" /> </xsd:schema> </wsdl:types> 106 107 108 109 110 111 112 113 114 115 116 117 wsdl:message Dieses Template definiert die zwischen Consumer und STS zu übertragenden Daten. Hier erfolgt die Verknüpfung der Schnittstellen-Funktionen mit den in den XML-Schemata des Providers und der WS-Trust-Spezifikation definierten Nachrichten bzw. Objekten. <wsdl:message name="requestsecuritytokenrequest"> <wsdl:part name="parameters" element="wst:requestsecuritytoken"/> </wsdl:message> <wsdl:message name="requestsecuritytokenresponse"> <wsdl:part name="parameters" element="wst:requestsecuritytokenresponse"/> </wsdl:message> Eine Exception Message wird nicht definiert, da das Fehlerhandling entsprechend Norm 260 über SOAPFaults realisiert ist. 118 119 120 wsdl:porttype Dieses Template definiert die Eingangs-, Ausgangs- und Fehlernachrichten, die im Rahmen der STS-Funktion verwendet werden. - Seite 6 von 10 -

121 122 123 124 125 126 127 128 129 <wsdl:porttype name="securitytokenserviceporttype"> <wsdl:operation name="requestsecuritytoken" parameterorder="parameters"> <wsdl:documentation>${3}</wsdl:documentation> <wsdl:input message="bipro:requestsecuritytokenrequest" name="requestsecuritytokenrequest"/> <wsdl:output message="bipro:requestsecuritytokenresponse" name="requestsecuritytokenresponse"/> </wsdl:operation> </wsdl:porttype> 130 Variable Wert ${3} Dokumentation der STS-Funktion. ACHTUNG: Diese fachliche Erläuterung wird möglicherweise innerhalb eines generischen Clients innerhalb der Benutzeroberfläche visualisiert. 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 Beispiel <wsdl:porttype name="securitytokenserviceporttype"> <wsdl:operation name="requestsecuritytoken" parameterorder="parameters"> <wsdl:documentation> Dieser Service gibt nach erfolgreicher Authentifizierung ein Security Token (Security Context Token) zurueck. Die Authentifizierung kann dabei entweder mit Benutzername und Passwort oder mit einem VDG-Ticket erfolgen. </wsdl:documentation> <wsdl:input message="bipro:requestsecuritytokenrequest" name="requestsecuritytokenrequest"/> <wsdl:output message="bipro:requestsecuritytokenresponse" name="requestsecuritytokenresponse"/> </wsdl:operation> </wsdl:porttype> 146 - Seite 7 von 10 -

147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 wsdl:binding Dieses Template bestimmt das konkrete Protokoll und die Art der Nachrichtenübertragung innerhalb der einzelnen Funktionen. <wsdl:binding name="securitytokenservicebinding" type="bipro:securitytokenserviceporttype"> <soapbind:binding style="document" transport="http://schemas.xmlsoap.org/soap/http"/> <wsp:policyreference URI="#${4}" /> <wsdl:operation name="requestsecuritytoken"> <soapbind:operation soapaction="urn:requestsecuritytoken" style="document"/> <wsdl:input name="requestsecuritytokenrequest"> <soapbind:body use="literal"/> </wsdl:input> <wsdl:output name="requestsecuritytokenresponse"> <soapbind:body use="literal"/> </wsdl:output> </wsdl:operation> </wsdl:binding> Variable Wert ${X4} Id der zugehörigen SecurityPolicy 167 168 169 170 171 172 173 174 175 176 177 wsdl:service Dieses Template fasst eine Reihe unterschiedlicher Kommunikationsschnittstellen (Service- Endpoints) in einem Service zusammen. Die Ports sind gewissermaßen Instanzen des PortTypes. <wsdl:service name="securitytokenservice"> <wsdl:documentation>${x5}</wsdl:documentation> <wsdl:port>${x6}</wsdl:port> <wsdl:port>${x6}</wsdl:port> <wsdl:port>...</wsdl:port> </wsdl:service> 178 - Seite 8 von 10 -

179 Variable Wert ${X5} Erläuterung der Aufgaben des STS; Fachliche Dokumentation. ACHTUNG: Diese Erläuterung wird möglicherweise von generischen Clients in einer Benutzeroberfläche visualisiert. ${X6} Template gemäß folgendem Abschnitt wsdl:port 180 181 182 183 184 185 186 187 wsdl:port Dieses Template beschreibt eine einzelne Kommunikationsschnittstelle (Service-Endpoint), die zum STS gehört. Jede solche Schnittstelle entspricht einem Authentifizierungsverfahren, das der Provider anbietet. <wsdl:port name="${6}" binding="bipro:securitytokenservicebinding"> <wsdl:documentation>${x7}</wsdl:documentation> <soapbind:address location="${x8}"/> </wsdl:port> 188 Variable Wert ${6} Eindeutige Kennzeichnung des Ports, z. B. UserPasswordLogin ${7} Erläuterung der Aufgabe der Kommunikationsschnittstelle; Fachliche Dokumentation. ACHTUNG: Diese Erläuterung wird möglicherweise von generischen Clients in einer Benutzeroberfläche visualisiert. ${X8} Internet-Adresse des Web Services, z. B. https://host/path/services/userpasswordlogin 189 190 191 192 193 194 Beispiel für ein vollständiges wsdl:service-element <wsdl:service name="securitytokenservice"> <wsdl:documentation> Dieser Service stellt Funktionen fuer die Authentifizierung mit Benutzername und Passwort oder mit einem VDG-Ticket zur Verfuegung. </wsdl:documentation> - Seite 9 von 10 -

195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 <wsdl:port name="userpasswordlogin"binding="bipro:securitytokenservicebinding"> <wsdl:documentation> Diese Funktion erledigt die Authentifizierung mit Benutzername und Passwort. </wsdl:documentation> <soapbind:address location="https://host/path/services/userpasswordlogin"/> </wsdl:port> <wsdl:port name="vdgticketlogin" binding="bipro:securitytokenservicebinding"> <wsdl:documentation> Diese Funktion erledigt die Authentifizierung mit einem VDG-Ticket. </wsdl:documentation> <wsp:policyreference URI="#VDGAuthPolicy"/> <soapbind:address location="https://host/path/services/vdgticketlogin"/> </wsdl:port> </wsdl:service> - Seite 10 von 10 -