1
Norm 410 – Security Token Service
2
Release und Version
3
Release 1, Version 1.0, vom 19. Juni 2007
4
Status
5
Offizielle Norm
6
Editor
7
Dr. Thomas Kippenberg, NÜRNBERGER
8
Autoren
9
Dr. Dieter Ackermann, VOLKSWOHL BUND (
[email protected])
10
Dr. Günther vom Hofe, Continentale (
[email protected])
11
Dr. Thomas Kippenberg, NÜRNBERGER (
[email protected])
12
Dr. Torsten Schmale, inubit AG (
[email protected])
13
Sören Chittka, VOLKSWOHL BUND, (
[email protected])
14
Carsten Baehr, VOLKSWOHL BUND, (
[email protected])
15
Gegenstand der Norm
16
Die vorliegende Norm 410 definiert die Schnittstelle zur Implementierung eines Security-
17
Token-Services (STS).
18
Voraussetzung
19
Norm 225 Release 1 Version 2
20
Norm 260 Release 1 Version 4
21
Norm 270 Release 1 Version 1
22
© Copyright BiPRO e.V. – Brancheninitiative Prozessoptimierung
- Seite 1 von 10 -
23
Hinweis zur Veröffentlichung
24
Die anliegend überreichte Norm ist urheberrechtlich für die BiPRO geschützt. Das Dokument
25
wird Ihnen im Rahmen Ihrer Mitgliedschaft bei der BiPRO und damit als Mitglied dieses
26
geschlossenen Empfängerkreises überlassen. Dementsprechend stellt die Überlassung an
27
Sie keine Erstveröffentlichung der Norm dar. Zur Erstveröffentlichung gegenüber Dritten bleibt
28
somit die BiPRO alleine berechtigt. Die Veröffentlichung erfolgt gemäß Norm100. Aufgrund
29
der besonderen Wertigkeit der Normen für die Mitglieder sind wir gehalten, Verstöße
30
gerichtlich zu ahnden.
31
© Copyright BiPRO e.V. – Brancheninitiative Prozessoptimierung
- Seite 2 von 10 -
32
Inhaltsverzeichnis
33
Norm 410 – Security Token Service .................................................................................................... 1
34
Inhaltsverzeichnis ................................................................................................................................. 3
35
Einführung.............................................................................................................................................. 4
36
Verwendete Standards ....................................................................................................................... 4
37
Abgrenzung ........................................................................................................................................ 4
38
Spezifikation .......................................................................................................................................... 5
39
Template Definition ............................................................................................................................ 5
40
WSDL-Template für einen Security-Token-Service (STS) ................................................................. 5
41
wsdl:definitions .............................................................................................................................. 5
42
wsp:Policies ................................................................................................................................... 6
43
wsdl:types ...................................................................................................................................... 6
44
wsdl:message................................................................................................................................ 6
45
wsdl:portType ................................................................................................................................ 6
46
wsdl:binding ................................................................................................................................... 8
47
wsdl:service ................................................................................................................................... 8
48
wsdl:port ........................................................................................................................................ 9
49
© Copyright BiPRO e.V. – Brancheninitiative Prozessoptimierung
- Seite 3 von 10 -
50
Einführung
51
Verwendete Standards
52
Grundlage des in dieser Norm spezifizierten Security-Token-Services (STS) sind die
53
folgenden OASIS Spezifikationen.
54
•
WS-Security (Version 1.1) Sicherheitsframework für WebServices
55
•
WS-Trust (Februar 2005) Definition von Security-Token-Services
56
•
WS-SecureConversation (Februar 2005) Abwicklung sicherer Sessions
57
•
WS-SecurityPolicies (Juli 2005) Definition der Sicherheitsanforderungen
58
WS-Trust definiert einen Security-Token-Service und WS-SecureConversation das Verfahren,
59
wie ein Sicherheitskontext-Token (Security Context Token) generiert und genutzt wird. Beide
60
Spezifikation sind sehr umfassend und sind explizit als Baustein-System entworfen.
61
Abgrenzung
62
Diese Norm enthält lediglich die detaillierte technische Spezifikation der Schnittstelle eines
63
STS im Sinne von BiPRO. Die Verfahren zur Einbindung des STS sind in Norm 260
64
beschrieben, die Erstellung von Sicherheitspolicies ist Teil der Norm 270.
65
© Copyright BiPRO e.V. – Brancheninitiative Prozessoptimierung
- Seite 4 von 10 -
66
Spezifikation
67
Template Definition
68
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
WSDL-Template für einen Security-Token-Service (STS)
70
Die verschiedenen Web-Service-Funktionen, mit denen die von einem Provider im BiPRO-
71
Umfeld angebotenen Authentifizierungsverfahren realisiert werden, MÜSSEN sich nur auf der
72
untersten Ebene der Schnittstellenbeschreibung unterscheiden, nämlich hinsichtlich der
73
Service-Endpoints. Sie lassen sich darum als Kommunikationsschnittstellen (↔ WSDL-Ports)
74
eines einzigen STS realisieren, dessen WSDL-Beschreibung über drei message-Elemente,
75
ein portType-Element, ein binding-Element und ein service-Element mit mehreren port-
76
Elementen verfügt. Im Folgenden wird ein Template für eine solche WSDL-Beschreibung
77
vorgestellt.
78
Jedes Authentifizierungsverfahren in einem eigenen STS zu realisieren ist im Sinne der
79
BiPRO-Normen eine gleichwertige Alternative. Die WSDL-Beschreibungen dieser Services
80
wären dann weitgehend identisch, da sie sich nur in den – jeweils einzigen – Port-Elementen
81
unterschieden.
82
Um eine BiPRO-Konformität sicher zu stellen, MUSS die Beschreibung der STS-Schnittstelle
83
unter Verwendung der allgemeinen Muster für WSDL Templates (siehe Norm 230) erfolgen.
84
wsdl:definitions
85
Dieses Template definiert den grundlegenden Aufbau der Schnittstellendatei und die rele-
86
vanten Namensräume (siehe Norm 230). © Copyright BiPRO e.V. – Brancheninitiative Prozessoptimierung
- Seite 5 von 10 -
87
wsp:Policies
88
Das Template zu diesem Abschnitt ist in Norm 270 definiert.
89
wsdl:types
90
Dieses Template definiert die Objekte und Datentypen, die vom Consumer an den STS oder
91
vom STS an den Consumer übertragen werden können.
92
Das Template zu diesem Abschnitt wird analog zur Norm 230 gebildet. Entsprechend der
93
verwendeten Spezifikationen werden mehrere externe Schemata importiert.
94 95 96 97 98 99 100 101 102 103 104 105
106
wsdl:message
107
Dieses Template definiert die zwischen Consumer und STS zu übertragenden Daten. Hier
108
erfolgt die Verknüpfung der Schnittstellen-Funktionen mit den in den XML-Schemata des
109
Providers und der WS-Trust-Spezifikation definierten Nachrichten bzw. Objekten.
110 111 112 113 114 115
116
Eine Exception Message wird nicht definiert, da das Fehlerhandling entsprechend Norm 260
117
über SOAPFaults realisiert ist.
118
wsdl:portType
119
Dieses Template definiert die Eingangs-, Ausgangs- und Fehlernachrichten, die im Rahmen
120
der STS-Funktion verwendet werden.
© Copyright BiPRO e.V. – Brancheninitiative Prozessoptimierung
- Seite 6 von 10 -
121 122 123 124 125 126 127 128 129
${3}
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
Beispiel
132 133 134 135 136 137 138 139 140 141 142 143 144 145
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.
146
© Copyright BiPRO e.V. – Brancheninitiative Prozessoptimierung
- Seite 7 von 10 -
147
wsdl:binding
148
Dieses Template bestimmt das konkrete Protokoll und die Art der Nachrichtenübertragung
149
innerhalb der einzelnen Funktionen.
150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166
Variable
Wert
${X4}
Id der zugehörigen SecurityPolicy
167 168
wsdl:service
169
Dieses Template fasst eine Reihe unterschiedlicher Kommunikationsschnittstellen (Service-
170
Endpoints) in einem Service zusammen. Die Ports sind gewissermaßen Instanzen des
171
PortTypes.
172 173 174 175 176 177
${X5} ${X6} ${X6} ...
178
© Copyright BiPRO e.V. – Brancheninitiative Prozessoptimierung
- 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
wsdl:port
181
Dieses Template beschreibt eine einzelne Kommunikationsschnittstelle (Service-Endpoint),
182
die zum STS gehört. Jede solche Schnittstelle entspricht einem Authentifizierungsverfahren,
183
das der Provider anbietet.
184 185 186 187
${X7}
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
Beispiel für ein vollständiges wsdl:service-Element
190 191 192 193 194
Dieser Service stellt Funktionen fuer die Authentifizierung mit Benutzername und Passwort oder mit einem VDG-Ticket zur Verfuegung.
© Copyright BiPRO e.V. – Brancheninitiative Prozessoptimierung
- Seite 9 von 10 -
195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211
Diese Funktion erledigt die Authentifizierung mit Benutzername und Passwort. Diese Funktion erledigt die Authentifizierung mit einem VDG-Ticket.
© Copyright BiPRO e.V. – Brancheninitiative Prozessoptimierung
- Seite 10 von 10 -