Oasis Security Services Use Cases And Requirements



Similar documents
SAML basics A technical introduction to the Security Assertion Markup Language

OIOSAML Rich Client to Browser Scenario Version 1.0

Introduction to SAML. Jason Rouault Section Architect Internet Security Solutions Lab Hewlett-Packard. An XML based Security Assertion Markup Language

SAML Federated Identity at OASIS

Implementation Guide SAP NetWeaver Identity Management Identity Provider

Security Assertion Markup Language (SAML) 2.0 Technical Overview

Glossary for the OASIS Security Assertion Markup Language (SAML) V2.0

A Federated Authorization and Authentication Infrastructure for Unified Single Sign On

E-Authentication Federation Adopted Schemes

Biometric Single Sign-on using SAML Architecture & Design Strategies

Security Assertion Markup Language (SAML) V2.0 Technical Overview

Greg Giles, Cisco Systems. Is compression a valid candidate for a standard?

Implementing Single Sign On in Java Technologybased

New Single Sign-on Options for IBM Lotus Notes & Domino IBM Corporation

SAML Security Option White Paper

Research and Implementation of Single Sign-On Mechanism for ASP Pattern *

OpenHRE Security Architecture. (DRAFT v0.5)

IVOA Single-Sign-On Profile: Authentication Mechanisms Version 2.0

Security Assertion Markup Language (SAML)

STUDY ON IMPROVING WEB SECURITY USING SAML TOKEN

Securing Web Services With SAML

Biometric Single Sign-on using SAML

Ameritas Single Sign-On (SSO) and Enterprise SAML Standard. Architectural Implementation, Patterns and Usage Guidelines

SAML 2.0 INT SSO Deployment Profile

Server based signature service. Overview

Software Design Document SAMLv2 IDP Proxying

SAML:The Cross-Domain SSO Use Case

Feide Integration Guide. Technical Requisites

An SAML Based SSO Architecture for Secure Data Exchange between User and OSS

SAML and OAUTH comparison

PARTNER INTEGRATION GUIDE. Edition 1.0

The increasing popularity of mobile devices is rapidly changing how and where we

This Working Paper provides an introduction to the web services security standards.

SAML-Based SSO Solution

Software Requirement Specification Web Services Security

SAML AS AN SSO STANDARD FOR CUSTOMER IDENTITY MANAGEMENT. How to Create a Frictionless, Secure Customer Identity Management Strategy

This chapter describes how to use the Junos Pulse Secure Access Service in a SAML single sign-on deployment. It includes the following sections:

Digital Signature Web Service Interface

Authentication and Authorization Systems in Cloud Environments

IAM Application Integration Guide

Security Assertion Markup Language (SAML) V2.0 Technical Overview

XML Signatures in an Enterprise Service Bus Environment

SAML Security Analysis. Huang Zheng Xiong Jiaxi Ren Sijun

CA Nimsoft Service Desk

Secure Identity Propagation Using WS- Trust, SAML2, and WS-Security 12 Apr 2011 IBM Impact

DocuSign Single Sign On Implementation Guide Published: March 17, 2016

[MS-SAMLPR]: Security Assertion Markup Language (SAML) Proxy Request Signing Protocol

Using SAML for Single Sign-On in the SOA Software Platform

Secure Identity in Cloud Computing

Identity Assurance Hub Service SAML 2.0 Profile v1.2a

Web Services Security: OpenSSO and Access Management for SOA. Sang Shin Java Technology Evangelist Sun Microsystems, Inc. javapassion.

Federations 101. An Introduction to Federated Identity Management. Peter Gietz, Martin Haase

Department of Industry and Science

SPML (Service Provisioning Markup Language) and the Importance of it within the Security Infrastructure Framework for ebusiness

IBM Tivoli Federated Identity Manager V6.2.2 Implementation. Version: Demo. Page <<1/10>>

Bindings for the OASIS Security Assertion Markup Language (SAML) V2.0

Trusting XBRL: Using the Liberty Web Services Framework to Secure and Authenticate XBRL Documents

Get Success in Passing Your Certification Exam at first attempt!

OpenSSO: Cross Domain Single Sign On

Single Sign On (SSO) Implementation Manual. For Connect 5 & MyConnect Sites

Federal Identity, Credential, and Access Management Security Assertion Markup Language (SAML) 2.0 Web Browser Single Sign-on (SSO) Profile

IBM WebSphere Application Server

Introduction to SAML

Agenda. How to configure

Ensuring the security of your mobile business intelligence

The Global Justice Reference Architecture (JRA) Web Services Service Interaction Profile

Title: A Client Middleware for Token-Based Unified Single Sign On to edugain

JVA-122. Secure Java Web Development

Profiles for the OASIS Security Assertion Markup Language (SAML) V2.0

Identity Federation Broker for Service Cloud

Digital Identity and Identity Management Technologies.

Intranet Website Solution Based on Microsoft SharePoint Server Foundation 2010

SAML-Based SSO Solution

Federated Identity Management Solutions

Web Based Single Sign-On and Access Control

Federal Identity, Credentialing, and Access Management Security Assertion Markup Language (SAML) 2.0 Web Browser Single Sign-on (SSO) Profile

The Challenges of Web single sign-on

Certification Final Report SAML 2.0 Interoperability Test First Quarter 2011 (1Q11) March 31, 2011

CA SOA Security Manager

Disclaimer. SAP 2008 / SAP TechEd 08 / SIM202 / Page 2

Flexible Identity Federation

Enabling SAML for Dynamic Identity Federation Management

Oracle Communications Cartridge Feature Specification for Broadsoft Broadworks Enterprise Services

DEPLOYMENT GUIDE. SAML 2.0 Single Sign-on (SSO) Deployment Guide with Ping Identity

OIO Web SSO Profile V2.0.5

Secure Semantic Web Service Using SAML

Integrating VMware Horizon Workspace and VMware Horizon View TECHNICAL WHITE PAPER

Identity Providers. Technical Reference. Interactive Intelligence Customer Interaction Center (CIC) Version Last updated November 5, 2015

Transcription:

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 Oasis Security Services Use Cases And Requirements Consensus Draft 1, 30 May 2001 Purpose This document describes the consensus of the Security Services Technical Committee as to the requirements and use cases for the Security Assertions Markup Language (SAML) to be created by the Oasis Security Services TC. This is a draft committee specification document and as such will continue to be maintained and updated to reflect the work and decisions of the TC throughout the process of designing SAML. Introduction This document provides the set of use cases and requirements for the Oasis Security Services Technical Committee's (TC's) ultimate product, SAML, an XML standard for exchanging authentication and authorization data between security systems. Notes on This Document Requirements are specified as a list of goals and non-goals for the project. Use cases in this document are illustrated with UML (Unified Modeling Language) diagrams. A link to the UML home page is provided below. UML diagrams are analysis and design tools, and each diagram format can support multiple levels of abstraction. In this document a balance has been struck between using a standard diagram format for requirements elaboration, and maintaining a high level of abstraction. The document uses UML-style use-case diagrams to illustrate high-level use cases. The following list is probably sufficient as a crash course in UML use-case diagrams: Stick figures represent actors or roles in a scenario. These can be human beings or software systems. draft-sstc-saml-reqs-01 1

33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 Ellipses represent use cases, i.e. actions or units of functionality in a system. Lines between actors and use cases indicate a participation of the actor in the use case. Note that no direction or payload of data flow is expressed by the lines between actors and use cases. Use-case diagrams capture high-level functionality of a system or interaction without providing excessive implementation detail. The document uses UML sequence diagrams to illustrate detailed use case scenarios. For quick reference, a sequence diagram works as follows: Boxes at the top of the diagram represent an actor in the scenario. Arrows with a solid head represent a message sent from one actor to another. The arrow points from sender to receiver. Arrows with a line head represent the return value of a message. The arrow points from the receiver of the earlier message to the sender. A dotted line ("swim lane") running down the diagram from a box indicates that arrows whose endpoints (tail or head) is on the line apply to that actor. Intersections between arrows and dotted lines are meaningless. Vertical layout represents time. Messages (arrows) farther down on the page happen after messages higher on the page. Horizontal layout has no formal meaning. Since rightpointing arrows look better, actors that initiate a scenario tend to appear leftward of actors they send messages to. Note that sequence diagrams are often used for more concrete design, and that actors and messages are often objects and object methods. They provide value for this document in that they give a clearly ordered message layout. The actors and messages in the sequence diagrams below are more properly roles in a scenario and actions associated with that scenario. Each use case scenario is also annotated with indicators showing what role the concrete actors (such as a Web user) play in the domain model, available here (draft-sstc-usedomain-05.pdf). draft-sstc-saml-reqs-01 2

73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 Readers will probably be interested in the accompanying glossary (draft-sstc-glossary-00.pdf) and issues list (draft-sstcsaml-issues-04.pdf) Requirements The requirements describe the scope of the SAML standard. Goals [R-AuthN] SAML should define a data format for authentication assertions, including descriptions of authentication events. This includes time of authentication event and authentication protocol. [R-AuthZ] SAML should define a data format for authorization attributes. Authorization attributes ("authz attributes") are attributes of a principal that are used to make authorization decisions, e.g. an identifier, group or role membership, or other user profile information. [R-AuthZDecision] SAML should define a data format for recording authorization decisions. [R-UserSession] The SAML specification shall include support for Login functionality. [R-UserSessionLogout] In creating the SAML specification, the technical committee will do the prep work to ensure that logout, timein, and timeout will not be precluded from working with SAML later. [R-Anonymity] SAML will allow assertions to be made about anonymous principals, where "anonymous" means that an assertion about a principal does not include an attribute uniquely identifying the principal (ex: user name, distinguished name, etc.). [R-Pseudonymity] SAML will allow assertions to be made about principals using pseudonyms for identifiers. [R-Message] SAML should define a message format and protocol for distributing SAML data. [R-PushMessage] SAML's messaging protocol should support "pushing" data assertions from an authoritative source to a receiver. [R-PullMessage] SAML's messaging protocol should support "pulling" data assertions from an authoritative source to a receiver. [R-Reference] SAML should define a data format for providing references to authentication and authorization assertions. draft-sstc-saml-reqs-01 3

114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 [R-Enveloped]SAML messages and assertions should be fit to be enveloped in conversation-specific XML documents. [R-Intermediaries]SAML data structures (assertions and messages) will be structured in a way that they can be passed from an asserting party through one or more intermediaries to a relying party. The validity of a message or assertion can be established without requiring a direct connection between asserting and relying party. [R-MultiDomain] SAML should enable communication between zones of security administration. [R-SingleDomain] SAML should enable communication within a single zone of security administration. [R-Signature] SAML assertions and messages should be authenticatable. [R-Open] SAML should not be dependent on any particular security or user database format. [R-XML] SAML should be defined in XML. [R-Extensible] SAML should be easily extensible. [R-BackwardCompatibleExtensions] Extension data in SAML will be clearly identified for all SAML processors, and will indicate whether the processor should continue if it does not support the extension. [R-Confidentiality] SAML data should be protected from observation by third parties or untrusted intermediaries. [R-Bindings] SAML should allow SAML messages to be transported by standard Internet protocols. SAML should define bindings of the message protocol to at least the following protocols: o standard commercial browsers o HTTP as a transport protocol o MIME as a packaging protocol o SOAP as a messaging protocol o ebxml as a messaging protocol [R-BindingConfidentiality] Bindings SHOULD (in the RFC sense) provide a means to protect SAML data from observation by third parties. Each protocol binding must include a description of how applications can make use of this protection. Examples: S/MIME for MIME, HTTP/S for HTTP. [R-OptionalSigningAndEncryption] The use of digital signatures and encryption to protect SAML assertions will be optional. Non-Goals draft-sstc-saml-reqs-01 4

159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 SAML will not propose any new cryptographic technologies or models for security; instead, the emphasis is on description and use of well-known security technologies utilizing a standard syntax (markup language) in the context of the Internet. Non-repudiation services and markup are outside the scope of SAML. SAML does not provide for negotiation between authorities about trust between domains and realms or the inclusion of optional data. Trust negotiations must be made out-of-band. SAML does not define a data format for expressing authorization policies. SAML does not need to specify a mechanism for additions, deletions or modifications to be made to assertions. SAML does not define a data format for encrypting assertions or messages independent of binding protocol. However, this non-goal will be revisited in a future version of the SAML spec after XML Encryption is published. Use Cases And Scenarios This section provides a set of high-level use cases for SAML and use case scenarios that illustrate the use case. They give a very abstract view of the intended use of the SAML format. Each use case has a short description, a use case diagram in UML format, and a list of the steps involved in the case. Note that, for each use case, the mechanics of how the actions are performed is not described. More detail provided in the detailed use case scenarios. Each of these high-level use cases has one or more specializations in the detailed use-case scenarios. Each scenario contains a short description of the scenario, a UML sequence diagram illustrating the action in the scenario, a description of each step, and a list of requirements that are related to the scenario. 195 draft-sstc-saml-reqs-01 5

195 196 197 198 Use Case 1: Single Sign-On In this use case, a Web user authenticates with a Web site. The Web user then uses a secured resource at another Web site, without directly authenticating to that Web site. 199 200 201 202 203 204 205 Fig 1. Single Sign-on. Steps: 1. Web user authenticates to the source Web site. 2. Web user uses a secured resource at the destination Web site. 206 draft-sstc-saml-reqs-01 6

206 207 208 209 210 211 212 213 214 Scenario 1-1: Single Sign-on, Pull Model This scenario is an elaboration of the Single Sign-on use case. In this model, the destination Web site pulls authentication information from the source Web site based on references or tokens provided by the Web user. In this scenario, the source Web site acts as a Credentials Collector, Authentication Authority, and Attribute Authority. The Web user is the Principal. The destination Web site acts as a Policy Decision Point and Policy Enforcement Point. 215 216 217 218 219 220 221 222 223 224 Fig 2. Single Sign-on, Pull Model. Steps: 1. Web user authenticates with source Web site. 2. Web user requests link to destination Web site. 3. Source Web site provides user with authentication reference (AKA "name assertion reference"), and redirects user to destination Web site. 4. Web user requests destination Web site resource, providing authentication reference. draft-sstc-saml-reqs-01 7

225 226 227 228 229 230 231 232 233 234 5. Destination Web site requests authentication document ("name assertion") from source Web site, passing authentication reference. 6. Source Web site returns authentication document. This document includes authn event description and authz attributions about the Web user. 7. Destination Web site provides resource to Web user. Associated requirements: [R-AuthN], [R-PullMessage], [R- MultiDomain], [R-Bindings] (standard commercial browsers), [R-Reference]. 235 draft-sstc-saml-reqs-01 8

235 236 237 238 239 240 241 242 Scenario 1-2: Single Sign-on, Push Model This scenario is a variation on the Single Sign-on use case. It's called the "push model" because the source Web site pushes authentication information to the destination Web site. In this scenario, the source Web site acts as a Credentials Collector, Authentication Authority, and Attribute Authority. The Web user is the Principal. The destination Web site acts as a Policy Decision Point and Policy Enforcement Point. 243 244 245 246 247 248 249 250 251 252 Fig 3. Single Sign-on, Push Model. Steps: 1. Web user authenticates with source Web site. 2. Web user requests link to destination Web site. 3. Source Web site sends requests for Web user to use destination resource from destination Web site, pushing the authentication information (authentication assertion) for the user to the destination site. This assertion includes authorization attributes. draft-sstc-saml-reqs-01 9

253 254 255 256 257 258 259 260 261 262 263 4. Destination Web site returns an authz decision reference to Source Web site, recording the decision to allow the user to access the resource. 5. Source Web site provides user with authz decision reference and redirects user to destination Web site. 6. User requests destination resource from destination Web site, providing authz decision reference. 7. Destination Web site provides resource to Web user. Associated requirements: [R-AuthN], [R-AuthZ], [R- AuthZDecision], [R-PullMessage], [R-MultiDomain], [R- Bindings] (standard commercial browsers), [R-Reference]. 264 draft-sstc-saml-reqs-01 10

264 265 266 267 268 269 270 271 272 273 274 275 276 277 Scenario 1-3: Single Sign-on, Third-Party Security Service In this single sign-on scenario, a third-party security service provides authentication assertions for the user. Multiple destination sites can use the same authentication assertions to authenticate the Web user. Note that the first interaction, between the security service and the first destination site, uses the pull model as described above. The second interaction uses the push model. Either of the interactions could use a different single sign-on model. In this scenario, the security service acts as a Credentials Collector, Authentication Authority, and Attribute Authority. The Web user is the Principal. The destination Web sites act as Policy Decision Point and Policy Enforcement Point. 278 279 280 281 Fig. 4. Single Sign-on, Third-Party Security Service draft-sstc-saml-reqs-01 11

282 283 284 285 286 287 288 289 290 291 292 293 294 295 296 297 298 299 300 301 302 303 304 305 306 307 308 309 310 Steps: 1. Web user authenticates with security service. 2. Security service returns SAML authentication reference to Web user. 3. Web user requests resource from first destination Web site, providing authentication reference. 4. First destination Web site requests authentication document from security service, passing the Web user's authentication reference. 5. Security service provides authentication document to first destination Web site, including authorization attributes and authn event description. 6. First destination Web site provides resource to Web user. 7. Web user requests link to second destination Web site from first destination Web site. 8. First destination Web site requests access authorization from second destination Web site, providing third-party security service authentication document for user. 9. Second destination Web site provides access authorization, returning an authz decision reference. 10.First destination Web site provides authz decision reference to Web user. 11.Web user requests resource from second destination Web site, providing authz decision reference. 12.Second destination Web site provides resource. Associated requirements: [R-AuthN], [R-AuthZDecision], [R- AuthZ], [R-PullMessage], [R-MultiDomain], [R-Bindings] (standard commercial browsers), [R-Reference]. 311 draft-sstc-saml-reqs-01 12

311 312 313 314 315 316 Use Case 2: Authorization Service In this use case, a user attempts to access a resource or service. The security controller for that resource -- a policy enforcement point or PEP -- checks the user's authorization to access the resource with a policy decision point or PDP. The PDP provides an authorization service to the PEP. 317 318 319 320 321 322 Fig 5. Authorization Service. Steps: 1. User accesses a resource controlled by PEP. 2. PEP checks permission for user to access resource with PDP. 323 draft-sstc-saml-reqs-01 13

323 324 325 326 327 328 329 330 331 332 Scenario 2-1: Application Chain This scenario illustrates using SAML within a security zone. A Web user requests a dynamic resource from a Web server. The Web server passes authentication information to an application so that the application can check the user's authorization to execute a method. In this scenario, the security service acts as a Credentials Collector, Authentication Authority, and Attribute Authority, as well as Policy Decision Point. The Web user is the Principal. The application acts as a Policy Enforcement Point. 333 334 335 336 337 338 339 340 341 342 343 344 345 346 347 348 Fig 6. Application Chain. Steps: 1. Web user authenticates with enterprise security system. Note that authentication may be through e.g. the Web server. 2. Enterprise security system provides an authentication reference to Web user. 3. Web user requests a dynamic resource from Web server, providing authentication reference. 4. Web server requests application function from application on behalf of Web user, providing Web user's authentication reference. 5. Application requests authentication document from enterprise security system, corresponding to Web user's authentication reference. draft-sstc-saml-reqs-01 14

349 350 351 352 353 354 355 356 6. Enterprise security system provides authentication document, including authorization attributes for the Web user, and authn event description. 7. Application performs application function for Web server. 8. Web server generates dynamic resource for Web user. Associated requirements: [R-AuthN], [R-PullMessage], [R- SingleDomain], [R-Bindings] (standard commercial browsers), [R-Reference]. 357 draft-sstc-saml-reqs-01 15

357 358 359 Use Case 3: Back Office Transaction In this use case, two agents, a buyer and a seller, attempt to execute a business transaction. 360 361 362 363 364 365 366 Fig 7. Back Office Transaction. 1. Buyer and seller authenticate that their partner in the transaction is the partner they expect to transact with. 2. Buyer and seller check permission of partner to execute transaction. 3. Buyer and seller execute the transaction. 367 draft-sstc-saml-reqs-01 16

367 368 369 370 371 372 373 374 375 376 377 378 Scenario 3-1: Back Office Transaction In this scenario, two parties, buyer and seller, wish to perform a transaction. Each authenticates to a security system responsible to their own security zone (buyer security system and seller security system, respectively). They exchange authentication data provided by their security systems to authenticate the transaction. In this scenario, the buyer and seller are principals. The buyer and seller security systems act as a Credentials Collector, Authentication Authority, and Attribute Authority, as well as Policy Decision Point. The Web user is the Principal. The buyer acts as a Policy Enforcement Point. 379 380 381 382 383 384 385 386 387 388 389 390 391 392 393 Fig 8. Back Office Transaction. Steps: 1. Buyer authenticates with buyer security system. 2. Buyer security system provides authentication document to buyer. 3. Seller authenticates with seller security system. 4. Seller security system provides authentication document to seller. 5. Buyer and seller execute transaction, providing authentication documents to each other. Authentication documents include authz attributes and authn event description. Associated requirements: [R-AuthN], [R-PushMessage], [R- AuthZ], [R-MultiDomain]. 394 draft-sstc-saml-reqs-01 17

394 395 396 397 398 399 400 401 402 403 404 Scenario 3-2: Back Office Transaction, Third-Party Security Service This scenario is similar to scenario 3-1. The same two parties, buyer and seller, wish to perform a transaction. In this case, however, each authenticates to a third-party security service responsible. The buyer and seller exchange authentication data provided by their security systems to authenticate the transaction. In this scenario, the buyer and seller are Principals. The thirdparty security service acts as a Credentials Collector, Authentication Authority, and Attribute Authority. 405 406 407 408 409 410 411 412 413 414 415 416 417 Fig 9. Back Office Transaction, Third Party Security Service. Steps: 1. Buyer authenticates with security service. 2. Security service provides authentication document to buyer. 3. Seller authenticates with security service. 4. Security service provides authentication document to seller. 5. Buyer and seller execute transaction, providing authentication documents to each other. Authentication documents include authz attributes and authn event description. draft-sstc-saml-reqs-01 18

418 419 Associated requirements: [R-AuthN], [R-AuthZ], [R- PushMessage]. 420 draft-sstc-saml-reqs-01 19

420 421 422 423 424 425 426 427 428 429 430 431 Scenario 3-3: Intermediary Add In this use case scenario, two parties -- a buyer and a seller -- perform a transaction using a B2B exchange as an intermediary. The intermediary adds AuthN and AuthZ data to orders as they go through the system, giving additional points for decisions made by the parties. In this scenario, the buyer and seller are Principals, and act as Policy Enforcement Point. The buyer and seller security security systems acts as Credentials Collector, Authentication Authority, and Attribute Authority, and Policy Decision Point. The exchange also acts as an Authentication Authority and Attribute Authority. draft-sstc-saml-reqs-01 20

432 433 434 435 436 437 438 439 440 Fig 10. Intermediary Add. Steps: Buyer authenticates to Buyer Security System. Buyer Security System provides a SAML AuthN assertion to Buyer, containing data about the authentication event and authorization attributes about the Buyer. Seller authenticates to Seller Security System. draft-sstc-saml-reqs-01 21

441 442 443 444 445 446 447 448 449 450 451 452 453 454 455 456 457 458 459 460 461 462 463 464 465 466 467 468 469 470 471 472 473 474 475 476 477 478 479 480 481 482 Seller Security System provides a SAML AuthN assertion to Seller, containing data about the authentication event and authorization attributes about the Seller. Buyer requests authorization from Buyer Security System to submit a given order. Buyer Security System provides a SAML AuthZ Decision assertion to Buyer, stating that Buyer is allowed to submit the order. Buyer submits order to B2B Exchange, providing AuthN assertion and AuthZ decision assertion. B2B exchange adds AuthN assertion data, specifying that the exchange authenticated the buyer (using the assertion). The exchange adds its own assertion, and does not modify the Buyer Security System assertion. B2B exchange adds AuthZ decision assertion data, stating that the Buyer is permitted to use the exchange to make this order. The exchange adds its own assertion, and does not modify the Buyer Security System assertion. B2B exchange submits order to Seller. Seller validates the order, using the assertions. Seller requests authorization from Seller Security System to fulfill a given order. Seller Security System provides a SAML AuthZ Decision assertion to Seller, stating that Seller is allowed to fulfill the order. Seller submits intention to fulfill the order to the B2B exchange, including AuthN assertions and AuthZ decision assertions. B2B exchange adds AuthN data, specifying that it used the original SAML AuthN assertion to authenticate the Seller. The exchange adds its own assertion, and does not modify the Seller Security System assertion. B2B exchange add AuthZ decision data, specifying that the seller is authorized to fulfill this order through the exchange. The exchange adds its own assertion, and does not modify the Seller Security System assertion. B2B exchange sends the order fulfillment to the Buyer. Buyer validates the order fulfillment based on AuthN assertion(s) and AuthZ decision assertion(s). Associated requirements: [R-AuthN], [R-AuthZ], [R- Intermediaries], [R-MultiDomain], [R-Enveloped]. 483 draft-sstc-saml-reqs-01 22

483 484 Use Case 4: User Session In this use case, two applications share a user session. 485 486 487 488 489 490 Fig 11. User Session. 1. Source application creates a session. 2. Source and/or destination application request the session. 3. Source and/or destination application delete the session. 491 draft-sstc-saml-reqs-01 23

491 492 493 494 495 496 497 498 499 Scenario 4-1: Single Sign-on, User Session In this single sign-on scenario, a Web user is logs into a Web site and thus instigates a user session. This session is maintained as the user navigates to other Web sites. In this scenario, the Web user is the Principal. The source Web site acts as Credentials Collector, Authentication Authority, and Attribute Authority, and a Session Authority. The destination Web site acts as a Policy Decision Point and Policy Enforcement Point. 500 501 502 503 504 505 506 507 508 509 510 511 512 513 Fig. 12. Single Sign-on, User Session Steps: 1. A user logs onto the source Web site. This results in the creation of a session on the source Web site. 2. User requests a link to a destination Web site. This link contains an authentication reference/token/ticket. 3. User requests resource represented by link on destination Web site, including reference. 4. Destination Web site requests validation of authentication reference from source Web site. 5. Source Web site returns success or failure, optionally additional session information. 6. Destination Web site returns Web site to user. 514 515 draft-sstc-saml-reqs-01 24

515 516 517 518 519 520 521 522 NOTE: The following 2 scenarios (represented by fig.13 and fig.14) are non-normative. Instead they represent functionality that is intended to be added to SAML at some point in the future. The reason for including it here is to begin to satisfy the goal R-UserSessionLogout which is to the technical committee will do the prep work to ensure that logout, timein, and timeout will not be precluded from working with SAML later. 523 524 525 526 527 528 529 530 531 532 533 Fig. 13. User Session Timeout Assume that the user has gone beyond the timeout limit on the source Web site. 1. The source Web site will query each participating Web site to determine if the user has been active on their Web site. 2. If the user has not been active on any of the destination Web sites within the timeout period, the destination Web sites are instructed to delete the session. draft-sstc-saml-reqs-01 25

534 535 536 537 538 539 540 541 542 543 544 545 546 547 548 549 550 551 552 553 554 555 556 557 Fig. 14. User Session Logout Logout 1. User logs out of the source Web site. 2. Each of the destination Web sites are instructed to delete the session. Associated requirements: [R-AuthN], [R-AuthZ], [R- PullMessage], [R-PushMessage], [R-MultiDomain], [R- Bindings] (standard commercial browsers), [R-Reference], [R- UserSession]. References This document is derived from the following sources: Security Services Markup Language v0.8a, Prateek Mishra et. al. AuthXML: A Specification for Authentication Information In XML v0.3, Evan Prodromou et. al. Other references that may be useful: Oasis Open Security Services Technical Committee, http://www.oasisopen.org/committees/security/index.shtml. Unified Modeling Language (UML), http://www.omg.org/uml/. XML-Encryption: http://www.w3.org/encryption/2001/. Document History draft-sstc-saml-reqs-01 26

558 559 560 561 562 563 564 565 566 567 568 569 570 571 572 573 574 575 576 577 578 579 580 581 582 583 584 585 586 587 588 589 590 591 592 593 594 595 596 597 598 599 600 601 602 603 25 Jan 2001 -- First draft derived from merge of S2ML and AuthXML specs. 9 Feb 2001 -- Second draft. o Incorporated comments from Use Case subcommittee of Oasis Security Services TC. o Added set of high-level use cases. o Changed diagrams of detailed use case scenarios to use sequence diagrams instead of use case diagrams. o Added description of each use-case scenario and list of requirements flowing from the scenario. o Added draft glossary (as link). o Added issues list (as link). o Gave requirements labelled names for easier reference. o Incorporated and merged requirements list from Core Assertions subcommittee of Oasis Security Services TC (by Philip Hallam-Baker). o Corrected various editorial mistakes. 26 Feb 2001 -- Third draft. o Changed placeholder "[OSSML]" to new, official "SAML". o Re-ordered scenarios so that each group of scenarios followed an associated use case. o Rephrased use case scenario 1-2 per Nigel Edwards. o Updated use case scenario 1-3 per UC-1-02:ThirdParty. o Added [R-Anonymity]. o Added [R-Pseudonymity]. o Noted exchange of authz attributes, per UC-1-08:AuthZAttrs. o Added [R-AuthZDecision] and noted exchange of authz decisions, per UC-1-09:AuthZDecisions. o Edited [R-AuthN] and noted exchange of authn event data, per UC-1-10:AuthNEvent. o Added user session use case, per UC-3-1. 10 Apr 2001 -- Fourth draft. o Changed placeholder "[OSSML]" to new, official "SAML" in diagrams. o Removed non-goal for challenge-response protocol based on TC motion. o Modified non-goal for policies based on TC motion. o Removed non-goal for protection from third parties based on TC motion. draft-sstc-saml-reqs-01 27

604 605 606 607 608 609 610 611 612 613 614 615 616 617 618 619 620 621 622 623 624 625 626 627 628 629 630 631 632 633 634 635 636 637 638 639 640 641 E 642 643 644 o Added new use case for user sessions per TC motion, and moved session scenario there. o Added [R-Logout] per [UC-3-03:Logout]. o Added [R-SessionTermination] per [UC-3-05:SessionTermination]. o Added [R-BackwardCompatibleExtensions] per [UC-10-06:BackwardCompatibleExtensions]. o Added [R-Confidentiality] per [UC-12-01:Confidentiality]. o Added [R-BindingConfidentiality] per [UC-12-03:BindingConfidentiality]. o Added non-goal for assertion and message encryption, per [UC-12-03:EncryptionMethod], and reference to XML-Encryption site. o Added [R-Enveloped] per [UC-7-02:Enveloped]. o Added [R-Intermediaries] per [UC-8-01:Intermediaries]. o Added [R-Intermediaries] per [UC-8-01:Intermediaries]. o Added Use Case Scenario 3-3 per [UC-8-02:IntermediaryAdd]. o Added non-goal for atomic assertions per [UC-8-05:AtomicAssertion]. 15 May 2001 -- Fifth draft. o Added [R-UserSessionLogout] and modified [R- UserSession] to reflect decisions of TC from second face to face meeting. o Added text to denote figures 13 and 14 as nonnormative to reflect a TC decision. o Changed the Purpose section to indicate that this is a consensus draft. o Added [R-OptionalSigningAndEncryption] per decision of 5/15/01 concall. 30 May 2001 -- Sixth draft. o Updated Purpose section to note that this is a working draft per 5/29 concall Editors and Contributors Editors Darren Platt, Securant Technologies Evan Prodromou, Securant Technologies draft-sstc-saml-reqs-01 28

645 646 647 648 649 650 651 652 653 654 655 656 657 658 659 660 661 662 663 Contributors Zahid Ahmed, Commerce One Carlisle Adams, Entrust Technologies Bob Blakely, Tivoli Nigel Edwards, Hewlitt Packard Kelly Emo, Jamcracker Marlena Erdos, IBM Jeff Hodges, Oblix MaryAnn Hondo, IBM Hal Lockhart, Entegrity Solutions Eve Maler, Sun Microsystems Prateek Mishra, Netegrity Bob Morgan, University of Washington Tim Moses, Verisign David Orchard, Jamcracker Gilbert Pilz, Jamcracker Irving Reid, Baltimore Technologies draft-sstc-saml-reqs-01 29