OASIS Specification Template s12

Total Page:16

File Type:pdf, Size:1020Kb

OASIS Specification Template s12

1

2Telecom SOA Requirements Version 1.0

3Committee Draft 01

416 February 2010

5 6Specification URIs: 7This Version: 8 http://docs.oasis-open.org/soa-tel/t-soa-req1.0/cd01/t-soa-req-01.html 9 http://docs.oasis-open.org/soa-tel/t-soa- req1.0/cd01/t-soa-req-01.pdf (Authoritative) 10 http://docs.oasis-open.org/soa-tel/t-soa- req1.0/cd01/t-soa-req-01.doc 11Previous Version: 12 N/A 13Latest Version: 14 http://docs.oasis-open.org/soa-tel/t-soa-req1.0/cd01/t-soa-req-01.html 15 http://docs.oasis-open.org/soa-tel/t-soa- req1.0/cd01/t-soa-req-01.pdf (Authoritative) 16 http://docs.oasis-open.org/soa-tel/t-soa- req1.0/cd01/t-soa-req-01.doc 17Technical Committee: 18OASIS SOA for Telecom (SOA-Tel) TC 19 20Chair(s): 21 Mike Giordano, [email protected], Chair 22Editor(s): 23 Enrico Ronco, [email protected] 24Related work: 25 This specification replaces or supersedes: 26  Not Applicable 27 This specification is related to: 28  OASIS Telecom Use Cases and Issues Version 1.0 29Declared XML Namespace(s): 30 Not Applicable 31Abstract: 32 This document is the second deliverable produced within the OASIS SOA-TEL TC and has the 33 objective of collecting requirements related to technical issues and gaps of SOA standards 34 (specified by OASIS and other SDOs) utilized within the context of Telecoms. Such technical 35 issues are documented in SOA-TEL’s TC first deliverable “Telecom Use Cases and Issues, 36 v.1.0”. 37 For each of the issues within the “Telecom Use Cases and Issues, v.1.0”, specific requirements 38 are provided within this document. Where possible, non prescriptive solution proposals to the 39 identified issues and requirements are also described, in order to possibly assist those Technical 40 Committees (within OASIS and other SDOs) responsible for the development and maintenance of 41 the SOA related standards.

1t-soa-req-cd-01 16 February 2010 2Copyright © OASIS® 2009. All Rights Reserved. Page 1 of 47 42 43 44Status: 45 This document was last revised or approved by the OASIS SOA for Telecom (SOA-Tel) TC on 46 the above date. The level of approval is also listed above. Check the “Latest Version” or “Latest 47 Approved Version” location noted above for possible later revisions of this document. 48 Technical Committee members should send comments on this specification to the Technical 49 Committee’s email list. Others should send comments to the Technical Committee by using the 50 “Send A Comment” button on the Technical Committee’s web page at http://www.oasis- 51 open.org/committees/ soa-tel/. 52 For information on whether any patents have been disclosed that may be essential to 53 implementing this specification, and any offers of patent licensing terms, please refer to the 54 Intellectual Property Rights section of the Technical Committee web page (http://www.oasis- 55 open.org/committees soa-tel/ipr.php. 56 The non-normative errata page for this specification is located at http://www.oasis- 57 open.org/committees/ soa-tel/.

4t-soa-req-cd-01 16 February 2010 5Copyright © OASIS® 2009. All Rights Reserved. Page 2 of 47 58Notices

59Copyright © OASIS® 2009. All Rights Reserved. 60All capitalized terms in the following text have the meanings assigned to them in the OASIS Intellectual 61Property Rights Policy (the "OASIS IPR Policy"). The full Policy may be found at the OASIS website. 62This document and translations of it may be copied and furnished to others, and derivative works that 63comment on or otherwise explain it or assist in its implementation may be prepared, copied, published, 64and distributed, in whole or in part, without restriction of any kind, provided that the above copyright notice 65and this section are included on all such copies and derivative works. However, this document itself may 66not be modified in any way, including by removing the copyright notice or references to OASIS, except as 67needed for the purpose of developing any document or deliverable produced by an OASIS Technical 68Committee (in which case the rules applicable to copyrights, as set forth in the OASIS IPR Policy, must 69be followed) or as required to translate it into languages other than English. 70The limited permissions granted above are perpetual and will not be revoked by OASIS or its successors 71or assigns. 72This document and the information contained herein is provided on an "AS IS" basis and OASIS 73DISCLAIMS ALL WARRANTIES, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO ANY 74WARRANTY THAT THE USE OF THE INFORMATION HEREIN WILL NOT INFRINGE ANY 75OWNERSHIP RIGHTS OR ANY IMPLIED WARRANTIES OF MERCHANTABILITY OR FITNESS FOR A 76PARTICULAR PURPOSE. 77OASIS requests that any OASIS Party or any other party that believes it has patent claims that would 78necessarily be infringed by implementations of this OASIS Committee Specification or OASIS Standard, 79to notify OASIS TC Administrator and provide an indication of its willingness to grant patent licenses to 80such patent claims in a manner consistent with the IPR Mode of the OASIS Technical Committee that 81produced this specification. 82OASIS invites any party to contact the OASIS TC Administrator if it is aware of a claim of ownership of 83any patent claims that would necessarily be infringed by implementations of this specification by a patent 84holder that is not willing to provide a license to such patent claims in a manner consistent with the IPR 85Mode of the OASIS Technical Committee that produced this specification. OASIS may include such 86claims on its website, but disclaims any obligation to do so. 87OASIS takes no position regarding the validity or scope of any intellectual property or other rights that 88might be claimed to pertain to the implementation or use of the technology described in this document or 89the extent to which any license under such rights might or might not be available; neither does it represent 90that it has made any effort to identify any such rights. Information on OASIS' procedures with respect to 91rights in any document or deliverable produced by an OASIS Technical Committee can be found on the 92OASIS website. Copies of claims of rights made available for publication and any assurances of licenses 93to be made available, or the result of an attempt made to obtain a general license or permission for the 94use of such proprietary rights by implementers or users of this OASIS Committee Specification or OASIS 95Standard, can be obtained from the OASIS TC Administrator. OASIS makes no representation that any 96information or list of intellectual property rights will at any time be complete, or that any claims in such list 97are, in fact, Essential Claims. 98The names "OASIS", “SOA-TEL” are trademarks of OASIS, the owner and developer of this specification, 99and should be used only to refer to the organization and its official outputs. OASIS welcomes reference 100to, and implementation and use of, specifications, while reserving the right to enforce its marks against 101misleading uses. Please see http://www.oasis-open.org/who/trademark.php for above guidance. 102

7t-soa-req-cd-01 16 February 2010 8Copyright © OASIS® 2009. All Rights Reserved. Page 3 of 47 103Table of Contents

1041 Introduction...... 7 105 1.1 Terminology...... 7 106 1.2 Normative References...... 8 1072 Requirements on Intermediaries Handling...... 9 108 2.1 Requirements on Transaction Endpoints Specification...... 9 109 2.1.1 Identification of Use Case Text...... 9 110 2.1.2 Requirement(s)...... 9 111 2.1.3 Description...... 9 112 2.1.4 Solution proposals...... 10 113 2.2 Requirements on WS-Notification...... 13 114 2.2.1 Identification of Use Case Text...... 13 115 2.2.2 Requirement(s)...... 13 116 2.2.3 Description...... 13 117 2.2.4 Solution proposals...... 14 118 2.3 Requirements on SOAP...... 21 119 2.3.1 Identification of Use Case Text...... 21 120 2.3.2 Requirement(s)...... 21 121 2.3.3 Description...... 21 122 2.3.4 Solution proposals...... 21 1233 Requirements on Security...... 24 124 3.1 Requirements on Security Token Correlation...... 24 125 3.1.1 Identification of Use Case Text...... 24 126 3.1.2 Requirement(s)...... 24 127 3.1.3 Description...... 24 128 3.1.4 Solution proposals...... 25 129 3.2 SAML Name Identifier Request...... 27 130 3.2.1 Identification of Use Case Text...... 27 131 3.2.2 Requirement(s)...... 27 132 3.2.3 Description...... 28 133 3.2.4 Solution proposal...... 29 134 3.3 SAML Attribute Management Request...... 31 135 3.3.1 Identification of Use Case Text...... 31 136 3.3.2 Requirement(s)...... 31 137 3.3.3 Description...... 31 138 3.3.4 Solution proposal...... 32 139 3.4 User ID Forwarding...... 35 140 3.4.1 Scenario/context...... 35 141 3.4.2 Identification of Use Case Text...... 35 142 3.4.3 Requirement(s)...... 35 143 3.4.4 Description...... 35 144 3.4.5 Solution proposals...... 36 1454 Requirements on Management...... 38

10t-soa-req-cd-01 16 February 2010 11Copyright © OASIS® 2009. All Rights Reserved. Page 4 of 47 146 4.1 Cardinality of a Service Interface...... 38 147 4.1.1 Identification of Use Case Text...... 38 148 4.1.2 Requirement(s)...... 38 149 4.1.3 Description...... 39 150 4.1.4 Solution proposals...... 39 151 4.2 Requirements on Metadata...... 39 152 4.2.1 Identification of Use Case Text...... 39 153 4.2.2 Requirement(s)...... 40 154 4.2.3 Description...... 40 155 4.2.4 Solution proposals...... 40 1565 Requirements on SOA collective standards usage...... 42 157 5.1 Common Patterns for Interoperable Service Based Communications...... 42 158 5.1.1 Identification of Use Case Text...... 42 159 5.1.2 Requirement(s)...... 42 160 5.1.3 Description...... 42 1616 Conformance...... 43 162Appendix A. Acknowledgements...... 44 163Appendix B. SOA-TEL Requirements...... 45 164 165

13t-soa-req-cd-01 16 February 2010 14Copyright © OASIS® 2009. All Rights Reserved. Page 5 of 47 166Table of Figures

167 168Figure 1: Example for SOAP nodes interaction (1)...... 11 169Figure 2: Example for SOAP nodes interaction (2)...... 12 170Figure 3: Example for SOAP nodes interaction (3)...... 13 171Figure 4: SAML Name Identifier request-response use case: pictorial representation...... 28 172Figure 5: SAML Attribute Management request-response use case: pictorial representation...... 32 173Figure 6: TM Forum SDF Reference Model...... 39 174

16t-soa-req-cd-01 16 February 2010 17Copyright © OASIS® 2009. All Rights Reserved. Page 6 of 47 1751 Introduction 176 177Part of the work being undertaken by the OASIS SOA-TEL TC is to understand how SOA-related 178specifications and standards are used within the scope of the telecommunications environment and 179determine if there are any issues when used in this manner. 180This is the second deliverable of the SOA-TEL TC, and its objective is to collect requirements to address 181technical issues and gaps of SOA standards (specified by OASIS and other SDOs) utilized within the 182context of Telecoms. Such issues are documented in SOA-TEL’s TC first deliverable “Telecom Use 183Cases and Issues, v.1.0”. 184For each of the issues within such document, specific requirements are provided. Where possible, non 185prescriptive solution proposals to the identified issues and requirements are also described, in order to 186possibly assist those Technical Committees (within OASIS and other SDOs) responsible for the 187development and maintenance of the SOA related standards. 188 189For each of the issues identified within “Telecom Use Cases and Issues, v.1.0”, a section composed of 190 “References”, 191 “Requirement”, 192 “Description”, 193 and “Proposed solution” 194is included in this Requirements document. 195In order to facilitate future activities, each requirement is identified by means of a reference, with the 196syntax [SOA-TEL Req. x.y]. 197 198The document is organized in the following sections: 199 Section 2, Issues on “Intermediaries Handling”; 200 Section 3, Issues on “Security”; 201 Section 4, Issues on “Management”; 202 Section 5, Issues on “SOA collective standards usage”. 203Moreover, Appendix B, SOA-TEL Requirements, groups all exposed requirements within one single view. 204 205The next steps related to this activity will be taken within the OASIS Telecom Member Section. Most 206likely, issues and related requirements will be grouped according to categories, and sent and presented to 207the TCs or Working Groups considered as “owners” of the affected specifications, in order to verify if such 208groups will want to analyze them and provide their solution. Other alternatives may also be evaluated on 209a case by case approach. Nevertheless the solution of identified issues and the addressing of the 210requirements hereafter listed is not to be considered as part of SOA-TEL’s TC Charter. 211

2121.1 Terminology 213The key words “MUST”, “MUST NOT”, “REQUIRED”, “SHALL”, “SHALL NOT”, “SHOULD”, “SHOULD 214NOT”, “RECOMMENDED”, “MAY”, and “OPTIONAL” in this document are to be interpreted as described 215in [RFC2119]. 216

19t-soa-req-cd-01 16 February 2010 20Copyright © OASIS® 2009. All Rights Reserved. Page 7 of 47 2171.2 Normative References 218 [RFC2119] S. Bradner, Key words for use in RFCs to Indicate Requirement Levels, 219 http://www.ietf.org/rfc/rfc2119.txt, IETF RFC 2119, March 1997. 220 221 [WSDL 1.1] W3C Note (15 March 2001): "Web Services Description Language (WSDL) 222 1.1". http://www.w3.org/TR/2001/NOTE-wsdl-20010315. 223 224 [SOAP 1.2] W3C SOAP v.1.2, available at http://www.w3.org/TR/soap12-part1/ 225 226 [SOA-TEL 1.0] OASIS Committee Draft 01 / Public Review 01 “Telecom SOA Use Cases 227 and Issues”, Version 1.0, October 2009, http://docs.oasis-open.org/soa-tel/t- 228 soa-uci/v1.0/cs01-pr01/t-soa-uc-cs-01.html

229 230 [WS-N 1.3] OASIS Standard - Web Services Base Notification 1.3 (WS- 231 BaseNotification), version 1.3, 1 October 2006, http://docs.oasis- 232 open.org/wsn/wsn-ws_base_notification-1.3-spec-os.htm. 233 234 [WS-A 1.0] W3C Web Services Addressing 1.0 – Core W3C Recommendation 9 May 235 2006, http://www.w3.org/TR/2006/REC-ws-addr-core-20060509. 236 237 [WS-S 1.1] OASIS Standard - Web Services Security specification, version1.1, 1 238 February 2006, http://www.oasis-open.org/specs/index.php#wssv1.0, ref. 239 WS-Security. 240 241 [WSDM-MOWS] OASIS Standard - Web Services Distributed Management: Management of 242 Web Services (WSDM-MOWS) 1.1, 1 August 2006, http://docs.oasis- 243 open.org/wsdm/wsdm-mows-1.1-spec-os-01.htm 244 245 [SOA RM 1.0] OASIS Standard - OASIS Reference Model for Service Oriented Architecture 246 1.0, Oct. 12, 2006, http://docs.oasis-open.org/soa-rm/v1.0/soa-rm.pdf 247 248 [SCA Assembly 1.1] OASIS Published Committee Draft - Service Component Architecture 249 Assembly Model Specification Version 1.1, Mar. 09, http://docs.oasis- 250 open.org/opencsa/sca-assembly/sca-assembly-1.1-spec.pdf 251 252 [SOA RA 1.0] OASIS Published Committee Draft - Reference Architecture for Service 253 Oriented Architecture 1.0, Public Review Draft 1, Apr. 2008, 254 http://docs.oasis-open.org/soa-rm/soa-ra/v1.0/soa-ra-pr-01.pdf 255 256 [WSDL 2.0] W3C Web Services Description Language (WSDL) Version 2.0 Part 0: 257 Primer, http://www.w3.org/TR/2007/REC-wsdl20-primer- 258 20070626/Recommendation, June 2007 259 260 [SAML 2.0] OASIS Standard - Assertions and Protocol for the OASIS Security Assertion 261 Markup Language (SAML) V2.0, March. 2005, http://www.oasis- 262 open.org/specs/index.php#saml 263

22t-soa-req-cd-01 16 February 2010 23Copyright © OASIS® 2009. All Rights Reserved. Page 8 of 47 2642 Requirements on Intermediaries Handling 265 266This section gathers a collection of requirements related to the same typology of issue. Some existing 267specifications upon which Service Oriented Architectures are currently based on and implemented (such 268as W3C’s WS-Addressing, W3C’s SOAP, OASIS’s WS-Notification) do not consider the presence of 269intermediaries in the specified message exchange patterns (in the transactions between the actors that 270implement the services), or they don’t consider the possible situations in which such intermediaries can 271be involved. 272For this reason, intermediaries handling within SOA implementations is currently achieved via 273workarounds or proprietary solutions. 274 275OASIS SOA-TEL TC considers that addressing the specific requirements provided in this section may be 276the first step for a more general revision of the SOA specifications in order to extend their coverage to 277include the management of intermediaries. 278

2792.1 Requirements on Transaction Endpoints Specification

2802.1.1 Identification of Use Case Text 281Refer to rows 189 – 192 of [SOA-TEL 1.0], in which the technical issue is documented. 282At the moment, a standard way to specify in a message (involved in a process/transaction) the endpoint 283to which the final result of a “process/transaction" should be sent, does not exist.

2842.1.2 Requirement(s)

285 [SOA-TEL Req. 1] 286The WS Addressing specifications, [WS-A 1.0], must include additional fields (in addition to the ones 287already present) containing remote destinations to which reply messages must be sent. 288 The sender of a message must assign the fields when it wants to specify the destination for the reply 289 message, but the node that has to use such destination information (i.e. the node that has to send the 290 reply message) may not necessarily be the direct receiver of the request message. 291 The receiver of a message, which needs of information on the endpoint destination to which send a 292 reply message, can obtain the information by these additional fields. 293 The receiver of a message has to forward to the next receiver all the additional destinations (present 294 in these additional fields) that it does not use.

2952.1.3 Description 296The [WS-A 1.0] must include additional information to indicate nodes to which messages replies should 297be sent (in addition to the one already present). 298Specific endpoints should be inserted when the message is part of a transaction involving more 299participants. Such endpoints must be forwarded, through the chain of invocations, to those nodes that will 300need to use these endpoints. 301The generic node that starts a transaction should be able to specify endpoints for the nodes following in 302the transaction, in addition to the (already available) “reply_to” endpoint for the message’s direct receiver.

25t-soa-req-cd-01 16 February 2010 26Copyright © OASIS® 2009. All Rights Reserved. Page 9 of 47 303In complex scenarios involving more than 3 nodes, the generic node N that receives a message may not 304be conscious of the specific transaction of which it is part of, or of other participant nodes, but could 305obtain the endpoint to which it must send a reply message by fetching such new proposed endpoint 306element. 307Moreover, the current “reply to” element within the WS-A specification could not be utilized for this 308objective because even the direct sender to node N may not be aware of the final destination for the 309message.

3102.1.4 Solution proposals 311The following text is provided in order to illustrate some possible ways to address the Requirement. They 312are suggestions and are by no means to be considered as mandatory, as other possible options could be 313identified which are not represented hereafter. 314 315To the best knowledge within OASIS SOA-TEL TC, the requirements presented hereafter could be 316addressed by the W3C Web Services Addressing (WS-A) WG, which by the way is in status “Completed”. 317 318The WS-Addressing v1.0 specification [WS-A 1.0] defines the following elements: 319 320 wsa:To>xs:anyURI ? 321 wsa:EndpointReferenceType ? 322 wsa:EndpointReferenceType ? 323 wsa:EndpointReferenceType ? 324 xs:anyURI 325 xs:anyURI ? 326 xs:anyURI * 327 xs:any* ? 328 329Another element could be added to contain a “remote” endpoint reference, named for example 330 331 wsa:EndpointReferenceType *. 332 333It should be possible to add more RemoteReplyTo elements, in a LIFO (Last In First Out) criteria. 334 335The generic receiver can use the last inserted endpoint and delete the element. 336 337The following example is provided. 338 339Suppose that node_1 calls node_2. 340node_1 states that the endpoint for the response is node_n, but it doesn’t know which node will be 341sending the final response to node_n at the end of the transaction, so it inserts the information (node_n 342endpoint) in the RemoteReply element, not in ReplyTo one. Figure 1 illustrates the example. 343

28t-soa-req-cd-01 16 February 2010 29Copyright © OASIS® 2009. All Rights Reserved. Page 10 of 47 344

Node_1 Node_2

Node_n N._n-1

345 346 Figure 1: Example for SOAP nodes interaction (1) 347 348The following is an example of the resulting message (in red color the proposed addition to the WS-A 349specification). 350 352351 http://host_a/node_2 http://host_b/node_n ... ...

353 354 355Suppose now that node_i in the transaction, calling node_i+1, starts a nested transaction (with node_j as 356final destination) in the main transaction. Also in this case, node_i does not know which will produce the 357response for the node_j, so it adds a RemoteReply element, to the message. Figure 2 illustrates the 358example. 359

31t-soa-req-cd-01 16 February 2010 32Copyright © OASIS® 2009. All Rights Reserved. Page 11 of 47 360

Node_1 Node_2 Node_i N._i+1

Node_n Node_j

361 Figure 2: Example for SOAP nodes interaction (2) 362 363The resulting message should be the following. 365364 http://host_c/node_i+1 http://host_d/node_j http://host_b/node_n ... ...

366 367Suppose now that node_j-1 ends the nested transaction. 368node_j-1 needs a reply destination, so it fetches the endpoint by the first RemoteReplyTo element, 369obtaining the information “http:// host_d/node_j”; it then deletes the element in the header and replies to 370node_j. 371node_n-1, last node of the main transaction, should perform in the same way with the remaining 372RemoteReplyTo element. Figure 3 illustrates the example. 373

34t-soa-req-cd-01 16 February 2010 35Copyright © OASIS® 2009. All Rights Reserved. Page 12 of 47 374

Node_1 Node_2 Node_i N._i+1

Node_n N._n-1 Node_j N._j-1

375 Figure 3: Example for SOAP nodes interaction (3) 376

3772.2 Requirements on WS-Notification

3782.2.1 Identification of Use Case Text 379Refer to rows 270 – 272 of the SOA-TEL “Telecom Use Cases and Issues” document, in which the 380technical issue is documented. 381If adopting the WS-Notification specification, in presence of intermediaries, there is no formal way for the 382Provider to specify the endpoint to which the final notification should be sent.

3832.2.2 Requirement(s)

384 [SOA-TEL Req. 2] 385The WS-Notification specification must provide a mechanism to describe and regulate a scenario in which 386one or more intermediaries are present; it must standardize the terminology, concepts, operations, WSDL 387and XML needed to express the roles of the intermediaries (involved in publish and subscribe Web 388services for notification message exchange). 389According to the WS-Notification terminology, the standard must be extended and modified so that: 390 a Subscriber can require a Subscription to a NotificationProducer also in the case they do not 391 communicate directly but do so by means of one or more intermediaries; 392 likewise a NotificationProducer can send a Notification to a NotificationConsumer also in the case that 393 they do not communicate directly, but by means of one or more intermediaries.

3942.2.3 Description 395The WS-Notification specification must provide a well specified mechanism whereby a Subscriber can 396interact (by means of “subscribe”, “unsubscribe” and the other provided operations) with a 397NotificationProducer also in presence of one or more intermediaries between itself and the 398NotificationProducer. 399Moreover the WS-Notification specification must provide a well specified mechanism by which a 400NotificationProducer can send notifications to a given NotificationConsumer also via one or more 401intermediaries. 402 403In the new context, the Subscriber must be able to send a subscription message (different from the ones 404allowed by the current specification) to an intermediary; the intermediary must be able to request the 405subscription to the NotificationProducer or to send the request to the next intermediary. As a 406consequence an intermediary can receive a subscription request from another intermediary. 407Moreover the new subscription response message must be managed and forwarded by intermediaries in 408a similar way. 37t-soa-req-cd-01 16 February 2010 38Copyright © OASIS® 2009. All Rights Reserved. Page 13 of 47 409 410Conversely, the NotificationProducer must able to send a notification addressed to a 411NotificationConsumer to an intermediary, and this intermediary must be able to forward the notification to 412the NotificationConsumer or to the next intermediary. In consequence of that an intermediary can receive 413a notification from another intermediary. 414 415This requirement is closely connected to the requirement over WS-Addressing, described in Section 2.1 416of this document (Requirements on Transaction Endpoints Specification) for two reasons: 417 the two requirements introduce and regulate ”intermediaries management” in the WS-Addressing and 418 WS-Notification specifications 419 WS-Notification specification characterizes and identifies the actors (such as Subscriber and 420 NotificationProducer) by means of the WS-Addressing standard.

4212.2.4 Solution proposals 422The following text is provided in order to illustrate some possible ways to address the requirement. They 423are suggestions and are by no means to be considered as mandatory, as other possible options could be 424identified which are not represented hereafter. 425To the best knowledge within OASIS SOA-TEL TC, the requirements presented hereafter could be 426addressed by the OASIS WS-Notification Technical Committee (WSN TC), which by the way is in status 427“Completed”, or possibly, by the W3C Web Services Addressing (WS-A) WG, which by the way is as well 428in status “Completed”. 429Another Working Group potentially interested to receive this requirement is W3C Resource Access since 430the topic dealt by the specifications (WS-Transfer, WS-ResourceTransfer, WS-Enumeration, WS- 431MetadataExchange and WS-Eventing Member Submissions) for which this group is responsible may 432potentially solve the present issues with WS-N specification. 433 434There are several approaches to solve the requirement: the solution to adopt depends on the chosen 435perspective, on the use cases that are to be covered, and on the scope to assign to the new specification. 436Two different lines of solution, not antithetical, but complementary, are provided below. In the first 437proposal the intermediary plays an active part in the notification services, while the second proposal is 438more general, and is based on the fact that WS-Notification is supported by WS-Addressing. 439 440First proposal (intermediary plays an active part in the notification services) 441The WS-Notification specification should define a new role in addition to the ones already defined 442(NotificationConsumer, NotificationProducer, SubscriptionManager, Subscriber). 443The new role could be named, for example, “Intermediary”, and its description could be: 444 an entity acting on behalf of a Subscriber; it receives a subscription request and asks for the 445 subscription to the NotificationConsumer specified in the request, or forwards the request the next 446 Intermediary; 447 an entity acting on behalf of a NotificationProducer; it receives a notification and sends it to the 448 NotificationConsumer specified in the notification message, or forwards the request to the next 449 Intermediary. 450To be noted that an Intermediary node could contemporarily have both behaviours: acting on behalf of a 451Subscriber to request a subscription to a NotificationProducer, and acting on behalf of a Notification 452Producer to send a notification message to a Subscriber. 453 454The protocol should be extended in such as way to define a new message exchange pattern in which 455even the Intermediary behaviour is comprised.

40t-soa-req-cd-01 16 February 2010 41Copyright © OASIS® 2009. All Rights Reserved. Page 14 of 47 456 457The syntax of the subscription request and that of the notification should be extended so that it becomes 458possible to specify, in the new messages, one or more intermediary destinations and the final destination. 459 460For example, for the subscription operation, if the Subscriber knows the NotificationProvider location, it 461can make a subscription request in which it inserts an endpoint reference element for the 462NotificationProvider, and then sends the message to the Intermediary; the Intermediary consumes (reads 463and deletes) the reference and so it is able to send a subscribe request to the NotificationProvider. 464In the subscription request, the endpoint reference of the Intermediary to which notifications should be 465sent, could be also included. 466The subscribe message could be as the following: 467

43t-soa-req-cd-01 16 February 2010 44Copyright © OASIS® 2009. All Rights Reserved. Page 15 of 47 468 http://docs.oasis-open.org/wsn/bw-2/Intermediary/SubscribeRequest ... http://www.example.org/NotificationConsumer http://www.example.org/NotificationProducer http://www.example.org/Intermediary npex:SomeTopic boolean(ncex:Producer="15") 2005-12-25T00:00:00.00000Z

469 470 471The Intermediary receives the above message and makes a subscription request to the notification 472consumer with the following message:

46t-soa-req-cd-01 16 February 2010 47Copyright © OASIS® 2009. All Rights Reserved. Page 16 of 47 474473 http://docs.oasis-open.org/wsn/bw- 2/NotificationProducer/SubscribeRequest ... http://www.example.org/NotificationConsumer http://www.example.org/Intermediary npex:SomeTopic boolean(ncex:Producer="15") 2005-12-25T00:00:00.00000Z 475 476The notification message could be the similar to these defined with the current specification, but sent by 477the NotificationProducer to the Intermediary rather than directly to the NotificationConsumer, as showed 478in the next figure; in this message the final destination should be present.

49t-soa-req-cd-01 16 February 2010 50Copyright © OASIS® 2009. All Rights Reserved. Page 17 of 47 479 http://docs.oasis-open.org/wsn/bw-2/Intermediary/Notify ... http://www.example.org/SubscriptionManager npex:SomeTopic http://www.example.org/NotificationConsumer http://www.example.org/NotificationProducer exampleNotifyContent

480 481Second proposal (more general proposal, is based on the fact that WS-Notification is supported by WS- 482Addressing) 483The WS-Addressing specification should be extended so that it expresses the concept of “final 484destination” of the message, by adding a new element, named for example , in addition to 485those already present. 486

52t-soa-req-cd-01 16 February 2010 53Copyright © OASIS® 2009. All Rights Reserved. Page 18 of 47 487In this way the subscriber could specify both the NotificationProducer and the NotificationConsumer as 488final destinations in the subscription message. 490489 http://docs.oasis-open.org/wsn/bw- 2/NotificationProducer/SubscribeRequest http://www.example.org/NotificationProducer ... http://www.example.org/NotificationConsumer npex:SomeTopic boolean(ncex:Producer="15") 2005-12-25T00:00:00.00000Z

491 492The intermediary can send the message to the NotificationProducer without the necessity to make any 493interpretation of the message. 494

55t-soa-req-cd-01 16 February 2010 56Copyright © OASIS® 2009. All Rights Reserved. Page 19 of 47 495As a consequence, the NotificationProducer knows the endpoints of the NotificationConsumer and of the 496intermediary to which reply to; so it can send a notification to the intermediary, specifying the 497NotificationConsumer as final destination. 499498 http://docs.oasis-open.org/wsn/bw-2/NotificationConsumer/Notify http://www.example.org/NotificationConsumer ... http://www.example.org/SubscriptionManager npex:SomeTopic http://www.example.org/NotificationProducer exampleNotifyContent

500

58t-soa-req-cd-01 16 February 2010 59Copyright © OASIS® 2009. All Rights Reserved. Page 20 of 47 5012.3 Requirements on SOAP

5022.3.1 Identification of Use Case Text 503Extract from [SOA-TEL 1.0] (rows 405 to 414): 504------505The perceived technical gap suggested is that the SOAP specification should be modified in order to 506enable a SOAP Intermediary node to “forward” the SOAP Header in automatic mode (thus without the 507Header reinsertion) even if such node performs some processing operation over the body of the SOAP 508message. 509Another way of expressing this perceived gap is to state that currently only 3 roles are allowed for a 510SOAP Node (i.e. initial SOAP Sender, SOAP intermediary, SOAP ultimate receiver – section 2.1 of the 511SOAP 1.2 specification), while a probable fourth role enabling the simultaneous body processing and 512header forwarding of a specific SOAP message may be needed. 513------

5142.3.2 Requirement(s)

515 [SOA-TEL Req. 3] 516A new “Message Sender and Receiver concept” must be added in [SOAP 1.2] to model SOAP nodes 517which must forward the SOAP headers message, but also need to perform changes on the body of the 518message. 519A new SOAP protocol must be added to manage the behavior of such nodes.

5202.3.3 Description 521As documented in the SOA-TEL TC “Use Cases and Issues” document, some SOAP nodes can’t be 522classified as “Ultimate SOAP Receivers” because they aren’t the real providers of the service, but can’t be 523simple “SOAP Intermediaries”, because they need to perform changes on the body of the message: such 524nodes aren’t requestors or receivers, they need to process the SOAP header blocks, perform some 525changes on the body, and forward the message to the following node. 526 527Hereafter a proposal definition of the new “SOAP functional intermediary” (the name is provisional and 528could be different) concept is provided: 529 SOAP functional intermediary 530 - A SOAP functional intermediary is both a SOAP receiver and a SOAP sender and is targetable from 531 within a SOAP message. It processes the SOAP header blocks targeted at it and acts to forward a 532 SOAP message towards an ultimate SOAP receiver. Moreover a SOAP Functional Intermediary 533 can process the contents of the SOAP body. 534 535This new concept and its functionalities of both processing the body of a message and of forwarding 536headers as a usual “SOAP intermediary” are to be included in the SOAP specification.

5372.3.4 Solution proposals 538The following text is provided in order to illustrate some possible ways to address the Requirement. They 539are suggestions and are by no means to be considered as mandatory, as other possible options could be 540identified which are not represented hereafter. 541

61t-soa-req-cd-01 16 February 2010 62Copyright © OASIS® 2009. All Rights Reserved. Page 21 of 47 542To the best knowledge within OASIS SOA-TEL TC, the requirements presented hereafter could be 543addressed by the W3C “XML Protocol” Working Group, which produced the SOAP specification. Currently 544such group is in status “Completed”. For such reason, should the requirement be accepted, some 545preliminary investigations with W3C representatives are suggested to identify if within this SDO there are 546some WGs willing to consider and solve the issue. 547Some modifications to [SOAP 1.2] are needed (but other parts of the specification may need to be revised 548and changed): 549 Include the new concept definition in Section 1.5.3; 550 Modify paragraphs 2.2 and 2.7 of [SOAP 1.2]. In particular, 2 cases are suggested. 551 552Case 1 553The SOAP functional intermediary typology is covered by the role “next”. In this case the SOAP 554intermediary and SOAP functional intermediary act in a very similar way. 555In this case Table 2 in section 2.2 should be modified as follows, while no changes should be required for 556table 3 at section 2.7.1. 557

Table 2: SOAP Roles defined by this specification

Short-name Name Description Each SOAP intermediary, SOAP "http://www.w3.org/2003/05/soap- functional intermediary, and the next envelope/role/next" ultimate SOAP receiver MUST act in this role. "http://www.w3.org/2003/05/soap- SOAP nodes MUST NOT act in none envelope/role/none" this role.

"http://www.w3.org/2003/05/soap- The ultimate receiver MUST act in ultimateReceiver envelope/role/ultimateReceiver" this role.

558 559Case 2 560The SOAP functional intermediary typology is covered by the role “ultimateReceiver”. In this case 561Table 2 should be modified as follows: 562

Table 2: SOAP Roles defined by this specification

Short-name Name Description Each SOAP intermediary, and the "http://www.w3.org/2003/05/soap- next ultimate SOAP receiver MUST act envelope/role/next" in this role. "http://www.w3.org/2003/05/soap- SOAP nodes MUST NOT act in none envelope/role/none" this role. The ultimate receiver and SOAP "http://www.w3.org/2003/05/soap- ultimateReceiver functional intermediary, MUST act envelope/role/ultimateReceiver" in this role. 563

64t-soa-req-cd-01 16 February 2010 65Copyright © OASIS® 2009. All Rights Reserved. Page 22 of 47 564Moreover, table 3 in section 2.7.1 should be modified as follows: 565 Table 3: SOAP Nodes Forwarding behavior Role Header block Short-name Assumed Understood & Processed Forwarded Yes No, unless reinserted next Yes No No, unless relay ="true" Yes No, unless reinserted Yes user-defined No No, unless relay ="true" No n/a Yes Yes No, unless reinserted ultimateReceiver Yes No No, unless relay ="true" none No n/a Yes 566

67t-soa-req-cd-01 16 February 2010 68Copyright © OASIS® 2009. All Rights Reserved. Page 23 of 47 5673 Requirements on Security 568

5693.1 Requirements on Security Token Correlation

5703.1.1 Identification of Use Case Text 571Refer to rows 493 – 507 of [SOA-TEL 1.0], in which the technical issue is documented. 572Currently it is not possible to correlate a security token with another one, previously created.

5733.1.2 Requirement(s)

574 [SOA-TEL Req. 4] 575The WS Security specifications must enable to express a relation between two security tokens, a “main” 576token (e.g. named “token2”) and a “related” token (e.g. named “token1”). 577The characteristics of the relation are that, when the token correlation is used, 578 the “main” token can not be built without being in possession of the “related” token, 579 the WS-Sec header should not be considered valid if the “related” token is not present. 580This token correlation requirement defines a new token security model, in which a “main” token is 581syntactically and semantically meaningful if it is built and presented in relation with another “related” 582token.

583 [SOA-TEL Req. 4.1] 584It must be possible to express “token correlation” also into the SAML assertion.

5853.1.3 Description 586This token correlation requirement extends the message security models and enforces the security 587mechanism in environments where the message exchange pattern is more complex than the simple 588“requestor – provider” pattern. 589This model should be useful when the definition and the use of a “simple” token doesn’t guarantee a 590sufficient level of security, since the authorization to access a specific service also depends on the fact 591that a previous token was released. 592 593The possible “status” of the “related” token could be valid or expired (i.e. not valid anymore). 594In the new token typology to be introduced, the “related” token is not a simple “attribute”, inserted only for 595traceability purposes into the header, but instead is an integral part of the token. 596The identity provider should release the security token directly made up of two parts: the “main” and the 597“related” tokens.

5983.1.4 Solution proposals 599The following text is provided in order to illustrate some possible ways to address the Requirement. They 600are suggestions and are by no means to be considered as mandatory, as other possible options could be 601identified which are not represented hereafter.

70t-soa-req-cd-01 16 February 2010 71Copyright © OASIS® 2009. All Rights Reserved. Page 24 of 47 602[WS-S 1.1] defines three types of security tokens and how they are attached to messages (“user name 603token”, “binary security token” and “XML token”), and furthermore the syntax provides 2 elements to 604include tokens in the security header: 605 606 . 607 608A new element should be added, named for example to the previous ones. 609The could contain (in a recursive manner) a username token, or a binary 610token, or a XML token element, or again a related token, for the “main” token. 611The same should be for the “related” token. 612 613This could be the syntax of the element: 614 615 616 617 ……… 618 619 620 ……… 621 622 623 624This is an example of associated token: 626625 ... < /wsse:MainToken> FHUIORv...

627 628The element could have other significant elements (other than the related token 629value) useful to the definition of the context in which the main token was built; for example it could include

73t-soa-req-cd-01 16 February 2010 74Copyright © OASIS® 2009. All Rights Reserved. Page 25 of 47 630the timestamp value present in the security header from which the related token derive. Examples of 631other significant elements may also be (but not limited to) the ones currently defined within the three 632above mentioned security tokens types. 633 634In other worlds if the related security token belonged to the following header: 635 636 637 638 639 640 2001-09-13T08:42:00Z 641 642 643 647 MIIEZzCCA9CgAwIBAgIQEmtJZc0rqrKh5i... 648 649 650The AssociatedToken in the new header should be the following: 652651 ... 2001-09-13T08:42:00Z

6623.2 SAML Name Identifier Request

6633.2.1 Identification of Use Case Text 664Section 5.2.2 in [SOA-TEL 1.0] describes a use case for the proposed SAML Name Identifier Request- 665Response protocol. 666A user device, a Service Provider (SP) and an Identity Provider (IdP) are the actors of this use case. The 667SP is new to the circle of trust of the IdP. The IdP does not know a name identifier of the user device. The 668IdP requests a name identifier from the SP, who sends the desired name identifier to the IdP.

6693.2.2 Requirement(s)

670 [SOA-TEL Req. 5] 671In order to make the [SAML 2.0] support name identifier use cases such as that described in section 6723.2.1, the Security Services TC must specify a 673 message sent from an Identity Provider to a Service Provider to request a 674 name identifier for a User, and a 675 message sent from the Service Provider to the Identity Provider to return 676 such a name identifier to the Identity Provider. 677This requires extensions to the existing [SAML 2.0] core specification (saml-core-2.0-os) including the 678SAML 2.0 protocol schema. No modification of the existing SAML 2.0 assertion schema is necessary. 679Description provides a high-level message flow illustrating the proposed SAML Name Identifier request- 680respone protocol. Messages 4 and 6 belong to the proposed SAML Name Identifier Request protocol. 681These messages are interlaced into the SAML Authentication Request and Response exchange between 682SP and IdP and are not specified in SAML V2.0 yet (therefore, marked in red): 683

79t-soa-req-cd-01 16 February 2010 80Copyright © OASIS® 2009. All Rights Reserved. Page 27 of 47 User SP IdP Device

1. Service Access Request 2. Authentication Request

3. Check for Identifier

4. Name Identifier Request

5. Prompt User to login 6. Name Identifier Response

7. Authentication Response 8. Provide Requested Service

684 685 686 Figure 4: SAML Name Identifier request-response use case: pictorial representation 687 688The single steps of this use case are as follows: 689 6901) The user requests access to a service offered by a SP. The user device does not include any 691 authentication credentials. 6922) Since access to this service requires the User to be authenticated but the request in step 1 does not 693 include any authentication credentials, the SP sends an Authentication Request to the IdP. This 694 Authentication Request may be passed to the IdP via the user device using redirection. 6953) The IdP checks the Authentication Request received in step 2, and - as the SP is new to the IdP’s 696 circle of trust - the IdP determines that it does not have an identifier stored in its database for the User 697 for the given SP. 6984) This step is not defined in SAML V2.0: Since the IdP has realized in step 3 that it does not have an 699 identifier for the combination of the User and the SP, the IdP generates a message called Name 700 Identifier Request and sends it to the SP. 7015) Upon receipt of the Name Identifier Request, the SP recognises that the IdP does not have an 702 identifier for the combination of SP and User. Therefore, the SP prompts the User to log in to the SP. 7036) This step is also not defined in SAML V2.0: The SP sends a message called Name Identifier 704 Response to the IdP. This response message includes the identifier for the combination of User and 705 SP that the IdP is to use in any further communication and authentication processes. 7067) On receipt of the Name Identifier Response, the IdP stores the identifier contained in the Name 707 Identifier Response in its database. The IdP sends an Authentication Response to the SP, which 708 uses the identifier received in step 6. 7098) The SP grants the User access to the requested service. 710 711In step 3 of the message exchange illustrating a SAML Name Identifier use case above, conventionally, 712the IdP would respond to the Authentication Request (step 2) by issuing an error message or a randomly 713generated identifier. This, however, is problematic: In the former case, the service access request in step 7141 breaks down. In the latter case, the SP has to ask the user for his credentials and then send (usually via 82t-soa-req-cd-01 16 February 2010 83Copyright © OASIS® 2009. All Rights Reserved. Page 28 of 47 715a backchannel) a message to the IdP indicating that from now on the IdP should use the “real identifier” 716instead of the random one for the given user (this could be done via the NameIdentifier Management 717Protocol). 718These issues can be resolved on SAML protocol level by defining and 719 messages enabling the Identity Provider to request from a Service Provider a 720name identifier for a User and the Service Provider to send such a name identifier back to the Identity 721Provider.

7223.2.3 Solution proposal 723Extension of the SAML 2.0 protocol schema by and 724 messages, instances of which are exemplified as follows: 725 726Name Identifier Request: 727 728 734 736 http://idm.nsn.com 737 738 739 740Name Identifier Response: 741 742 748 749 753 756 C=US, O=NCSA-TEST, OU=User, [email protected] 757 758 759 762 tom.smith 763 764 765 766 767 775 776 Tom 777 778 779 780 788 789 [email protected] 790 791 792 793 794 795 798 799 800 801

88t-soa-req-cd-01 16 February 2010 89Copyright © OASIS® 2009. All Rights Reserved. Page 30 of 47 8023.3 SAML Attribute Management Request

8033.3.1 Identification of Use Case Text 804Section 5.3.2 in [SOA-TEL 1.0] describes a use case for the proposed SAML Attribute Management 805Request-Response protocol. 806A user wishes to use his attribute information across multiple service providers. Such attribute information 807can be layout, preferred email address, etc. Today, these attributes are stored locally at each service 808provider. Thus, the user will have to enter and change the same attributes multiple times in order to 809ensure they are consistent for each of the different service providers the user has an account with, 810resulting in a bad user experience. 811The user creates a temporary or transient account. The service provider allows the user to set specific 812settings like coloring, text size, etc. But he/she does not want to set these setting again each time the 813user logs in because the service provider will not be able to link the attributes for a user’s temporary 814account with the user’s permanent account. This is because by the very nature of a temporary or transient 815account the next time the user logs on to the service provider the user will have a different user name and 816so the service provider will not be able to link the attributes for a user’s temporary account with the user’s 817permanent account.

8183.3.2 Requirement(s)

819 [SOA-TEL Req. 6] 820In order to make the [SAML 2.0] support attribute management use cases such as that described in 3.3.1, 821the Security Services TC must specify a 822 message sent from a Service Provider to an Identity Provider to request 823 a modification or the storage of an attribute, and a 824 message sent from the Identity Provider to the Service Provider to 825 return to the Service Provider the result of processing the received 826 message. 827This requires extensions to the existing SAML 2.0 core specification (saml-core-2.0-os) including the 828SAML 2.0 protocol schema. No modification of the existing SAML 2.0 assertion schema is necessary. 829

8303.3.3 Description 831Figure 5 provides a high-level message flow outlining the proposed SAML Attribute Management 832protocol:

91t-soa-req-cd-01 16 February 2010 92Copyright © OASIS® 2009. All Rights Reserved. Page 31 of 47

User Service Identity Device Provider Provider

1. Request to change attribute

2. ManageAttribute Request

3. Store Attribute

4. ManageAttribute Response

5. Verify

6. Confirmation

833 834 Figure 5: SAML Attribute Management request-response use case: pictorial representation 835 836The Manage Attribute Request and Response messages are marked in red since the SAML 2.0 does not 837support such messages yet. The ManageAttribute Request allows the Service Provider to manage 838attributes stored on the Identity Provider side.

8393.3.4 Solution proposal 840Extension of the SAML 2.0 protocol schema by and 841 messages, instances of which are exemplified as follows: 842 843Manage Attribute Request: 844 845 851 854 C=US, O=NCSA-TEST, OU=User, [email protected] 855 856 857 94t-soa-req-cd-01 16 February 2010 95Copyright © OASIS® 2009. All Rights Reserved. Page 32 of 47 858 861 C=US, O=NCSA-TEST, OU=User, [email protected] 862 863 864 865 872 874 John 875 876 877 884 886 [email protected] 887 888 889 890 891 892 893Manage Attribute Response: 894 895

97t-soa-req-cd-01 16 February 2010 98Copyright © OASIS® 2009. All Rights Reserved. Page 33 of 47 900 IssueInstant="2006-07-17T20:31:40Z"> 901 905 908 http://idm.nsn.com 909 910 911 914 C=US, O=NCSA-TEST, OU=User, [email protected] 915 916 917 918 926 928 John 929 930 931 939 941 [email protected]

100t-soa-req-cd-01 16 February 2010 101Copyright © OASIS® 2009. All Rights Reserved. Page 34 of 47 942 943 944 945 946 948 951 952 953

9543.4 User ID Forwarding

9553.4.1 Scenario/context

9563.4.2 Identification of Use Case Text 957Refer to rows 771 – 793 of [SOA-TEL 1.0], in which the technical issue is documented. 958Currently a standard way does not exist to add two (or more) credentials in one message.

9593.4.3 Requirement(s)

960 [SOA-TEL Req. 7] 961The WS Security specifications must enable to bring two security credentials in the security header: the 962“main” credential (e.g. named “credential2”) and a “secondary” credential (e.g. named “credential1”). 963The authentication and authorization process should be performed on the basis of the main credential; 964the secondary credential should be used to complete the security functionalities.

965 [SOA-TEL Req. 7.1] 966It must be possible to express “token correlation” also into the SAML assertion. 967

9683.4.4 Description 969The user-id forwarding requirement extends the message security models and enforces the security 970mechanism in environments where a second security credential is necessary to add functionalities to the 971basic security process. 972This model should be useful when the process of authentication and authorization on the base of the 973credential provided in the security header is not enough, and other security functionalities have to be 974executed on a second credential, for example to complete the authorization process or to profile the data.

9753.4.5 Solution proposals 976The following text is provided in order to illustrate some possible ways to address the Requirement. They 977are suggestions and are by no means to be considered as mandatory, as other possible options could be 978identified which are not represented hereafter.

103t-soa-req-cd-01 16 February 2010 104Copyright © OASIS® 2009. All Rights Reserved. Page 35 of 47 979 980To the best knowledge within OASIS SOA-TEL TC, the requirements presented hereafter could be 981addressed by the OASIS Web Services Security (WSS) TC, which by the way is in status “Completed”, 982and possibly by the OASIS Security Services (SAML) TC. 983 984Hereafter some suggestions are proposed. 985The WS-Sec v1.1 specification defines the following elements: 986 /wsse:Security; 987 /wsse:Security/@S11:actor; 988 /wsse:Security/@S12:role; 989 /wsse:Security/@S11:mustUnderstand; 990 /wsse:Security/{any}; 991 /wsse:Security/@{any}; 992 993Another element should be added, named for example: 994/wsse:SecondaryCredential. This element should contain a security token, in particular one of the tokens 995provided by the current WS Security specification. 996 997This is an example of header with a secondary credential, when the main credential is represented by a 998binary token, and the secondary by a user name and password token: 999

1000 1001 1002 1003In a similar way the SAML protocol could be extended to support the requirement. 1004In this case the “secondary credential” element could be added into the SAML syntax. In this way the 1005related token could be included directly in the SAML assertion which constitutes the main token, without 1006the necessity of express the relation to the WS security header level. 1007 1008As an alternative path, the following hypothesis can be considered. This requirement (User-id forwarding 1009requirement) is “intrinsically” similar to the “Security token correlation” requirement, presented elsewhere

106t-soa-req-cd-01 16 February 2010 107Copyright © OASIS® 2009. All Rights Reserved. Page 36 of 47 1010in the present document. Thus a common approach in modifying the WS-Security specifications could be 1011adopted to address both the requirements and, more in general, similar security issues.

109t-soa-req-cd-01 16 February 2010 110Copyright © OASIS® 2009. All Rights Reserved. Page 37 of 47 10124 Requirements on Management

10134.1 Cardinality of a Service Interface

10144.1.1 Identification of Use Case Text 1015Extract from the [SOA-TEL 1.0] (rows 864 to 870 and rows 882 to 886): 1016------1017 [SOA-RM 1.0]: (Section 3.1) “A service is accessed by means of a service interface (see Section 1018 3.3.1.4), where the interface comprises the specifics of how to access the underlying capabilities.” 1019 [SOA-RM 1.0]: (Subsection 3.3.1.4) “The service interface is the means for interacting with a service.” 1020 [SCA Assembly 1.1]: “A Service represents an addressable interface of the implementation.” 1021 Note – SCA definition for Service may be a consequence of the SOA-RM definition, we do not know 1022------1023------1024 [SOA-RA 1.0] (3137 – 3140) “In fact, managing a service has quite a few similarities to using a 1025 service: suggesting that we can use the service oriented model to manage SOA-based systems as 1026 well as provide them. A management service would be distinguished from a non-management service 1027 more by the nature of the capabilities involved (i.e., capabilities that relate to managing services) than 1028 by any intrinsic difference. “ 1029------

10304.1.2 Requirement(s)

1031 [SOA-TEL Req. 8] 1032The SOA Reference Model and Architecture must explain how a service separates and exposes its 1033manageability capabilities to allow other services to manage it. 1034The Service Delivery Framework specified by TM Forum and depicted below sets such requirement at the 1035SDF Service Management Interface (indicated in red in ). 1036

112t-soa-req-cd-01 16 February 2010 113Copyright © OASIS® 2009. All Rights Reserved. Page 38 of 47 1037 1038 1039 Figure 6: TM Forum SDF Reference Model

10404.1.3 Description 1041As documented in the SOA-TEL TC “Use Cases and Issues”, interfaces are the ways to interact with and 1042between services and interfaces are the way to expose capabilities. At the same time, TM Forum SDF 1043requires that SDF Services expose both Functional and Management capabilities and recommends this 1044exposure to be made at separate interfaces attached to the SDF Service.

10454.1.4 Solution proposals 1046OASIS SCA Assembly Model specification v1.1 offers a solution to the multiple interfaces problem as well 1047as to “marking” an interface as being a management interface. 1048Updates to this specification (Committee Draft 03 rev 1.1 June 2009) offer also support for dynamic wiring 1049of “service references” with “services” at run time through “autowire”, policy sets and SCA runtime re- 1050evaluation of targets. 1051These proposals will be tested through TM Forum’s use case analysis and the results will be sent back to 1052OASIS SCA Assembly team for further discussion. 1053 1054Observations: 10551. SCA Assembly Model covers only design, deployment and runtime as manageable capabilities (or 1056 management operations) for software bundles that constitute SDF Services. Other aspects of service 1057 lifecycle management such as quality, charging are not part of OASIS charter and will be further 1058 investigated by TM Forum in collaboration with other industry organizations. 10592. SCA Assembly Model is not yet mapped to the OASIS SOA RA/RM.

10604.2 Requirements on Metadata

10614.2.1 Identification of Use Case Text 1062Extract from [SOA-TEL 1.0] (rows 924 to 928): 1063------1064Specialization in supporting and managing a service during its whole lifecycle requires finer granularity 1065knowledge about that service: properties, supported actions or operations, possible states as well as 1066contracts that may govern interactions with the service (including pre and post conditions for these 1067interactions), what is the “architectural” style for service “composability”, what are its dependencies or 1068what is the level of exposure for its functional capabilities. 115t-soa-req-cd-01 16 February 2010 116Copyright © OASIS® 2009. All Rights Reserved. Page 39 of 47 1069The proposed model for the TMF SDF Service is complemented by additional data representation 1070(metadata) in support of SDF Service lifecycle management (ref. Section 6.4 – [SOA-TEL 1.0]). This new 1071data representation containing information about the service in various phases of its lifecycle, aims at 1072covering current gaps in the information available for the purpose of service management (e.g. what is 1073already covered by the SOA Service description) in the overall context of Service Provider’s business and 1074operations. Moreover, this metadata is dynamic: it may change from one phase to another of the SDF 1075Service lifecycle. 1076 1077The SDF Service Lifecycle Metadata consists at least of: 10781. Additional information about the SMI of a SDF Service (properties, actions); 10792. Management Dependencies of the SDF Service, including cross-domains dependencies; 10803. Management State of the SDF Service. 1081------

10824.2.2 Requirement(s)

1083 [SOA-TEL Req. 9] 1084A standardization body (most probable TM Forum) must normalize the meta-data of Service Management 1085to address the needs of managing any service from a lifecycle perspective. The meta-data should evolve 1086into a meta-model that can be automatically instantiated into current and future management models 1087which are domain (network or IT), technology (enterprise Java, IP network) or lifecycle phase (service 1088creation, deployment, operation, etc).

10894.2.3 Description 1090As documented in the SOA-TEL TC “Use Cases and Issues”, paragraph 6.4, managing a service through 1091its entire lifecycle requires finer granularity information (about the service, its execution environment, its 1092dependencies, etc) than it is available today through management applications and tools. Moreover, this 1093information, even when it is available (and most of it already exists) it comes in “bits and pieces”, usually 1094uncorrelated, from many places (tools, interfaces, environments) following diverse data models (SID, 1095CIM, etc). 1096TM Forum SDF initiative believes that completing and unifying service management information through a 1097well defined meta-data that describes and evolves with the lifecycle of each service instance is key to 1098solving the issue of rapid service creation and launch. 1099The real problem to address is management across domains; the existence of different standards for 1100metadata is an obstacle to the achievement of such objective.

11014.2.4 Solution proposals 1102TM Forum SDF initiative started to define elements of service lifecycle management meta-data and show 1103how they can be used in a service oriented management framework such as SDF (see fig 23 in OASIS 1104UC document). 1105Nevertheless, TM Forum is not a data modeling or IT standards organization hence it raises the call to 1106contributions to such organizations through OASIS SOA-Tel in the following areas: 1107 - Representation of actions or state machines into meta-data (maybe OMG – UML 2.x) 1108 - Support of versioning and compatibility of this meta-data 1109 - Support of cohesiveness across metadata elements when they are updated from different 1110 sources and along the phases in the lifecycle of a service. 1111 - Best design patterns for building and maintaining a repository for this meta-data

118t-soa-req-cd-01 16 February 2010 119Copyright © OASIS® 2009. All Rights Reserved. Page 40 of 47 1112Today there is no clarity as to where to find such standards or if they exist and if they do not exist which 1113organization should take the responsibility of working on them. 1114

121t-soa-req-cd-01 16 February 2010 122Copyright © OASIS® 2009. All Rights Reserved. Page 41 of 47 11155 Requirements on SOA collective standards usage

11165.1 Common Patterns for Interoperable Service Based 1117 Communications

11185.1.1 Identification of Use Case Text 1119This section is related to the specification of requirements related to the perceived technical issues 1120identified in section 7, [SOA-TEL 1.0].

11215.1.2 Requirement(s)

1122 [SOA-TEL Req. 10] 1123A common communications profile should be defined such that all multi tier web/ mobile applications 1124declaring support for the profile will be able to establish a converged sessions irrespective of the 1125underlying protocols, network domains and access across one or more servers/ services within or across 1126different respective domains. 1127Such a profile will need to define an agreed to approach to: 1128 1. Establish a session id for the context of converged application. 1129 2. Ability to set up event sync supporting a common set of set of bi-directional event classes (i.e. 1130 push, broadcast, pub/sub, etc.). 1131 3. Universally agreed to means to access the meta-data to discover the interface, binding, events 1132 classes, capability of service and device. 1133 4. Common and agreed upon means/ nomenclature for an application in real-time to discover, 1134 advertise and negotiate device characteristics, codec’s and communication modes with a peer or 1135 set of peers. 1136 o Device attributes, communication protocols and media negotiation achieved through two 1137 way services interaction. 1138 o This interaction can default to common underlying negotiation means if available/ 1139 discoverable at setup time.

11405.1.3 Description 1141The Internet has been enormously successful as en environment allowing user centric viral application 1142growth. Its success, among other things, is the result of passing control to the end user and abstracting 1143the underlying network details out of the picture for the application. As the name denotes, The Internet 1144was designed to allow networks to interoperate. Unfortunately, communication oriented application 1145models are more often bound to specific network domains with dependencies across different underlying 1146VoIP protocols, competing standards, discovery data models and session negotiation and establishment. 1147There are a growing set of application models that serve a general web and mobile market that can not 1148“build-in” assumptions of the underlying network or multi-modal connection establishment. The 1149communication profile is an attempt to mitigate this problem. It does not seek to enforce one standard 1150over the other but attempts to establish a general framework allowing converged applications to 1151interoperate thru normalized patterns of session establishment and discovery.

124t-soa-req-cd-01 16 February 2010 125Copyright © OASIS® 2009. All Rights Reserved. Page 42 of 47 11526 Conformance 1153The objective of this document is to collect requirements to address technical issues and gaps of SOA 1154standards (specified by OASIS and other SDOs) utilized within the context of Telecoms. Such issues are 1155documented in SOA-TEL’s TC first deliverable “Telecom Use Cases and Issues, v.1.0”. 1156This document is not to be considered as a specification that needs to satisfy specific conformance 1157constraints. 1158As such no conformance clauses apply.

127t-soa-req-cd-01 16 February 2010 128Copyright © OASIS® 2009. All Rights Reserved. Page 43 of 47 1159 Appendix A. Acknowledgements

1160The following individuals have participated in the creation of this specification and are gratefully 1161acknowledged: 1162 1163Participants: 1164 1165 Mike Giordano Avaya 1166 Ian Jones BT 1167 Paul Knight Individual 1168 Lucia Gradinariu LGG Solutions 1169 Orit Levin Microsoft 1170 Joerg.Abendroth Nokia Siemens Networks 1171 Christian Guenter Nokia Siemens Networks 1172 Thinn Nguyenphu Nokia Siemens Networks 1173 Olaf Renner Nokia Siemens Networks 1174 Abbie Barbir Individual 1175 Vincenzo Amorino Telecom Italia 1176 Luca Galeani Telecom Italia 1177 Maria Jose Mollo Telecom Italia 1178 Enrico Ronco Telecom Italia 1179 Federico Rossini Telecom Italia 1180 Luca Viale Telecom Italia

130t-soa-req-cd-01 16 February 2010 131Copyright © OASIS® 2009. All Rights Reserved. Page 44 of 47 1181 Appendix B. SOA-TEL Requirements

[SOA-TEL Req. 1] The WS Addressing specifications, [WS-A 1.0], must include additional fields (in addition to the ones already present) containing remote destinations to which reply messages must be sent.  The sender of a message must assign the fields when it wants to specify the destination for the reply message, but the node that has to use such destination information (i.e. the node that has to send the reply message) may not necessarily be the direct receiver of the request message.  The receiver of a message, which needs of information on the endpoint destination to which send a reply message, can obtain the information by these additional fields.  The receiver of a message has to forward to the next receiver all the additional destinations (present in these additional fields) that it does not use. [SOA-TEL Req. 2] The WS-Notification specification must provide a mechanism to describe and regulate a scenario in which one or more intermediaries are present; it must standardize the terminology, concepts, operations, WSDL and XML needed to express the roles of the intermediaries (involved in publish and subscribe Web services for notification message exchange). According to the WS-Notification terminology, the standard must be extended and modified so that:  a Subscriber can require a Subscription to a NotificationProducer also in the case they do not communicate directly but do so by means of one or more intermediaries;  likewise a NotificationProducer can send a Notification to a NotificationConsumer also in the case that they do not communicate directly, but by means of one or more intermediaries. [SOA-TEL Req. 3] A new “Message Sender and Receiver concept” must be added in [SOAP 1.2] to model SOAP nodes which must forward the SOAP headers message, but also need to perform changes on the body of the message. A new SOAP protocol must be added to manage the behavior of such nodes. [SOA-TEL Req. 4] The WS Security specifications must enable to express a relation between two security tokens, a “main” token (e.g. named “token2”) and a “related” token (e.g. named “token1”). The characteristics of the relation are that, when the token correlation is used,  the “main” token can not be built without being in possession of the “related” token,  the WS-Sec header should not be considered valid if the “related” token is not present. This token correlation requirement defines a new token security model, in which a “main” token is syntactically and semantically meaningful if it is built and presented in relation with another “related” token. [SOA-TEL Req. 4.1] It must be possible to express “token correlation” also into the SAML assertion. [SOA-TEL Req. 5] In order to make the [SAML 2.0] support name identifier use cases such as that

133t-soa-req-cd-01 16 February 2010 134Copyright © OASIS® 2009. All Rights Reserved. Page 45 of 47 described in section 3.2.1, the Security Services TC must specify a  message sent from an Identity Provider to a Service Provider to request a name identifier for a User, and a  message sent from the Service Provider to the Identity Provider to return such a name identifier to the Identity Provider. This requires extensions to the existing [SAML 2.0] core specification (saml-core- 2.0-os) including the SAML 2.0 protocol schema. No modification of the existing SAML 2.0 assertion schema is necessary. [SOA-TEL Req. 6] In order to make the [SAML 2.0] support attribute management use cases such as that described in 3.3.1, the Security Services TC must specify a  message sent from a Service Provider to an Identity Provider to request a modification or the storage of an attribute, and a  message sent from the Identity Provider to the Service Provider to return to the Service Provider the result of processing the received message. This requires extensions to the existing SAML 2.0 core specification (saml-core-2.0- os) including the SAML 2.0 protocol schema. No modification of the existing SAML 2.0 assertion schema is necessary. [SOA-TEL Req. 7] The WS Security specifications must enable to bring two security credentials in the security header: the “main” credential (e.g. named “credential2”) and a “secondary” credential (e.g. named “credential1”). The authentication and authorization process should be performed on the basis of the main credential; the secondary credential should be used to complete the security functionalities. [SOA-TEL Req. 7.1] It must be possible to express “token correlation” also into the SAML assertion. [SOA-TEL Req. 8] The SOA Reference Model and Architecture must explain how a service separates and exposes its manageability capabilities to allow other services to manage it. The Service Delivery Framework specified by TM Forum and depicted below sets such requirement at the SDF Service Management Interface.

[SOA-TEL Req. 9] A standardization body (most probable TM Forum) must normalize the meta-data of Service Management to address the needs of managing any service from a lifecycle perspective. The meta-data should evolve into a meta-model that can be automatically instantiated into current and future management models which are domain (network or IT), technology (enterprise Java, IP network) or lifecycle phase (service creation, deployment, operation, etc). [SOA-TEL Req. 10] A common communications profile should be defined such that all multi tier web/ mobile applications declaring support for the profile will be able to establish a converged sessions irrespective of the underlying protocols, network domains and access across one or more servers/ services within or across different respective domains. Such a profile will need to define an agreed to approach to: 1. Establish a session id for the context of converged application. 2. Ability to set up event sync supporting a common set of set of bi-directional event classes (i.e. push, broadcast, pub/sub, etc.). 3. Universally agreed to means to access the meta-data to discover the interface, binding, events classes, capability of service and device. 4. Common and agreed upon means/ nomenclature for an application in real-

136t-soa-req-cd-01 16 February 2010 137Copyright © OASIS® 2009. All Rights Reserved. Page 46 of 47 time to discover, advertise and negotiate device characteristics, codec’s and communication modes with a peer or set of peers. o Device attributes, communication protocols and media negotiation achieved through two way services interaction. This interaction can default to common underlying negotiation means if available/ discoverable at setup time.

1182

139t-soa-req-cd-01 16 February 2010 140Copyright © OASIS® 2009. All Rights Reserved. Page 47 of 47

Recommended publications