OASIS Cross-Enterprise Security and Privacy Authorization (XSPA
Document Sample


1 OASIS Cross-Enterprise Security and
2 Privacy Authorization (XSPA) – WS-
3 Trust Healthcare Profile
4 Working draft 20 August, 2008
5 Document identifier:
6 xspa-ws-trust-profile-01
7 Location:
8
9 Editor:
10 Brett Burley, Department of Veterans Affairs (Near Infinity Corporation)
11 Duane DeCouteau, Department of Veterans Affairs (Edmond Scientific Company)
12 Mike Davis, Department of Veterans Affairs
13 David Staggs, Department of Veterans Affairs (SAIC)
14
15 Contributors:
16
17 Abstract:
18 This document describes how WS-Trust is leveraged by cross-enterprise security and privacy
19 authorization (XSPA) to satisfy requirements pertaining to information-centric security within the
20 healthcare community.Table of contents
21 1. Introduction ..................................................................................................................................... 4
22 1.1. Document Roadmap ................................................................................................................ 4
23 1.2. Requirements and Non-goals .................................................................................................. 4
24 1.2.1. Requirements.................................................................................................................... 4
25 1.2.2. Non-Goals ......................................................................................................................... 4
26 2. Terminology ..................................................................................................................................... 5
27 3. WS-Trust Overview ......................................................................................................................... 5
28 4. XSPA WS-Trust Implementation ..................................................................................................... 6
29 4.1. Interactions between Parties .................................................................................................... 6
30 4.1.1. Assumptions ..................................................................................................................... 6
31 4.1.2. Logical Framework............................................................................................................ 7
XSPA-WS-Trust Healthcare Profile – Draft 15 August 2008
Page 1 of 24
4.1.2.1. Client Application .................................................................................................... 7
32 4.1.2.2. Service Interface ............................................................................................................ 7
4.1.2.3. Access Control System ........................................................................................... 8
4.1.2.3.1. Abstracting Access Control Decisions in Cross Enterprise Implementation .. 9
4.1.2.4. Attribute Services .................................................................................................... 9
4.1.2.4.1. Subject Attributes ............................................................................................ 9
4.1.2.4.2. Resource Attributes ...................................................................................... 12
Consent Repository...................................................................................................... 15
4.1.2.5. Policy Authority ..................................................................................................... 16
4.1.2.6. STS ....................................................................................................................... 16
4.1.2.7. Patient Lookup Service ......................................................................................... 16
4.1.2.8. Transmission Integrity ........................................................................................... 17
4.1.2.9. Transmission Confidentiality ................................................................................. 17
4.1.2.10. Error States ......................................................................................................... 17
4.1.2.11. Security Considerations ...................................................................................... 17
4.1.2.12. Confirmation Identifiers ....................................................................................... 17
4.1.2.13. Metadata Definitions ........................................................................................... 17
4.1.2.14. Naming Syntax, Restrictions and Acceptable Values ......................................... 17
4.1.2.15. Namespace Requirements ................................................................................. 17
4.1.2.16. Attribute Rules of Equality ................................................................................... 17
33 4.1.3. Example Messages......................................................................................................... 18
34 4.1.4. Request / Response – Cross Enterprise Patient Lookup ............................................... 18
35 4.1.5. Request / Response – Medical Record Access ............................................................. 22
36 4.1.6. Masking of Clinical Data ................................................................................................. 25
37 4.1.7. Enforcement Cross Enterprise Business Rules .............................................................. 25
38 4.1.8. Request for Additional Attributes .................................................................................... 25
39 5. References .................................................................................................................................... 27
40
41
42
43
44
45
46
47
XSPA-WS-Trust Healthcare Profile – Draft 15 August 2008
Page 2 of 24
48 Introduction
49 XSPA encompasses the mechanisms to authenticate and administer, and enforce authorization
50 policies controlling access to protected information residing within or across enterprise boundaries.
51 The policies being administered and enforced relate to security, privacy and consent directives. In
52 general, and with respect to this profile, WS-Trust works in concert with additional, supporting,
53 lower-layer standards including WS-Security, WS-Policy and SAML to provide the overarching
54 XSPA specification.
55 [XACML] is well suited for, and may be used to provide policy administration and enforcement
56 within XSPA, leveraging a WS-based infrastructure where appropriate. However, this profile does
57 not include the use of XACML within XSPA. XSPA does not mandate the use of XACML.
58 This document provides an overview of the major WS components of the XSPA profile. The profile
59 then establishes how these components may be used to implement cross-enterprise access control
60 requirements relevant to the healthcare community.
61 This profile does not address security required to protect message transactions such as digital
62 signatures and encryption, but instead discusses how shared messages can be used to negotiate
63 the necessary claims to access a protect resource.
64 It is assumed that the reader is somewhat familiar with the WS standards extended by WS-Trust.
65 Document Roadmap
66 Presentation of requirements, non-goals and terminology
67 Review of components that are encompassed by this XSPA profile
68 Details of XSPA implementation within the healthcare community
69 Requirements and Non-goals
70 Requirements
71 Achieve cross-enterprise authentication and authorization of entities (e.g. user or server) within the
72 healthcare community. This will be accomplished through XSPA by leveraging and extending
73 existing and candidate OASIS standards.
74 Non-Goals
75 The following topics are outside the scope of this document:
76 The use of XACML as means for creating rules and policy sets within or across security
77 domains.
78
79
80
XSPA-WS-Trust Healthcare Profile - Draft 15 August 2008
Page 3 of 24
81 Terminology
82 The following definitions establish the terminology and usage in this profile:
83 Access Control System (ACS) –
84 Attribute Service - An attribute service is a Web service that maintains information (attributes) about
85 principals within a trust realm or federation. The term principal, in this context, can be applied to
86 any system entity, not just a person.
87 Claim – A claim is a declaration made by an entity (e.g. name, identity, key, group, privilege,
88 capability, attribute, etc).
89 Metadata – Any data that describes characteristics of a subject. For example, federation metadata
90 describes attributes used in the federation process such as those used to identify – and either
91 locate or determine the relationship to – a particular Identity Provider, Security Token Service or
92 Relying Party service.
93 Policy – A policy is a collection of policy alternatives.
94 Purpose of Use
95 Realm or Domain – A realm or domain represents a single unit of security administration or trust.
96 Relying Party – A Web application or service that consumes Security Tokens issued by a Security
97 Token Service.
98 Security Token – A security token represents a collection of claims.
99 Security Token Service – A security token service (STS) is a Web service that issues security
100 tokens (see [WS-Security]). That is, it makes assertions based on evidence that it trusts, to
101 whoever trusts it (or to specific recipients). To communicate trust, a service requires proof, such as
102 a signature to prove knowledge of a security token or set of security tokens. A service itself can
103 generate tokens or it can rely on a separate STS to issue a security token with its own trust
104 statement (note that for some security token formats this can just be a re-issuance or co-signature).
105 This forms the basis of trust brokering.
106 Trust – Trust is the characteristic that one entity is willing to rely upon a second entity to execute a
107 set of actions and/or to make set of assertions about a set of subjects and/or scopes.
108 WS-Trust Overview
109 This profile specifies the use of WS-Trust, an extension of WS-Security, as a token-type agnostic
110 means for requesting, issuing, renewing, and validating security assertions. While the WS-Trust
111 specification completely describes these activities, a brief overview is provided here describing the
112 interactions between a web service requestor, security token service (STS) and web service
113 provider.
114
115 The core component of WS-Trust is the STS. The authentication and authorization-related services
116 provided by the STS are conducted on the frontline of the multi-layered approach of this profiles
117 strategy for securing web services.
118
119
120
XSPA-WS-Trust Healthcare Profile - Draft 15 August 2008
Page 4 of 24
121
122 Figure 1 WS-Trust Model [WS-Trust]
123
124 In Figure 1 the STS acts as a brokering agent by issuing tokens, in the form of a response to the
125 requestor. The requestor then submits the token to the web service. The web service may
126 subsequently contact the STS to ensure the validity of the token and its claims (e.g. none of the
127 claims have been revoked).
128 The most fundamental concept of WS-Trust is that requestors and consumers of tokens trust the
129 issuer of that token, the STS.
130
131 XSPA WS-Trust Implementation
132 The objective of XSPA and this profile is to achieve cross-enterprise authorization of entities within
133 the healthcare community by providing common semantics and vocabularies for interoperable
134 course and fine-grained access control.
135
136 The following sections present a detailed look at the interaction between parties operating within
137 the security framework of this profile, the elements of WS-Trust leveraged by XSPA, as well as a
138 use case demonstrating the access control capabilities of XSPA.
139 Interactions between Parties
140 The XSPA WS-Trust model facilitates course and fine-grained access control, relieving the service
141 provider from making access control decisions. The service provider is left with only having to
142 enforce the decision determined by an access control service (ACS).
143 Assumptions
144 The enterprise identity related to the healthcare system user has been established prior to
145 issuing the request for a security token
146 No user or application is allowed direct access to patient information services
147 All security policies related to healthcare system end point have been established and put
148 in place using mechanisms outside the scope of this document
XSPA-WS-Trust Healthcare Profile - Draft 15 August 2008
Page 5 of 24
149
150 Logical Framework
151 The following figure provides a logical view of components and the interaction between parties in
152 the exchange of healthcare information. Elements illustrated in the figure are explained in the
153 subsections below.
154
155
156
157
158
159
160
161
162
163
164
165
166 Figure 2 – Logical Framework/Interaction
XSPA-WS-Trust Healthcare Profile - Draft 15 August 2008
Page 6 of 24
167
168 Client Application
169 Both rich (desktop) and browser based applications are supported in this profile. The client
170 application may ONLY request resources from the local service interface. Client requests must
171 include
172 Purpose of Use (POU),
173 Object requested as described in HL7 Version 3 Standard: Role-based Access Control
174 Healthcare Permission Catalog [HL7-RBAC],
175 Action requested may be in the form of create, read, update, delete, and edit.
176 Additional actions may be passed if agreed upon by both parties.
177 Resource (patient unique identifier if known, and the user’s unique identifier or token.
178 Service Interface
179 This interface acts as a bus to all available services within a given entity. Users may only request
180 allowed resources through this interface. The responding service interface at the remote entity will
181 be responsible for authenticating the validity of the token by parsing out any assertions (SAML
182 Assertion) made and providing them to the ACS so an access control decision may be made.
183
184 The responding service interface will be responsible for providing any object translations required
185 within that entity. An example for consideration is shown in the following table.
186
HL7 Object Site A – Service Result Site B – Service Native
Format Format
Radiology Http://siteA/XSPA/Radiology?wsdl CDA Http://siteB/XSPA/Radiology?wsdl CDA
Order
(common)
Radiology Http://siteA/ClinServices/Radiology?wsdl CDA Http://siteB/Orders/Radiology?wsdl Proprietary
Order
(site specific)
187
188 In the above table, Site B would be responsible for translating from the proprietary format of a
189 radiology order to Clinical Documentation Architecture (CDA).
190
191 Note: This profile DOES NOT provide for or recommend any clinical data exchange standards.
192 Access Control System
193 In typical implementations, no user or application is allowed direct access to patient information.
194 The XSPA profile of WS-Trust supports this requirement by sending all requests through an Access
195 Control System (ACS). In performing the request, the ACS may acquire additional attribute
196 information related to a user’s location, purpose of use, permissions, roles, license information,
197 remote service endpoints, and requested resource requirements and actions. A local access control
XSPA-WS-Trust Healthcare Profile - Draft 15 August 2008
Page 7 of 24
198 decision may be made to deny access to the requested resource (course-grained access control).
199 If permitted the requesting ACS will request a token be granted from an STS that asserts all known
200 information relevant to the request. The requesting ACS is responsible for enforcing the access
201 control decision.
202
203 It should be noted that the requesting ACS may make an access control decision to deny access to
204 remote resources based on local internal policies. If the requesting ACS determines to permit a
205 transaction, an applicable token will be requested from an STS and the subsequent request to the
206 remote web service will be made with that token.
207
208 Abstracting Access Control Decisions in Cross Enterprise
209 Implementation
210 It is assumed that if a set of attributes are evaluated against identical policies that the resultant
211 decision would be the same regardless of the location of the evaluation. This profile in no way
212 defines how or what tools sets will be used in any vendor implementation. Instead it is
213 recommended that abstract program logic be used to describe how access decisions are reached
214 between parties and internally.
215
216 The following describes in an abstract manner how required permissions and permission granted to
217 a subject could be evaluated.
218
219
220 If permissions.attributeValue equals requiredpermission.attributeValue
221 then
222 permit
223 else
224 deny
225 end if;
226
227 Attribute Services
228 The Attribute Service provides the ACS additional attributes necessary to make an access control
229 decision. This profile focuses a healthcare use case and its required attributes to describe its
230 implementation. This by no means limits its implementation to this sector. Any vocabulary could be
231 offered to ACS through the Attribute Service model. Attributes within this profile will be harmonized
232 with and support ISO 10148-3.
233 Subject Attributes
234 This service provides attributes that are specific to the requesting user and are only known to the
235 entity which manages them.
236
237 SubjectName
XSPA-WS-Trust Healthcare Profile - Draft 15 August 2008
Page 8 of 24
238 This is the name of the user as required by HIPAA Privacy Rule, Section 164.528 – Accounting of
239 Disclosures SubjectName will be typed as a string in plain text with an identifying element of
240 <urn:oasis:names:tc:SAML:2.0:profiles:attribute:XPSA:subjectname >
241
242 SubjectID (Optional)
243 In some implementations, a country may require a government issued identifier. For example, in the
244 U.S., the subjects National Provider Identifier (NPI) is required for all HIPPA standard transactions.
245 SubjectID will be typed as a string in plain text with an identifying element of
246 <urn:oasis:names:tc:SAML:2.0:profiles:attribute:XPSA:subjectid>.
247
248 Organization
249 This is the organization that the user belongs to as required by HIPAA Privacy Disclosure
250 Accounting. Organization will be typed as a string in plain text with an identifying element of
251 <urn:oasis:names:tc:SAML:2.0:profiles:attribute:XPSA:organization>
252
253
254 Role (Optional)
255 Roles are placeholders for permission defined by that organization. The use of Role as criteria to
256 make an access control decision would require agreement of their vocabulary between
257 organizations, which may be mandated by law or by a multi-organizational agreement, e.g., by
258 members of a health information exchange organization. Permissions, assigned to roles within an
259 organization, are defined in the HL7 Version 3 Standard: Role-based Access Control Healthcare
260 Permission Catalog [HL7-RBAC]. Licensing information related to subject playing the role may be
261 asserted in the form of a certificate.
262
263 Permission (optional)
264 There is no explicit assertion of permission required by this profile.
265 The permission in use is determined by the Action on the Target. See Action below. The
266 Permission is the ANSI INCITS RBAC compliant action-object pair representing the authorization
267 required for access by the protected resource. In this profile, the service acting as a proxy for the
268 user implicitly asserts the authorizations of the principal by sending the request as required by the
269 inter-organizational agreement. The sending of the request by the trusted service consumer is
270 evidence to the relying party (service) that the service consume has:
271
272 Correctly authenticated at the assurance level required by mutual agreement,
273 Determined that the user is authorized to make the request and receive the information
274 requested,
275 Verified that all subject consent directives have been consulted and there is no prohibition
276 regarding the request.
277
278 Figure 3 illustrates the general relationship between subject (user) and granted permissions to
279 specific objects as a relationship to their POU. POU is determined during the login process. Roles
280 in this relationship are placeholders for permissions. Permission defines the object-action
281 relationship.
282
XSPA-WS-Trust Healthcare Profile - Draft 15 August 2008
Page 9 of 24
283
284 Figure 3 Determining Subject Permissions
285
286
287 Resource Attributes
288
289 Required Permissions
290 Required permissions for object action pairing are known only to a given entity. A relationship
291 exists with the client application requested resource and the permission required for its action. By
292 determining that the requester’s role and asserted POU should be permitted to act on the object
293 requested, an access control decision can be made prior to traversing across enterprises.
294 Objects, actions and permissions are described in the HL7 Version 3 Standard: Role-based Access
295 Control Healthcare Permission Catalog [HL7-RBAC].
296
Purpose of Use Object Action Permission Required
Healthcare Access {R, Radiology Order} Read PRD-004
Emergency Access {R, Radiology Order} Read PEA-001
(etc)
297
298
299 Purpose of Use
300 Purpose of use (POU) provides essential context for requests to information resources. Each
301 purpose of use will be unique to a specific claim, and will establish the context for other security and
302 privacy attributes. Within a claim, all other claims and assertions must be bound to the purpose of
303 use. POU allows the service to consult its policies to determine if the user’s claims meet or exceed
304 those needed to allow access.
305 From a clinician’s perspective, they will interact with the healthcare application to establish the POU
306 at the time of requesting patent information. This will take the form of the healthcare application
XSPA-WS-Trust Healthcare Profile - Draft 15 August 2008
Page 10 of 24
307 offering a list of appropriate POUs to the clinician based on their role. (e.g. Healthcare Treatment,
308 Emergency Treatment, etc.).
309 A patient establishes usage permissions through consent directives, which will be correlated to
310 each POU. For example, a patient’s consent directive under normal conditions (Healthcare
311 Treatment POU) will include objects, confidentiality codes and policy attributes which may be much
312 different from those in an emergency (Emergency Treatment POU). Consent directives specific to
313 a purpose of use allows both the patient and the system enforcing access control to share a
314 common context and vocabulary for requirements, claims and policy enforcement that provides for
315 interoperability of both security and privacy enforcement.
316
317 The following list of healthcare related purposes of use is specified by this profile.
318 Healthcare Treatment
319 Emergency Treatment
320 System Administration
321 Operations
322 Payment
323 Research
324 Marketing
325
326 Object Service Endpoints
327 Additionally, object service endpoints which are shared / distributed across trusted entities are also
328 provided. Participating organization must share clinical service endpoints, have a common method
329 naming convention, and data format exchange standard as described in the following table.
330
331
Site Object Endpoint Operation Result
Format
Site A {R, Radiology Http://siteA/XSPA/ClinicalServices?wsdl GetRadiologyOrder CDA
Order}
Site B {R, Radiology Http://siteB/webservices/Clinical?wsdl GetRadiologyOrder CDA
Order}
Site C {R, Radiology Http://siteC/ws/Radiology?wsdl GetRadiologyOrder CDA
Order}
332 Consent Repository
333 The resource (e.g. patient) may choose to constrain access to their records. They do so by
334 establishing a consent directive which subsequently resides in the consent repository. The
335 responsibility of enforcing these constraints falls on both the Service Responder and Consumer.
336 Figure 4 shows the general relationship between POU and resources consent directive when
337 constraining permissions to specific subjects (users) or their roles. In this profile POU will be those
XSPA-WS-Trust Healthcare Profile - Draft 15 August 2008
Page 11 of 24
338 previously specified in this document. Consent Code in this profile will implement the HL7 Version 3
339 Consent related vocabulary including Confidentiality Codes [HL7-Consent]. The Subject and Role
340 vocabulary for this profile conforms to the ASTM standard for structural healthcare roles [ASTM
341 E1986-98(2005)].
342
343 Figure 4 POU and User Based Access (UBA) Control
344
345
346 Figure 5 shows the general relationship between POU and masking of specific object based on the
347 subject or their role. In addition to those vocabularies specified for use with the components
348 illustrated in figure 4, the objects of this profile are defined through the HL7 RBAC Permission
349 Catalog [HL7-RBAC].
350
351
352 Figure 5 Resource Object Masking (MA)
XSPA-WS-Trust Healthcare Profile - Draft 15 August 2008
Page 12 of 24
353
354 Policy Authority
355
356 The Policy Authority contains rules specific to that entity as well as any mutually agreed upon
357 cross-enterprise policies. The ACS sources these policies to make access control determination
358 prior to making any external requests. This document does not address how the policies are
359 represented. It remain up to the implementer what best fits their ACS implementation.
360
361 STS
362 The Security Token Service (STS) acts as a brokering agent by issuing tokens, in the form of a
363 response to the requesting ACS. The requesting ACS then submits the token to the web service.
364 The web service may subsequently contact the STS to ensure the validity of the token and its
365 claims (e.g. none of the claims have been revoked).
366 The most fundamental concept of WS-Trust is that requestors and consumers of tokens trust the
367 issuer of that token: the STS.
368 Patient Lookup Service
369 Refer to section 4.1.4 for an example of interactions. This document does not address or suggest
370 how this function may be implemented.
371 Transmission Integrity
372 The XSPA profile of WS-Trust recommends the use of reliable transmission protocols. Where point-
373 to-point transmission integrity is required, this profile specifies the Healthcare Information
374 Technology Standards Panel (HITSP) Secured Communication Channel (TP17).
375 Transmission Confidentiality
376 The XSPA profile of WS-Trust recommends the use of secure transmission protocols. Where point-
377 to-point transmission confidentiality is required, this profile specifies the HITSP TP17.
378 Error States
379 This profile will implement messaging standards described in WS-Trust when communicating error
380 states between requesting and responding entities.
381 Security Considerations
382 <Risk assessment>
383 Confirmation Identifiers
384 No known common identifiers at this time.
385 Metadata Definitions
386 This profile will utilize the WS-Trust <AttributeStatement> to inject a SAML assertion into request.
XSPA-WS-Trust Healthcare Profile - Draft 15 August 2008
Page 13 of 24
387 Naming Syntax, Restrictions and Acceptable Values
388 This profile will support the namespace requirements described in WS-Trust.
389 Namespace Requirements
390 This profile will support the namespace requirements described in WS-Trust.
391 Attribute Rules of Equality
392 All asserted attributes child to <AttributeStatement> element will be typed as strings. Two
393 <Attributes> elements refer to the same SAML attribute if and only if their Name XML attribute
394 values are equal in a binary comparison.
395
396
397 Example Messages
398 The following are intended to provide additional guidance to implementers. These examples
399 leverage the draft profile [XSPA-SAML] Cross-Enterprise Security and Privacy Authorization
400 (XSPA) Profile of Security Assertion Markup Language (SAML). Implementers may choose to
401 utilize other means of asserting attributes beyond SAML capabilities within WS-Trust.
402
403 Example Header
404
405 Timestamp Example
406 Timestamp information should be included – TBD.
407 Request / Response – Cross Enterprise Patient Lookup
408
409 Event Flow
XSPA-WS-Trust Healthcare Profile - Draft 15 August 2008
Page 14 of 24
410
411 Figure 6 Cross Enterprise Patient Lookup Event Flow
412
413 Patient search across enterprises may only require a coarse grain approach to authorization where
414 an access control decision can be made without the evaluation of subject attributes. In this case
415 the responder’s services interface may execute the lookup without having to interact with the ACS.
416 This a result of trust between two STSs.
XSPA-WS-Trust Healthcare Profile - Draft 15 August 2008
Page 15 of 24
417
418 Figure 7 Cross Enterprise Patient Lookup Event Flow (Cont.)
419
420 Request
421 Within this XSPA profile SAML 2.0 assertions are used to establish the attributes of the actors
422 involved in a transaction.
423 The following is an example of the expected syntax of an RST with respect to this XSPA profile.
424
425 <wst:RequestSecurityToken Context="..." xmlns:wst="...">
426 <wst:TokenType>...</wst:TokenType>
427 <wst:RequestType>...</wst:RequestType>
428 <wst:SecondaryParameters>...</wst:SecondaryParameters>
429 ...
430 </wst:RequestSecurityToken>
431
432
433 Response Example
434 This document does not define what attributes of the patient demographic record should be
435 contained in the resultant patient list. At minimum the patientId, name, age, gender, primary clinic,
436 and/or provider should be available for the consumer to make a selection. This also assumes that
437 all requests for a patients clinical record require the selection of that patient first.
438
439 The following is an example of the expected syntax of an RSTR with respect to this XSPA profile:
440
441 <wst:RequestSecurityTokenResponse>
XSPA-WS-Trust Healthcare Profile - Draft 15 August 2008
Page 16 of 24
442 <wst:TokenType>
443 SAML
444 </wst:TokenType>
445 <wsp:AppliesTo>
446 <wsa:EndpointReference>
447 <wsa:Address>http://hostname/webservice/patientlookup</wsa:Address>
448 </wsa:EndpointReference>
449 </wsp:AppliesTo>
450 <RequestedSecurityToken>
451 <saml:Assertion … >
452 <AttributeStatement>
453 <Attribute
454 AttributeName="subject"
455 AttributeNamespace="http://schemas.xmlsoap.org/claims">
456 <AttributeValue>
457 <Attribute AttributeName=”subjectName”
458 AttributeNameSpace=”http://schemas.xmlsoap.org/claims”>
459 <AttributeValue>
460 Doctor, Bob
461 </AttributeValue>
462 </Attribute>
463
464 <!-- optional -->
465 <Attribute AttributeName=”subjectID”
466 AttributeNameSpace=”http://schemas.xmlsoap.org/claims”>
467 <AttributeValue>
468 100011
469 </AttributeValue>
470 </Attribute>
471 <!-- end optional -->
472
473 <Attribute AttributeName=”organization”
474 AttributeNameSpace=”http://schemas.xmlsoap.org/claims”>
475 <AttributeValue>
476 Fort Harrison, Helena MT
477 </AttributeValue>
478 </Attribute>
479
480 <!-- optional -->
481 <Attribute AttributeName=”Role”
482 AttributeNameSpace=”http://schemas.xmlsoap.org/claims”>
483 <AttributeValue>
484 Physician
485 </AttributeValue>
486 </Attribute>
487 <Attribute AttributeName=”permissions”
488 AttributeNameSpace=”http://schemas.xmlsoap.org/claims”>
489 <AttributeValue>
490 PRD-001
491 </AttributeValue>
492 <AttributeValue>
493 PRD-004
494 </AttributeValue>
495 <AttributeValue>
496 PRD-011
497 </AttributeValue>
498 </Attribute>
499 <!-- end optional -->
500
XSPA-WS-Trust Healthcare Profile - Draft 15 August 2008
Page 17 of 24
501 <AttributeStatement>
502 <Attribute
503 AttributeName="resource"
504 AttributeNamespace="http://schemas.xmlsoap.org/claims">
505 <AttributeValue>
506 <Attribute AttributeName=”resourceName”
507 <AttributeValue>
508 patientSearch
509 </AttributeValue>
510 </Attribute>
511 <Attribute AttributeName=patientName
512 <AttributeValue>
513 Doe,John
514 </AttributeValue>
515 </Attribute>
516 <Attribute AttributeName=”action”
517 AttributeNameSpace=”http://schemas.xmlsoap.org/claims”>
518 <AttributeValue>
519 Read
520 </AttributeValue>
521 </Attribute>
522
523 </AttributeStatement>
524 </saml:Assertion>
525 </wst:RequestedSecurityToken>
526 </wst:RequestedSecurityTokenResponse>
527
528
529
530 Required Attributes
Attribute Namespace Comments
Patientidentifier tbd Each entity may employ varying
(lastname,firstname,middle methodologies for patient
initial, etc.) lookup. Participating parties
will need to agree on what is
required and to what level of
detail.
Subjectname tbd
Organization tbd
Purposeofuse tbd
Resourcename tbd Refer to [HL7-PERM] for object
values
Action tbd Create, read, update, delete,
edit, and other mutually agreed
upon action values.
531
532
533 Optional Attributes
XSPA-WS-Trust Healthcare Profile - Draft 15 August 2008
Page 18 of 24
Attribute Namespace Comments
SubjectId tbd For U.S. Implementations this
is the users Medicaid ID.
Role tbd
Permission tbd
534 Request / Response – Medical Record Access
535 Event Flow
536 Refer to Figure 6 for local access control decision. Figure 8 shows the access control decision
537 event at remote site. In this example the ACS must be provided with the patient’s consent
538 directives.
539
540
541 Figure 8 Medical Record Event Flow
542
543 Request Example
544 The following is an example of the expected syntax of an RST with respect to this XSPA profile with
545 requesting access to patient medical record(char).
546
547 <wst:RequestSecurityToken Context="..." xmlns:wst="...">
548 <wst:TokenType>...</wst:TokenType>
549 <wst:RequestType>...</wst:RequestType>
550 <wst:SecondaryParameters>...</wst:SecondaryParameters>
551 ...
XSPA-WS-Trust Healthcare Profile - Draft 15 August 2008
Page 19 of 24
552 </wst:RequestSecurityToken>
553
554 Response Example
555 The following is an example of the expected syntax of an RSTR with respect to this XSPA profile
556 with requesting access to patient medical record(char).
557
558 <wst:RequestSecurityTokenResponse>
559 <wst:TokenType>
560 SAML
561 </wst:TokenType>
562 <wsp:AppliesTo>
563 <wsa:EndpointReference>
564
565 <wsa:Address>http://hostname/webservice/MedicalRecord/Radiology</wsa:Address>
566 </wsa:EndpointReference>
567 </wsp:AppliesTo>
568 <RequestedSecurityToken>
569 <saml:Assertion … >
570 <AttributeStatement>
571 <Attribute
572 AttributeName="subject"
573 AttributeNamespace="http://schemas.xmlsoap.org/claims">
574 <AttributeValue>
575 <Attribute AttributeName=”subjectName”
576 AttributeNameSpace=”http://schemas.xmlsoap.org/claims”>
577 <AttributeValue>
578 Doctor, Bob
579 </AttributeValue>
580 </Attribute>
581
582 <!-- optional -->
583 <Attribute AttributeName=”subjectID”
584 AttributeNameSpace=”http://schemas.xmlsoap.org/claims”>
585 <AttributeValue>
586 100011
587 </AttributeValue>
588 </Attribute>
589 <!-- end optional -->
590
591 <Attribute AttributeName=”organization”
592 AttributeNameSpace=”http://schemas.xmlsoap.org/claims”>
593 <AttributeValue>
594 Fort Harrison, Helena MT
595 </AttributeValue>
596 </Attribute>
597
598 <Attribute AttributeName=”role”
599 AttributeNameSpace=”http://schemas.xmlsoap.org/claims”>
600 <AttributeValue>
601 Physician
602 </AttributeValue>
603 </Attribute>
604 <Attribute AttributeName=”permissions”
605 AttributeNameSpace=”http://schemas.xmlsoap.org/claims”>
606 <AttributeValue>
607 PRD-001
XSPA-WS-Trust Healthcare Profile - Draft 15 August 2008
Page 20 of 24
608 </AttributeValue>
609 <AttributeValue>
610 PRD-004
611 </AttributeValue>
612 <AttributeValue>
613 PRD-011
614 </AttributeValue>
615 </Attribute>
616
617
618 <AttributeStatement>
619 <Attribute
620 AttributeName="resource"
621 AttributeNamespace="http://schemas.xmlsoap.org/claims">
622 <AttributeValue>
623 <Attribute AttributeName=”resourceName”
624 <AttributeValue>
625 RadiologyReport
626 </AttributeValue>
627 </Attribute>
628 <Attribute AttributeName=patientId
629 <AttributeValue>
630 Doe,John
631 </AttributeValue>
632 </Attribute>
633 <Attribute AttributeName=”action”
634 AttributeNameSpace=”http://schemas.xmlsoap.org/claims”>
635 <AttributeValue>
636 Read
637 </AttributeValue>
638 </Attribute>
639
640 </AttributeStatement>
641 </saml:Assertion>
642 </wst:RequestedSecurityToken>
643 </wst:RequestedSecurityTokenResponse>
644
645
646 Required Attributes
647
Attribute Namespace Comments
PatientId tbd Unique to remote entity
Subjectname tbd
Organization tbd
Purposeofuse tbd
Resourcename tbd Refer to [HL7-PERM] for object
values
Action tbd Create, read, update, delete,
edit, and other mutually agreed
upon action values.
Permission tbd
XSPA-WS-Trust Healthcare Profile - Draft 15 August 2008
Page 21 of 24
Role tbd
648
649 Optional Attributes
650
Attribute Namespace Comments
PatientName tbd
651
652
653
654 Masking of Clinical Data
655
656 In masking clinical data, the event flow is identical to accessing a patient-specific medical record
657 discussed in section 4.1.5 with the exception that the patient's consent directive requires masking
658 of portions of the clinical record. The response in this case will need to contain an obligation
659 defining which object must be hidden from the requesting user. The consuming ACS and its
660 service interface must enforce this obligation.
661
662 Enforcement Cross Enterprise Business Rules
663
664 In enforcing cross enterprise business, the event flow is identical to accessing a patient specific
665 medical record as discussed in section 4.1.5 with the exception that entities internal policies
666 requires additional controls on the clinical record. The response in this case will need to contain a
667 policy snippet defining the business rule. The consuming ACS and its service interface must
668 enforce this business rule.
669
670 Request for Additional Attributes
671 Event Flow
XSPA-WS-Trust Healthcare Profile - Draft 15 August 2008
Page 22 of 24
672
673 Figure 9 Request of Additional Attributes
674
675
676 References
677
678 [ASTM E1986-98(2005)] Standard Guide for Information Access Privileges to Health Information.
679
680 [HITSP/TP20] Healthcare Information Technology Standards Panel Security and Privacy
681 Technical Committee. HITSP Access Control Transaction Package, v1.1. October 2007.
682
683 [HL7-Consent] Healthcare Level 7. RBAC Consent related vocabulary including Confidentiality
684 Codes, v3.0.
685
686 [HL7-RBAC] Healthcare Level 7. RBAC Healthcare Permission Catalog, v3.38. November 2007.
687
688 [SAMLPROF] Organization for the Advancement of Structured Information Standards. Profiles for
689 the OASIS Security Assertion Markup Language, v2.0, February 2005.
690
691 [WS-Trust] Organization for the Advancement of Structured Information Standards. WS-Trust,
692 v1.3, March 2007.
XSPA-WS-Trust Healthcare Profile - Draft 15 August 2008
Page 23 of 24
693
694 [XSPA-SAML] Draft Profile - Cross-Enterprise Security and Privacy Authorization (XSPA) Profile of
695 Security Assertion Markup Language (SAML)
XSPA-WS-Trust Healthcare Profile - Draft 15 August 2008
Page 24 of 24
Related docs
Get documents about "