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 -