+ All Categories
Home > Documents > Cross-Enterprise Security and Privacy Authorization … · Web viewStructural roles (also referred...

Cross-Enterprise Security and Privacy Authorization … · Web viewStructural roles (also referred...

Date post: 20-Apr-2018
Category:
Upload: lamkien
View: 215 times
Download: 2 times
Share this document with a friend
43
Cross-Enterprise Security and Privacy Authorization (XSPA) Profile of SAML v2.0 for Healthcare Version 2.0 Working Working Draft Draft 04 1 1 17 9 July March 2013 201 7 Technical Committee: OASIS Cross-Enterprise Security and Privacy Authorization (XSPA) TC Chair: Mohammad Jafari ([email protected]), Veterans Health Administration Editors: John M. Davis ( [email protected] ), Veterans Health Administration Duane DeCouteau ([email protected]), Veterans Health Administration Mohammad Jafari ([email protected]), Veterans Health Administration Additional artifacts: This prose specification is one component of a Work Product that also includes: XML schemas: (list file names or directory name) Other parts (list titles and/or file names) Related work: This specification replaces or supersedes: Cross-Enterprise Security and Privacy Authorization (XSPA) Profile of Security Assertion Markup Language (SAML) v2.0 for Healthcare Version 1.0. 1 November 2009. OASIS Standard. http://docs.oasis-open.org/security/xspa/v1.0/saml-xspa- 1.0-os.html. This specification is related to the OASIS Security Assertion Markup Language (SAML) V2.0, comprised of the following documents: Authentication Context for the OASIS Security Assertion Markup Language (SAML) V2.0. 15 March 2005. OASIS Standard. http://docs.oasis-open.org/security/saml/v2.0/saml-authn-context-2.0- os.pdf. Bindings for the OASIS Security Assertion Markup Language (SAML) V2.0. 15 March 2005. OASIS Standard. http://docs.oasis-open.org/security/saml/v2.0/saml-bindings-2.0- os.pdf. Conformance Requirements for the OASIS Security Assertion Mark Markup Language (SAML) V2.0. 15 March 2005. OASIS Standard. http://docs.oasis-open.org/security/saml/v2.0/saml-conformance-2.0- os.pdf. Assertions and Protocols for the OASIS Security Assertion Markup Language (SAML) V2.0. 15 March 2005. OASIS Standard. http://docs.oasis-open.org/security/saml/v2.0/saml-core-2.0-os.pdf. saml-xspa-v2.0-wd01 wd 1 1 Working Working Draft 01 1 1 17 10 March July 2013 201 7 Standards Track Draft Copyright © OASIS Open 2013. All Rights Reserved. Page 1 of 43
Transcript

Cross-Enterprise Security and Privacy Authorization (XSPA) Profile of SAML v2.0 for Healthcare Version 2.0

Working Working Draft Draft 0411

17 9 July March 20132017

Technical Committee:OASIS Cross-Enterprise Security and Privacy Authorization (XSPA) TC

Chair:Mohammad Jafari ([email protected]), Veterans Health Administration

Editors:John M. Davis ([email protected]), Veterans Health AdministrationDuane DeCouteau ([email protected]), Veterans Health AdministrationMohammad Jafari ([email protected]), Veterans Health Administration

Additional artifacts:This prose specification is one component of a Work Product that also includes: XML schemas: (list file names or directory name) Other parts (list titles and/or file names)

Related work:This specification replaces or supersedes: Cross-Enterprise Security and Privacy Authorization (XSPA) Profile of Security Assertion

Markup Language (SAML) v2.0 for Healthcare Version 1.0. 1 November 2009. OASIS Standard. http://docs.oasis-open.org/security/xspa/v1.0/saml-xspa-1.0-os.html.

This specification is related to the OASIS Security Assertion Markup Language (SAML) V2.0, comprised of the following documents: Authentication Context for the OASIS Security Assertion Markup Language (SAML) V2.0. 15

March 2005. OASIS Standard. http://docs.oasis-open.org/security/saml/v2.0/saml-authn-context-2.0-os.pdf.

Bindings for the OASIS Security Assertion Markup Language (SAML) V2.0. 15 March 2005. OASIS Standard. http://docs.oasis-open.org/security/saml/v2.0/saml-bindings-2.0-os.pdf.

Conformance Requirements for the OASIS Security Assertion Mark Markup Language (SAML) V2.0. 15 March 2005. OASIS Standard. http://docs.oasis-open.org/security/saml/v2.0/saml-conformance-2.0-os.pdf.

Assertions and Protocols for the OASIS Security Assertion Markup Language (SAML) V2.0. 15 March 2005. OASIS Standard. http://docs.oasis-open.org/security/saml/v2.0/saml-core-2.0-os.pdf.

Glossary for the OASIS Security Assertion Markup Language (SAML) V2.0. 15 March 2005. OASIS Standard. http://docs.oasis-open.org/security/saml/v2.0/saml-glossary-2.0-os.pdf.

Metadata for the OASIS Security Assertion Markup Language (SAML) V2.0. 15 March 2005. OASIS Standard. http://docs.oasis-open.org/security/saml/v2.0/saml-metadata-2.0-os.pdf.

Profiles for the OASIS Security Assertion Markup Language (SAML) V2.0. 15 March 2005. OASIS Standard. http://docs.oasis-open.org/security/saml/v2.0/saml-profiles-2.0-os.pdf.

Security Considerations for the OASIS Security Assertion Markup Language (SAML) V2.0. 15 March 2005. OASIS Standard. http://docs.oasis-open.org/security/saml/v2.0/saml-sec-consider-2.0-os.pdf.

SAML Version 2.0 Errata 05. 01 May 2012. OASIS Approved Errata. http://docs.oasis-open.org/security/saml/v2.0/errata05/os/saml-v2.0-errata05-os.html.

Declared XML namespaces:urn:oasis:names:tc:xacml:2.0urn:oasis:names:tc:xspa:1.0urn:oasis:names:tc:saml:2.0

saml-xspa-v2.0-wd01wd11 Working Working Draft 0111 17 10 March July 20132017Standards Track Draft Copyright © OASIS Open 2013. All Rights Reserved. Page 1 of 35

Abstract:This profile defines a set of SAML attributes and corresponding vocabularies for healthcare information exchange applications.This profile describes a framework in which SAML is encompassed by cross-enterprise security and privacy authorization (XSPA) to satisfy requirements pertaining to information-centric security within the healthcare community.

Status:This Working Draft (WD) has been produced by one or more TC Members; it has not yet been voted on by the TC or approved as a Committee Draft (Committee Specification Draft or a Committee Note Draft). The OASIS document Approval Process begins officially with a TC vote to approve a WD as a Committee Draft. A TC may approve a Working Draft, revise it, and re-approve it any number of times as a Committee Draft.

Initial URI pattern:http://docs.oasis-open.org/xspa/saml-xspa/v2.0/csd01/saml-xspa-v2.0-csd01.doc(Managed by OASIS TC Administration; please don’t modify.)

Copyright © OASIS Open 2013. All Rights Reserved.All capitalized terms in the following text have the meanings assigned to them in the OASIS Intellectual Property Rights Policy (the "OASIS IPR Policy"). The full Policy may be found at the OASIS website.This document and translations of it may be copied and furnished to others, and derivative works that comment on or otherwise explain it or assist in its implementation may be prepared, copied, published, and distributed, in whole or in part, without restriction of any kind, provided that the above copyright notice and this section are included on all such copies and derivative works. However, this document itself may not be modified in any way, including by removing the copyright notice or references to OASIS, except as needed for the purpose of developing any document or deliverable produced by an OASIS Technical Committee (in which case the rules applicable to copyrights, as set forth in the OASIS IPR Policy, must be followed) or as required to translate it into languages other than English.The limited permissions granted above are perpetual and will not be revoked by OASIS or its successors or assigns.This document and the information contained herein is provided on an "AS IS" basis and OASIS DISCLAIMS ALL WARRANTIES, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO ANY WARRANTY THAT THE USE OF THE INFORMATION HEREIN WILL NOT INFRINGE ANY OWNERSHIP RIGHTS OR ANY IMPLIED WARRANTIES OF MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE.

saml-xspa-v2.0-wd01wd11 Working Working Draft 0111 17 10 March July 20132017Standards Track Draft Copyright © OASIS Open 2013. All Rights Reserved. Page 2 of 35

Table of Contents1 Introduction ......................................................................................................................................... 4

1.1 Terminology ....................................................................................................................................... 41.2 Normative References ....................................................................................................................... 41.3 Non-Normative References ...............................................................................................................5

2 The XSPA Use-Cases ......................................................................................................................... 62.1 The Pull Use-Case ............................................................................................................................ 6

2.1.1 Variations ................................................................................................................................... 72.2 The Push Use-Case .......................................................................................................................... 72.3 Service User Access Control Service ................................................................................................82.4 Service Provider Access Control Service ..........................................................................................82.5 Security and Privacy Policies ............................................................................................................82.6 Attributes ........................................................................................................................................... 8

3 XSPA profile of SAML ......................................................................................................................... 93.1 Data Types ........................................................................................................................................ 93.1 Metadata Definitions .......................................................................................................................... 93.2 Namespace Requirements ................................................................................................................93.3 Attribute Rules of Equality ...............................................................................................................103.4 Attribute Naming Syntax, Restrictions and Acceptable Values ........................................................103.5 Example of Use ............................................................................................................................... 103.6 Attributes ......................................................................................................................................... 10

4 Other Considerations ........................................................................................................................134.1 Error States ..................................................................................................................................... 134.2 Security Considerations ...................................................................................................................13

4.2.1 Transmission Integrity ..............................................................................................................134.2.2 Transmission Confidentiality ....................................................................................................13

4.3 Confirmation Identifiers ....................................................................................................................135 Conformance ..................................................................................................................................... 14Appendix A. HL7 Concept Descriptor Data Type .................................................................................15Appendix B. Acknowledgments ............................................................................................................18Appendix C. Revision History ...............................................................................................................191 Introduction ......................................................................................................................................... 5

1.1 Terminology ....................................................................................................................................... 51.2 Normative References ....................................................................................................................... 51.3 Non-Normative References ...............................................................................................................6

2 XSPA profile of SAML Implementation ................................................................................................72.1 Interactions between Parties .............................................................................................................7

2.1.1 Access Control Service (Service User) ......................................................................................72.1.1 Access Control Service (Service Provider) .................................................................................72.1.2 Attributes .................................................................................................................................... 72.1.3 Security Policy ............................................................................................................................ 82.1.4 Privacy Policy ............................................................................................................................. 8

2.2 Protocols ........................................................................................................................................... 82.3 Transmission Integrity ....................................................................................................................... 8

saml-xspa-v2.0-wd01wd11 Working Working Draft 0111 17 10 March July 20132017Standards Track Draft Copyright © OASIS Open 2013. All Rights Reserved. Page 3 of 35

2.4 Transmission Confidentiality ..............................................................................................................82.5 Error States ....................................................................................................................................... 82.6 Security Considerations ..................................................................................................................... 82.7 Confirmation Identifiers ...................................................................................................................... 92.8 Metadata Definitions .......................................................................................................................... 92.9 Naming Syntax, Restrictions and Acceptable Values ........................................................................92.10 Namespace Requirements ..............................................................................................................92.11 Attribute Rules of Equality ...............................................................................................................92.12 Attribute Naming Syntax, Restrictions and Acceptable Values ........................................................9

2.12.1 Name ....................................................................................................................................... 92.12.2 National Provider Identifier (NPI) – (optional) ...........................................................................92.12.3 Organization ........................................................................................................................... 102.12.4 Organization-ID ...................................................................................................................... 102.12.5 Organizational-Hierarchy ........................................................................................................102.12.6 Structural Role ....................................................................................................................... 102.12.7 Functional Role (optional) ......................................................................................................102.12.8 Permission (optional) .............................................................................................................102.12.9 Action ..................................................................................................................................... 112.12.10 Execute (optional) ................................................................................................................112.12.11 Object ................................................................................................................................... 112.12.12 Purpose of Use (POU) .........................................................................................................112.12.13 Patient Authorization ............................................................................................................122.12.14 Supported Obligations ..........................................................................................................122.12.15 Supported Refrain Policies ...................................................................................................122.12.16 Resource .............................................................................................................................. 13

3 Conformance ..................................................................................................................................... 143.1 Introduction ...................................................................................................................................... 143.2 Conformance Tables .......................................................................................................................15

Appendix A. Acknowledgments ............................................................................................................17Appendix B. Revision History ...............................................................................................................18

saml-xspa-v2.0-wd01wd11 Working Working Draft 0111 17 10 March July 20132017Standards Track Draft Copyright © OASIS Open 2013. All Rights Reserved. Page 4 of 35

[1] IntroductionThis document profile defines a set of SAML attributes and corresponding vocabularies for describes a framework that provides access control interoperability useful in the healthcare environment. Interoperability is achieved using SAML assertions healthcare information exchange applicationsthat carry common semantics and vocabularies in exchanges specified below.

1.1 TerminologyThe key words “MUST”, “MUST NOT”, “REQUIRED”, “SHALL”, “SHALL NOT”, “SHOULD”, “SHOULD NOT”, “RECOMMENDED”, “MAY”, and “OPTIONAL” in this document are to be interpreted as described in [RFC2119].

The following definitions establish additional terminology and usage in this profile:

Access Control Service (ACS)A service that provides the basic operational aspects of access control such as making access control decision information (ADI) available to access decision components and performing access control functions [HL7-SLS: Appendix A. Glossary of Terms]. – The Access Control Service is the This service would be utilized by both the Service Provider and/or Service Userenterprise security service .that supports and implements user-side and service-side access control capabilities. The service would be utilized by the Service and/or Service User.

Functional RoleFunctional roles are roles that are bound to the realization/performance of actions, such as Authorizer. [ ISO/TS 21298:2008: 5.5 Functional Roles].

Object – An object is an entity that contains or receives information. The objects can represent information containers (e.g., files or directories in an operating system, and/or columns, rows, tables, and views within a database management system) or objects can represent exhaustible system resources, such as printers, disk space, and central processing unit (CPU) cycles. ANSI RBAC (American National Standards Institute Role Based Access Control)

Operation - An operation is an executable image of a program, which upon invocation executes some function for the user. Within a file system, operations might include read, write, and execute. Within a database management system, operations might include insert, delete, append, and update. An operation is also known as an action or privilege. ANSI RBAC

Permission -

An approval to perform an operation on one or more protected resourcesAn approval to perform an operation on one or more RBAC protected objects. [ANSI-INCITS 359-2004: 4. Terms and DefinitionsANSI RBAC].

Principal An entity whose identity can be authenticated. Examples include a human user, a process, a system, or an organization [ITUT-X.811: 3.15. Principal].

Structural Role -

Structural roles (also referred to as Organizational Roles) correspond to A job function within the context of an organizationhuman or organizational categories and describe prerequisites, feasibilities, or competences for actions, for example Dental Assistant. Structural roles differ from policy domain to policy domain, within and across organizational boundaries, and

saml-xspa-v2.0-wd01wd11 Working Working Draft 0111 17 10 March July 20132017Standards Track Draft Copyright © OASIS Open 2013. All Rights Reserved. Page 5 of 35

especially between different jurisdictions and countries. [ISO/TS 21298:2008: 5.3 Structural Roles] whose permissions are defined by operations on workflow objects. ASTM (American Society for Testing and Materials) E2595-2007

Service Consumer (SC)An individual entity, such as on an Electronic Health Record (EHR) or personal health record (PHR) system, that makes a service request of a Service Provider.

Service Provider (SP) - The service provider represents tA he system, such as an electronic health record system at a hospital, which providesing a protected resources and relies on the provided security service [HL7-SLS: Appendix A. Glossary of Terms].

and relies on the provided security service.

Entity - An entity may also be known as a principal and/or subject, which represents an application, a machine, or any other type of entity that may act as a requester in a transaction.

Service User - The service user represents any individual entity [such as on an Electronic Health Record (EHR)/personal health record (PHR) system] that needs to make a service request of a Service Provider.

[1.2] Normative References[RFC2119] Bradner, S., “Key words for use in RFCs to Indicate Requirement Levels”,

BCP 14, RFC 2119, March 1997. http://www.ietf.org/rfc/rfc2119.txt.[SAMLPROF] “Profiles for the OASIS Security Assertion Markup Language, v2.0,” March

2005, OASIS Standard, http://docs.oasis-open.org/security/saml/v2.0/saml-profiles-2.0-os.pdf

[ANSI-INCITS 359-2004] ANSI-INCITS 359-2004 Role-Based Access Control. 2004.[ASTM E1986-09(2013)] ASTM International, Standard Guide for Information Access

Privileges to Health Information, DOI: 10.1520/E1986-09R13, 2013. [ASTM E1986-98 (2005)] Standard Guide for Information Access Privileges to Health

Information. [ASTM E2595 (2007)] Standard Guide for Privilege Management Infrastructure [SAML] “Security Assertion Markup Language (SAML) v2.0”, OASIS Standard, 15

March 2005, . http://docs.oasis-open.org/security/saml/v2.0/saml-core-2.0-os.pdf

[SAML-PROF] “Profiles for the OASIS Security Assertion Markup Language, v2.0,” March 2005, OASIS Standard. http://docs.oasis-open.org/security/saml/v2.0/saml-profiles-2.0-os.pdf

[HL7-HCS] HL7 Security Technical Committee, HL7 Healthcare Privacy and Security Classification System (HCS) Release 1, August 2014. http://www.hl7.org/implement/standards/product_brief.cfm?product_id=345

[HL7-PERM] HL7 Security Technical Committee, HL7 Version 3 Standard: Role-based Access Control Healthcare Permission Catalog, (Available through http://www.hl7.org/library/standards.cfm), Release 1, Designation: ANSI/HL7 V3 RBAC, R1-2008, Approval Date 2/20/2008.[ISO 21090:2011] International Organization for Standardization, ISO 21090, Health Informatics-- Harmonized Data Types for Information Interchange, 2011.

saml-xspa-v2.0-wd01wd11 Working Working Draft 0111 17 10 March July 20132017Standards Track Draft Copyright © OASIS Open 2013. All Rights Reserved. Page 6 of 35

[ISO/TS 21298:2008] International Organization for Standardization, ISO/TS 21298, Health Informatics-- Functional and Structural Roles, 2008.

[HL7-CONSENT] HL7 Consent Related Vocabulary Confidentiality Codes Recommendation, http://lists.oasis-open.org/archives/xacml-demo-tech/200712/doc00003.doc, from project submission: http://lists.oasis-open.org/archives/xacml-demo-tech/200712/msg00015.html[HL7-PERM] HL7 Security Technical Committee, HL7 Version 3 Standard: Role-based Access Control Healthcare Permission Catalog, Release 2, February 2010. http://www.hl7.org/implement/standards/product_brief.cfm?product_id=72

[HL7-SLS] HL7 Version 3 Standard: Privacy, Access and Security Services Conceptual Model; Security Labeling Service, Release 1:2014. http://www.hl7.org/implement/standards/product_brief.cfm?product_id=360

[ITUT-X.811] ITU-T Recommendation X.811, Information Technology, Open Systems Interconnection, Security Framework for Open Systems, Authentication Framework, April 1995.

[NIST-800-63-1] National Institute of Standards and Technology, Special Publication 800-63-1, Electronic Authentication Guideline, December 2011. http://csrc.nist.gov/publications/nistpubs/800-63-1/SP-800-63-1.pdf

[XACML-V3.0] eXtensible Access Control Markup Language (XACML) Version 3.0. 22 January 2013. OASIS Standard. http://docs.oasis-open.org/xacml/3.0/xacml-3.0-core-spec-os-en.html

[1.3] Non-Normative References[HL7-Core-Schema-v3] HL7 International's Version 3 Normative Edition 2013, Processable

Content, Core Schemas, ISO 21090 HL7 R2 Data Types, May 2013.[JSON] T. Bray, The JavaScript Object Notation (JSON) Data Interchange Format,

https://tools.ietf.org/html/rfc7159 [XSPA-SAML-INTRO] OASIS Committee Working Draft, “Introductory overview of XSPA Profile

of SAML for Healthcare,” http://www.oasis-open.org/committees/document.php?document_id=30407

[XSPA-EXAMPLES] OASIS Committee Working Draft, “Implementers Guide of XSPA for Healthcare – The Nationwide Health Information Network (NwHIN),”

saml-xspa-v2.0-wd01wd11 Working Working Draft 0111 17 10 March July 20132017Standards Track Draft Copyright © OASIS Open 2013. All Rights Reserved. Page 7 of 35

2

saml-xspa-v2.0-wd01wd11 Working Working Draft 0111 17 10 March July 20132017Standards Track Draft Copyright © OASIS Open 2013. All Rights Reserved. Page 8 of 35

[3]

saml-xspa-v2.0-wd01wd11 Working Working Draft 0111 17 10 March July 20132017Standards Track Draft Copyright © OASIS Open 2013. All Rights Reserved. Page 9 of 35

[4]

saml-xspa-v2.0-wd01wd11 Working Working Draft 0111 17 10 March July 20132017Standards Track Draft Copyright © OASIS Open 2013. All Rights Reserved. Page 10 of 35

[5] XSPA profile of SAML Implementation

saml-xspa-v2.0-wd01wd11 Working Working Draft 0111 17 10 March July 20132017Standards Track Draft Copyright © OASIS Open 2013. All Rights Reserved. Page 11 of 35

[6] The XSPA profile of SAML describes the minimum vocabulary necessary to provide access control over resources and functionality within and between healthcare information technology (IT) systems. Additional introductory information and examples can be found in Cross-Enterprise Security and Privacy Authorization (XSPA) Implementers Guide of XSPA for Healthcare - The Nationwide Health Information Network (NwHIN) [XSPA-EXAMPLES].

saml-xspa-v2.0-wd01wd11 Working Working Draft 0111 17 10 March July 20132017Standards Track Draft Copyright © OASIS Open 2013. All Rights Reserved. Page 12 of 35

[7] Interactions between PartiesThe XSPA Use-Cases

{non-normative}The core use-cases for this profile are the cross-enterprise exchange of protected data objects from a Service Provider (SP) to a Service Consumer (SC). Figure 2 displays depicts an overview of these use-casesinteractions . between parties in the exchange of healthcare information. Entities in this figure will be discussed in the upcoming subsections. There are two main exchange use-cases: Pull and Push. In the Pull scenario, the SC sends a request to the SP asking for a data object (a Read command). In the Push Scenario, the SC sends a request to the SP which includes some data object to be accepted by the SP (a Create or Update command). In some cases, the request may include only a command and no data (a Delete or Execute command). The event flow for processing such requests is similar to that of Push.In both scenarios, the request includes SAML attribute assertions that vouch for the identity of the requesting Principal and other attribute that are consequential in making the access control decision at the SP’s side such as the SC’s organizational attributes and transaction attributes such as the purpose of use.In the Pull scenario, these attributes are used by the SP’s ACS to make the decision whether or not the requesting Principal is authorized to receive a copy of the requested data. In the Push scenario, these attributes are used by the SP’s ACS to decide whether or not the requesting Principal is authorized to add new data to the SP, update existing data, or run a command such as Delete. These attributes may also vouch for the identity attributes of the Principal’s signature on the submitted data object. In both scenarios, the presented attributes are also used by the SP to record auditing information about the transaction. In the Pull scenario, the SP’s response includes the requested data (if the request is authorized) or otherwise, a signaling message indicating the SP’s decision that the request is unauthorized. In the Push scenario, the SP’s response includes the signaling message indicating whether or not the request was accepted by the SP. In addition to the main cases described above the attributes names and values defined in this profile can be used in some other cases as well. For example, the SP may include some SAML Assertions in its response to vouch for some of SP’s organizational attributes, or carry the identity attributes of the signer of the data object when a requested data object is included in the response. Some of these attributes may also be used by either of the parties involved in the information exchange to record an audit event.

saml-xspa-v2.0-wd01wd11 Working Working Draft 0111 17 10 March July 20132017Standards Track Draft Copyright © OASIS Open 2013. All Rights Reserved. Page 13 of 35

Mohammad Jafari, 07/27/15,
Update.

Security and Privacy Policies

Access Control DecisionRequest

Assertions

Access Control Service

Access Control Service

Service Consumer

Service Provider

Access Control Request Assertions

Request + Identity Assertions + Authorization Attributes

Response

Figure 1: The main event flow in the XSPA use case.

2.1 The Pull Use-CaseThe main scenario for Pull is as follows

A Principal residing at the SC initiates a request to access a protected resource residing at the SP.

SC’s ACS performs authorization to make sure the requesting Principal is authorized to make such a request. The current profile does not cover this transaction.

If the request is deemed authorized, the SC sends a request to its ACS to receive Identity and Authorization Attribute Assertions corresponding to the Principal, the organization, and the context of the transaction, e.g. purpose of use.

The SC sends a request to the SP for receiving a copy of the data object in question. The request includes the Identity Assertions and other Authorization Attributes.

The SP captures the request and calls its own ACS. If the ACS deems the request authorized, the SP sends a packaged copy of the requested

data object to the SC. This copy is not necessarily identical to the original data; it may be annotated with security labels and handling instructions or some portions of it may be redacted or masked depending on the policies.

The SC receives the packaged data and makes the data available to the requesting Principal while enforcing the corresponding handling instructions and policies.

2.1.1 VariationsThe Pull use-case may have some variations.

Proactive Pull: The SC may proactively send the request to acquire the data before the Principal’s request. For example, when an appointment is scheduled for a patient at a facility, the scheduling system at the facility may request the patient’s health record in advance, before the physician explicitly asks for it at the time of appointment. In such cases, the Principal making the request is a system entity, e.g. the scheduling system. This is especially the case when large data volumes need to be exchanged or the connection has a high latency/delay. Depending on the circumstances, at the time of data exchange the SC may or may not know the precise identity of the principal which will eventually use the data. For example, if an appointment is scheduled for a patient a week in advance, the identity of the physician assigned to the appointment may not be known in advance and at the time of exchange. In such cases, only a limited set of attributes will be provided by SC.

saml-xspa-v2.0-wd01wd11 Working Working Draft 0111 17 10 March July 20132017Standards Track Draft Copyright © OASIS Open 2013. All Rights Reserved. Page 14 of 35

Delegated Pull: A Principal may initiate a request on behalf of another Principal, for example, an admin assistant may request a patient’s record on behalf of a physician. In such cases, depending on the application, the asserted attributes may include the attributes of either or both Principals.

Poll-Based Subscription: The Principal may register with a Subscription Broker at SC’s side to set up a poll-based subscription so that the Broker repeats the request on a regular basis to get a fresh copy of the requested data objects. Depending on the frequency of the poll, the Broker may also re-use the assertions issued by its local ACS if they are still valid. This is equivalent to making multiple Pull requests.

Notification-Based Subscription: A Broker at the SP’s side can provide a subscription service so that the SC can register to receive a fresh copy of the data object whenever the data object is updated. This is equivalent to sending a Pull request and receiving multiple responses.

2.2 Elements described in the figure are explained in the subsections below. The Service Request, Identity Assertion, and Authorization Attributes in Figure 1 are prepared by the Service User Access Control Service and MAY be passed in a single assertion from the Service User to the Service Provider.  The Service Provider Access Control Service evaluates the request against policy and indicates to the Service Provider if the request may be fulfilled.The Push Use-Case

The main scenario for Push is as follows The Principal residing at the SC initiates a Push request to submit a data object to SP. This

may be for creating a new data object or updating an existing one. SC’s ACS performs authorization to make sure the requesting Principal is authorized to

make such a request. The current profile does not cover this transaction. If the request is deemed authorized, the SC sends a request to its ACS to receive attribute

assertions corresponding to the Principal, the organization, and the transaction. The SC sends a Push request to the SP which includes a data object to be submitted to SP

as well as the attribute assertions corresponding to the requesting principal and the SC. The SP captures the request and calls its own ACS. If the ACS finds the request authorized, the SP consumes the data object and sends back a

signaling message to acknowledge the receipt of data. This may include other information such as the unique identifier assigned to the data object by the server in the case of creating a new data object.

saml-xspa-v2.0-wd01wd11 Working Working Draft 0111 17 10 March July 20132017Standards Track Draft Copyright © OASIS Open 2013. All Rights Reserved. Page 15 of 35

Access Control Service

Figure 2: Interaction between Parties

[7.1]

[7.2] Service Consumer Access Control Service (Service User)- The XSPA profile of SAML supports sending all requests through an The Service Consumer

Access Control Service (ACS) provides identity and access control functions to the SC. The Identity Provider (IdP. ) resides within the ACS although it may also act as a bridge to a third-party identity provider. Upon request, the ACS The Access Control Service receives the Service User request and responds with a produces SAML assertions for the identity and authorization attributes, such as the requesting user’s ID, containing user authorizations and attributes. To perform its function, the ACS collects all the attributes (e.g. organizationorganization -iIdD, , structural structural role, , ffunctional role, and , ppurpose of use. These assertions are included in the request sent by the SC to the SP., requested resource, and actions) necessary to create the Service User requested assertion.

In addition to creating the request, the requesting ACS is responsible for enforcing local security and privacy policy.

[7.3] Service Provider Access Control Service (Service Provider)The Service Provider ACS provides identity and access control functions for the SP. It includes components for is responsible for the parsing of assertions, evaluating the assertions against the

saml-xspa-v2.0-wd01wd11 Working Working Draft 0111 17 10 March July 20132017Standards Track Draft Copyright © OASIS Open 2013. All Rights Reserved. Page 16 of 35

security and privacy policiesy and making authorization decisions, security labeling services for deciding security labels for a data object, and privacy preserving services for enforcing privacy decisions such as masking and redaction. and making and enforcing a decisionThe Service Provider enforces the decisions made by its ACS. on behalf of the Service Provider.

[7.4] Security and Privacy PoliciesyThe sSecurity and privacy policiesy includes the rules regarding applicable to authorizations required to accessing a protected resources. Such rules and are based on various additional security conditionsattributes such as the requesting Principal’s, organization, role, purpose of use, security clearance, (time and location of access, time of day, cardinality, separation of duty, purpose, etc.) that constrain enforcement. They may also iPrivacy PolicyThe privacy policy includncludee s the set of consent directives and other privacy conditions rules about packaging the data objects (e.g. annotating with security labels and handling instructions) and segmenting the data (e.g. object masking, or redacting parts of the data object) object filtering, user, role, purpose, etc.), as well as patients’ preferences encoded as patient Consent Directives. This profile does not discuss the details of such policies. that constrain enforcement.

2.3[7.5] AttributesAttributes are information related pertaining to the access request such as the to user ID, location, role, organization, and purpose of use , and requested resource requirements and actions necessary to make an access control decisionwhich are consequential in making access control decisions.

saml-xspa-v2.0-wd01wd11 Working Working Draft 0111 17 10 March July 20132017Standards Track Draft Copyright © OASIS Open 2013. All Rights Reserved. Page 17 of 35

3 XSPA profile of SAML The XSPA profile of SAML describes the minimum vocabulary necessary to provide access control over resources and functionality within and between healthcare systems. The XSPA profile of SAML is an Attribute Profile as defined by Section 2.2 of Profiles for the OASIS Security Assertion Markup Language (SAML) [SAML-PROF].This profile utilizes the SAML 2.0 core specification to define the elements exchanged in a cross-enterprise service request that supports security and privacy policies. Requests MAY be exchanged using a SAML assertion containing elements such as: saml2:Issuer, saml2:NameID, and saml2:AttributeStatement.

3.1 Data TypesTable 1 shows the standard data types used for the attributes in this profile. We use the abbreviated form to refer to the data types in the rest of this document.

Table 1: Standard Data Types (Normative)

Type ID Abbreviated Form

http://www.w3.org/2001/XMLSchema#string String

http://www.w3.org/2001/XMLSchema#anyURI anyURI

Moreover, this profile defines a special data type, based on Concept Descriptor (CD) [ISO 21090:2011: 7.5.2 CD (Concept Descriptor)] which is also commonly used by HL7 [HL7-Core-Schema-v3]. The Concept Descriptor structure can capture values belonging to a code system by specifying the value code alongside the code for the vocabulary.Concept descriptors can be encoded in various forms including a number of XML structures. In order to keep the attribute values in this profile within the basic XML data types and guarantee interoperability with existing SAML and XACML products which may not support complex XML data structures, we suggest the following scheme to flatten CDs into a value of type anyURI:

[Fully-Qualified Unique identifier of the Code System ID]/[Code]For example, the purpose of “record management” (RECORDMGT) from HL7’s purpose of use vocabulary (2.16.840.1.113883.1.11.20448) can be encoded as the following:<saml:Attribute

xmlns:xacmlprof="urn:oasis:names:tc:SAML:2.0:profiles:attribute:XACML"NameFormat="urn:oasis:names:tc:SAML:2.0:attrname-format:uri" Name="urn:oasis:names:tc:xacml:2.0:action:purpose"xacmlprof:DataType="http://www.w3.org/2001/XMLSchema#anyURI">

<saml:AttributeValue xsi:type="http://www.w3.org/2001/XMLSchema#anyURI"> 2.16.840.1.113883.1.11.20448/RECORDMGT </saml:AttributeValue></saml:Attribute>

Note that the above mechanism for flattening the CD structure into a value of type anyURI requires some caution when the codes include URI-reserved characters such as the delimiter character “/”. In such cases the implementers must either use URI-encoding or use XML complex datatypes discussed below in order to avoid any ambiguity.If an ACS implementation supports complex attribute values and can guarantee interoperability with other ACS components, it MAY use XML encodings of the Concept Descriptor. The following two

saml-xspa-v2.0-wd01wd11 Working Working Draft 0111 17 10 March July 20132017Standards Track Draft Copyright © OASIS Open 2013. All Rights Reserved. Page 18 of 35

examples demonstrate using two different alternative XML encodings for Concept Descriptor attribute values:<saml:Attribute xmlns:xacmlprof="urn:oasis:names:tc:SAML:2.0:profiles:attribute:XACML"

NameFormat="urn:oasis:names:tc:SAML:2.0:attrname-format:uri" Name="urn:oasis:names:tc:xacml:2.0:action:purpose"xacmlprof:DataType="urn:hl7-org:v3:CD"><saml:AttributeValue xsi:type="urn:hl7-org:v3:CD"

xmlns:hl7="urn:hl7-org:v3" > <hl7:value hl7:type="CD"

hl7:code="RECORDMGT"hl7:displayName="records management"hl7:codeSystem="2.16.840.1.113883.1.11.20448"hl7:codeSystemName="Purpose of Use" />

</saml:AttributeValue></saml:Attribute>

<saml:Attributexmlns:xacmlprof="urn:oasis:names:tc:SAML:2.0:profiles:attribute:XACML"NameFormat="urn:oasis:names:tc:SAML:2.0:attrname-format:uri" Name="urn:oasis:names:tc:xacml:2.0:action:purpose"xacmlprof:DataType="http://hl7.org/fhir/coding"><saml:AttributeValue

xsi:type=http://hl7.org/fhir/coding xmlns:fhir="http://hl7.org/fhir">            <fhir:code>              <fhir:system fhir:value="2.16.840.1.113883.1.11.20448" />              <fhir:code fhir:value="RECORDMGT" />           </fhir:code>

</saml:AttributeValue></saml:Attribute>

3.1 Security Policy

[7.6] The security policy includes the rules regarding authorizations required to access a protected resource and additional security conditions (location, time of day, cardinality, separation of duty, purpose, etc.) that constrain enforcement.

[7.7] Privacy Policy

[7.8] The privacy policy includes the set of consent directives and other privacy conditions (object masking, object filtering, user, role, purpose, etc.) that constrain enforcement.Namespace Requirements

This profile defines the following namespaces: urn:oasis:names:tc:xspa:1.0urn:oasis:names:tc:xspa:2.0

saml-xspa-v2.0-wd01wd11 Working Working Draft 0111 17 10 March July 20132017Standards Track Draft Copyright © OASIS Open 2013. All Rights Reserved. Page 19 of 35

3.2 Assertion StructureThis profile uses the SAML <Attribute> element for all assertions. Since SAML Core Specifications require having a <Subject> element when attribute assertions are provided, it is RECOMMENDED that the value of <NameID> is provided with an appropriate value for Format and match the value of the following attribute if present:urn:oasis:names:tc:xacml:1.0:subject:subject-id

3.3 Attribute Naming Syntax, Restrictions and Acceptable ValuesAttribute names MUST adhere to the rules defined by Section 2.7.3.1 of SAML 2.0 Core Specifications [SAMLCore]. Additionally, to guarantee interoperability with OASIS eXtensible Access Control Markup Language (XACML), attribute names and values MUST also adhere to the XACML Attribute Profile of SAML [SAML-PROF:8.5 XACML Attribute Profile].The XML attribute NameFormat in <Attribute> elements MUST be set to:urn:oasis:names:tc:SAML:2.0:attrname-format:uri

The optional XML attribute FriendlyName (defined in Section 2.7.3.1 of SAML Core Specifications [SAMLCore]) MAY be used to carry an optional string name for the purposes of human readability.As prescribed by the XACML Attribute Profile of SAML [SAML-PROF:8.5 XACML Attribute Profile], each attribute element also includes a URI-valued XML attribute called DataType in the following XML namespace: urn:oasis:names:tc:SAML:2.0:profiles:attribute:XACML

The DataType XML attribute MUST be present unless its value can be assumed to be the default, i.e. http://www.w3.org/2001/XMLSchema#string.

3.4 Attribute Rules of EqualityTwo <Attribute> elements refer to the same SAML attribute if and only if their Name XML attribute values are equal in a binary comparison. The optional XML attribute FriendlyName plays no role in the comparison.

3.5 AttributesTable 2 shows the normative and optional attributes defined by this profile. Table 3 shows the list of deprecated attributes. Future versions of this profile may no longer support these attributes.

Table 2: AttributesN

ormativ

e Identifier1 DataType Description and Valid Values

Yes urn:oasis:names:tc:xacml:1.0:subject:subject-id String The Principal’s identifier. Deprecates

urn:oasis:names:tc:xspa:1.0:subject:subject-id

Yes urn:oasis:names:tc:xspa:1.0:subject:organization String The name of the organization to which the requesting

Principal belongs if applicable.

Yes urn:oasis:names:tc:xspa:1.0:subject:organization-id

anyURL The unique identifier of the organization, sub-

1 In this and subsequent tables, line-breaks in attribute names are for the purpose of type setting and readability; attribute identifiers are strings with no line-breaks.saml-xspa-v2.0-wd01wd11 Working Working Draft 0111 17 10 March July 20132017Standards Track Draft Copyright © OASIS Open 2013. All Rights Reserved. Page 20 of 35

Norm

ative Identifier DataType Description and Valid Values

organization and facility of the Service Consumer.

To represent the organizational hierarchy, using urn:oasis:names:tc:xspa:2.0:subject:organizational-hierarchy (below) is preferred.

Yes urn:oasis:names:tc:xspa:1.0:subject:child-organization

anyURI

Yes urn:oasis:names:tc:xspa:1.0:subject:facility

anyURI

Yes urn:oasis:names:tc:xspa:2.0:subject:organizational-hierarchy anyURI Unique identifiers of the consuming sub-organizations.

This is an alternative to using the separate attributes for each level as defined above.

Various levels of sub-organizations hierarchy shall be represented as multiple values of type anyURI in order of the most significant organization to the least.

Yes urn:oasis:names:tc:xacml:2.0:subject:role HL7CD The requesting Principal’s structural role. The values

must be taken from a standard vocabulary such as the ASTM Structural Roles Vocabulary [ASTM E1986-09(2013)].

No urn:oasis:names:tc:xspa:1.0:subject:functional-role HL7CD Functional roles provide a placeholder to group

permissions required for fine grain access control. The values must come from a standard vocabulary.

No urn:oasis:names:tc:xspa:1.0:subject:npi String National Provider ID provided by U.S. Government for

all active providers as required by Health Insurance Portability and Accountability Act (HIPAA) Privacy Disclosure Accounting.

No urn:oasis:names:tc:xspa:1.0: subject:permissions HL7CD The requesting Principal’s permissions which represent

the user’s capabilities. The values must be taken from a standard vocabulary such as HL7 RBAC Permission Catalog [HL7-PERM].

No urn:oasis:names:tc:xspa:2.0: subject:confidentiality-clearance

HL7CD The requesting Principal’s confidentiality clearance. The values must be taken from a standard vocabulary such as HL7 Confidentiality Codeset [HL7-HCS].

No urn:oasis:names:tc:xspa:2.0: subject:sensitivity-clearance HL7CD The requesting Principal’s sensitivity clearance. The

values must be taken from a standard vocabulary such as HL7 ActInformationSensitivityCodes [HL7-HCS].

No urn:oasis:names:tc:xspa:2.0: subject:integrity-clearance HL7CD The requesting Principal’s integrity clearances. The

values must be taken from a standard vocabulary such as HL7 Data Integrity Codeset [HL7-HCS].

No urn:oasis:names:tc:xspa:2.0: subject:compartment-clearance HL7CD The requesting Principal’s integrity clearance. The

values must be taken from a standard vocabulary.

Yes urn:oasis:names:tc:xacml:1.0:resource:resource-id String Unique identifier of the resource defined by and

controlled by the Servicing Provider. In the XSPA use-case this is the patient unique identifier.

The mechanism for identifying patients in a standardized way is outside the scope of the profile.

Yes urn:oasis:names:tc:xspa:2.0:resource:type HL7CD The type of the resource. The values must be taken

from a standard vocabulary such as [HL7-PERM].Deprecates urn:gov:hhs:fha:nhinc:service-type

saml-xspa-v2.0-wd01wd11 Working Working Draft 0111 17 10 March July 20132017Standards Track Draft Copyright © OASIS Open 2013. All Rights Reserved. Page 21 of 35

Norm

ative Identifier DataType Description and Valid Values

Yes urn:oasis:names:tc:xacml:1.0:action:action-id HL7CD The identifier of the requested action. The values must

be taken from a standard vocabulary such as [HL7-PERM].

Yes urn:oasis:names:tc:xacml:2.0:action:purpose HL7CD The purpose of use for the requested resource. The

values must be taken from a standard purpose of use vocabulary such as HL7 Security and Privacy Vocabulary [HL7-HCS].

Yes urn:oasis:names:tc:xspa:2.0:subject:supported-obligations HL7CD List of caveats that the service consumer ACS

supports. This is encoded as a multi-valued attribute with values taken from a standard vocabulary such as HL7 Security and Privacy Vocabulary [HL7-HCS].

Yes urn:oasis:names:tc:xspa:2.0:subject:supported-refrains HL7CD List of caveats that the service consumer ACS

supports. This is encoded as a multi-valued attribute with values taken from a standard vocabulary such as HL7 Security and Privacy Vocabulary [HL7-HCS].

No urn:oasis:names:tc:xspa:2.0:resource:patient-consent-directive

anyURI The pointer to the patient consent directive corresponding to the requested resource.

No urn:oasis:names:tc:xspa:2.0:resource:patient-consent-directive-type

anyURI In case the pointer to the patient consent attribute (above) is used, optionally, a document type can be specified using this attribute. This attribute SHALL NOT be present without a corresponding urn:oasis:names:tc:xspa:2.0:resource:patient-consent-directive attribute.

Table 3: Attributes Planned for Deprecation

Norm

ative Identifier DataType Description and Valid Values

No urn:oasis:names:tc:xspa:1.0:subject:subject-id String Deprecated by:

urn:oasis:names:tc:xacml:1.0:subject:subject-id

No urn:gov:hhs:fha:nhinc:service-type String Deprecated by:

urn:oasis:names:tc:xspa:2.0:resource:type

No urn:oasis:names:tc:xspa:1.0:subject:purposeofuse String Deprecated by:

urn:oasis:names:tc:xacml:2.0:action:purpose

saml-xspa-v2.0-wd01wd11 Working Working Draft 0111 17 10 March July 20132017Standards Track Draft Copyright © OASIS Open 2013. All Rights Reserved. Page 22 of 35

4 Other Considerations{non-normative}

[7.9] ProtocolsThis profile utilizes the SAML 2.0 core specification to define the elements exchanged in a cross-enterprise service request that supports security and privacy policies. Requests MAY be exchanged using a SAML assertion containing elements such as saml2:Issuer, saml2:NameID, and saml2:AttributeStatement.

[7.10] Transmission Integrity

[7.11] The XSPA profile of SAML recommends the use of reliable transmission protocols. Where transmission integrity is required, this profile makes no specific recommendations regarding mechanism or assurance level.

[7.12] Transmission Confidentiality

[7.13] The XSPA profile of SAML recommends the use of secure transmission protocols. Where transmission confidentiality is required, this profile makes no specific recommendations regarding mechanisms.

[7.14] Error StatesThis profile adheres to error states described SAML 2.0 Core Specifications [SAMLCore].in SAML 2.0.

4.1[7.15] Security ConsiderationsThe following security considerations are established for the XSPA profile of SAML:

Participating information domains have agreed to use XSPA profile and that a trust relationship exists,

Entities are members of defined information domains under the authorization control of a defined set of policies,

Entities have been identified and provisioned (credentials issued, privileges granted, etc.) in accordance with policy,

Privacy policies have been identified and provisioned (consents, user preferences, etc.) in accordance with policy,

Pre-existing security and privacy policies have been provisioned to Access Control Services, The capabilities and location of requested information/document repository services are

known, Secure channels are established as required by policy, Audit services are operational and initialized, and

saml-xspa-v2.0-wd01wd11 Working Working Draft 0111 17 10 March July 20132017Standards Track Draft Copyright © OASIS Open 2013. All Rights Reserved. Page 23 of 35

Entities have asserted membership in an information domain by successful and unique authentication.

4.1.1 Transmission IntegrityThe XSPA profile of SAML recommends the use of reliable transmission protocols. Where transmission integrity is required, this profile makes no specific recommendations regarding mechanism or assurance level.

4.1.2[7.15.1] Transmission ConfidentialityThe XSPA profile of SAML recommends the use of secure transmission protocols. Where transmission confidentiality is required, this profile makes no specific recommendations regarding mechanisms.

4.2[7.16]

[7.17] Confirmation IdentifiersThe manner used by the relying party to confirm that the requester message came from a system entity that is associated with the subject of the assertion will depend upon the context and sensitivity of the data. For confirmations requiring a specific level of assurance, this profile specifies the use of National Institute of Standards and Technology (NIST) Special Publication 800-63 Electronic Authentication Guideline [NIST-800-63-1]. In addition, this profile specifies the Liberty Identity Access Framework (LIAF) criteria for evaluating and approving credential service providers.

4.3 JSON EncodingMany modern applications use protocols other than SAML which are based on JSON [JSON] but need to exchange the same attributes as defined in this profile —sometimes referred to as claims. This profile suggests using the same attribute identifiers in JSON format. Attribute values of type String and anyURI can be encoded straightforwardly in JSON. For encoding values of type Hl7CD, implementers should either use the flattened notation described in Section 3.1 or use the following JSON structure:{ "system":[ code system id] "code":[code]}

The example attribute assertion from Section 3.1 can thus be encoded in JSON as:{ "urn:oasis:names:tc:xacml:2.0:action:purpose": { "system":"2.16.840.1.113883.1.11.20448", "code":"RECORDMGT", }}

Note in both of the above snippets the whitespace is added only for the sake of readability.

[7.18] Metadata DefinitionsThis profile will utilize the SAML <Attribute> element for all assertions.

[7.19] Naming Syntax, Restrictions and Acceptable Values

saml-xspa-v2.0-wd01wd11 Working Working Draft 0111 17 10 March July 20132017Standards Track Draft Copyright © OASIS Open 2013. All Rights Reserved. Page 24 of 35

Mohammad Jafari, 07/27/15,
This seems obsolete? Kantara reference?

This profile conforms to SAML 2.0 specification.

[7.20] Namespace RequirementsThe NameFormat Extensible Markup Language (XML) attribute in <Attribute> elements MUST be urn:oasis:names:tc:SAML:2.0:attrname-format:uri.

[7.21] Attribute Rules of EqualityAll asserted attributes will be typed as strings. Two <Attribute> elements refer to the same SAML attribute if and only if their Name XML attribute values are equal in a binary comparison.

[7.22] Attribute Naming Syntax, Restrictions and Acceptable Values

The Name XML attribute MUST adhere to the rules specified for that format, as defined by [SAMLCore]. For purposes of human readability, there may also be a requirement for some applications to carry an optional string name together with the Object Identifier (OID) Uniform Resource Name (URN). The optional XML attribute FriendlyName (defined in [SAMLCore]) MAY be used for this purpose, but is not translatable into an XACML attribute equivalent.This profile will utilize the namespace of urn:oasis:names:tc:xspa:1.0Example of use:

<saml:Attribute NameFormat="urn:oasis:names:tc:SAML:2.0:attrname-format:uri" Name="urn:oasis:names:tc:xspa:1.0:organization"> <saml:AttributeValue xsi:type="http://www.w3.org/2001/XMLSchema#string"> County Hospital </saml:AttributeValue></saml:Attribute>

[7.22.1] NameName is the name of the user as required by Health Insurance Portability and Accountability Act (HIPAA) Privacy Disclosure Accounting. The name will be typed as a string and in plain text with an identifying tag of <urn:oasis:names:tc:xspa:1.0:subject:subject-id>.

[7.22.2] National Provider Identifier (NPI) – (optional)NPI is a US Government issued unique provider identifier required for all Health Insurance Portability and Accountability Act (HIPAA) Privacy Disclosure Accounting transactions. NPI will be typed as a string in plain text with an identifying element of <urn:oasis:names:tc:xspa:1.0:subject:npi>.

[7.22.3] OrganizationOrganization is the organization that the user belongs to as required by HIPAA Privacy Disclosure Accounting. Organization will be typed as a string in plain text with an identifying element of <urn:oasis:names:tc:xspa:1.0:subject:organization>.

[7.22.4] Organization-IDOrganization-ID is the unique identifier of the consuming organization and/or facility. <urn:oasis:names:tc:xspa:1.0:subject:organization-id>.

[7.22.5] Organizational-Hierarchy

saml-xspa-v2.0-wd01wd11 Working Working Draft 0111 17 10 March July 20132017Standards Track Draft Copyright © OASIS Open 2013. All Rights Reserved. Page 25 of 35

Unique identifier of the consuming sub-organization or region. If there are additional levels of sub-organizations, they shall be represented as multiple values in order of the most significant organization to the least. <urn:oasis:names:tc:xspa:2.0:subject:organizational-hierarchy>

<saml:AttributeStatement id="urn:oasis:names:tc:xpsa:2.0:subject:organizational-hierarchy"…>        <saml:Attribute …>                <saml:AttributeValue>urn:kp:region:colorado</saml:AttributeValue>                <saml:AttributeValue>urn:kp:region:elpaso</saml:AttributeValue>                <saml:AttributeValue>Penrose Hospital</saml:AttributeValue>        </saml:Attribute></saml:AttributeStatement>

Another example would be how NwHIN describes Organization and Facility. Organization is defined by HomeCommunity, and represented by OID, Kaiser maybe represented by 1.1.1.1, and one of its facilities, example of facility #2, would be represented as the assigning authority, it oid would be 1.1.1.1.2.

[7.22.6] Structural RoleStructural Role is the value of the principal’s structural role. Structural roles that are used in this profile are defined in Table 2 “Healthcare Personnel that Warrant Differing Levels of Access Control” of ASTM 1986-98 (2005) Standard Guide for Information Access Privileges to Health Information. ASTM E1986Structural roles are described in greater depth in ASTM E2595-07, Standard Guide for Privilege Management Infrastructure.Structural roles provide authorizations on objects at a global level without regard to internal details. Examples include authorization to participate in a session, authorization to connect to a database, authorization to participate in an order workflow, or connection to a protected uniform resource locator (URL). The structural role is the role name referenced by the patient’s consent directive.

[7.22.7] Functional Role (optional)Functional role can include custom attributes related to application functionality agreed upon by the parties in an exchange.

[7.22.8] Permission (optional)Permission is not required by this profile. Permission is determined by the action on the target. See “Action” below. The permission is the ANSI INCITS (International Committee for Information Technology Standards) RBAC compliant action-object pair representing the authorization required for access by the protected resource.

[7.22.9] ActionThe HL7 (Health Level Seven) RBAC Permission catalog is an ANSI INCITS 359-2004 RBAC compliant vocabulary that provides a minimal permission subset for interoperability. This profile specifies the use of the following HL7 RBAC Permission Catalog Actions: Append Create

saml-xspa-v2.0-wd01wd11 Working Working Draft 0111 17 10 March July 20132017Standards Track Draft Copyright © OASIS Open 2013. All Rights Reserved. Page 26 of 35

Delete Read Update Execute

[7.22.10] Execute (optional)Execute refers to complex functions and stored procedures that provide for extended actions within the healthcare environment. Examples include "print", "suspend", and "sign". Execute can include custom attributes related to functionality agreed upon by the parties in an exchange.

[7.22.11] ObjectObjects are any system resource subject to access control. This profile specifies the use of HL7 RBAC Permission Catalog as the object vocabulary in an action-object permission pair. HL7 RBAC Permission Catalog provides the minimum set of interoperable objects suitable for the support of security and privacy access control decisions in this profile.

[7.22.12] Purpose of Use (POU)Purpose of use provides context to requests for information resources. Each purpose of use will be unique to a specific assertion, and will establish the context for other security and privacy attributes. For a given claim, all assertions must be bound to the same purpose of use. Purpose of use allows the service to consult its policies to determine if the user’s authorizations meet or exceed those needed for access control. Purpose of Use will be typed as string with an identifying element of <urn:oasis:names:tc:xspa:1.0:subject:purposeofuse>

An authoritative listing of values can be found at following URL for GeneralPurposeOfUse values represented by OID2.16.840.1.113883.1.11.20449;

http://wiki.hl7.org/index.php?title=HL7_Security_Document_Library

Figure 3 illustrates the general relationship between subject (user) and granted permissions to specific objects as a relationship to their POU. Roles in this relationship are placeholders for permissions. Permission defines the object-action relationship.

saml-xspa-v2.0-wd01wd11 Working Working Draft 0111 17 10 March July 20132017Standards Track Draft Copyright © OASIS Open 2013. All Rights Reserved. Page 27 of 35

Figure 3: Determining Subject Permissions

[7.22.13] Patient AuthorizationThe URI shall be in the form of an opaque identifier that references the authoritative patient authorization. The mechanism for retrieving the authorization must be coordinated between the requesting organization and the servicing organization. The content of the authorization, and the protocol to retrieve the authorization is beyond the scope of this profile.e.x. urn:uuid{550e8400-e29b-41d4-a716-446655440000}

[7.22.14] Supported ObligationsSpecifies user Obligation related to use of Sensitive Health Information that the requesting organization agrees(promise) and is capable of enforcing.

Authoritative values for this attribute may be found at HL7 represented by OID 2.16.840.1.113883.1.11.20445. http://wiki.hl7.org/index.php?title=HL7_Security_Document_Library

[7.22.15] Supported Refrain PoliciesSpecifies Prohibitions on the use of Sensitive Health Information that the requesting organization agrees to (promises) and is capable of enforcing.

Authoritative values for this attribute may be found at HL7 represented by OID 2.16.840.1.113883.1.11.20446.

http://wiki.hl7.org/index.php?title=HL7_Security_Document_Library

saml-xspa-v2.0-wd01wd11 Working Working Draft 0111 17 10 March July 20132017Standards Track Draft Copyright © OASIS Open 2013. All Rights Reserved. Page 28 of 35

[7.22.16] ResourceThe object(s) for which access is requested must be identical to the object(s) for which the authorization assertions of this profile apply. A requested resource is not required to be a simple object but may instead be a process or workflow. This profile specifies the use of HL7 RBAC Permission Catalog as the resource vocabulary.

saml-xspa-v2.0-wd01wd11 Working Working Draft 0111 17 10 March July 20132017Standards Track Draft Copyright © OASIS Open 2013. All Rights Reserved. Page 29 of 35

[8] Conformance[8.1] IntroductionThe XSPA profile of SAML addresses the following aspects of conformance:This profile describes a minimum vocabulary set that must be supported iIn order to claim conformance, .an access control system MUST conform to Section 2 of SAML 2.0 Core Specifications [SAML] and support all the requirements mentioned in Sections 3.1 and Section 3.3 through 3.7 including all the attributes marked as normative in Table 2.

4.4 US-Realm ConformanceIn addition to the above requirements, an access control system belonging to the United States jurisdiction MUST use specific vocabularies for some of the attributes values as described in Table 4. Note that some of these value-sets are extensible and therefore new extended values can be added to the vocabulary if needed.

Table 4. Vocabulary Requirements for US-Realm Conformance

Attribute Identifier Vocabulary

urn:oasis:names:tc:xacml:2.0:subject:role ASTM Structural Roles Vocabulary [ASTM E1986-09(2013)].

urn:oasis:names:tc:xspa:1.0:subject:permissionsHL7 Healthcare Permissions Vocabulary [HL7-PERM: Appendix A - Healthcare Permission Tables].

urn:oasis:names:tc:xspa:2.0:subject:confidentiality-clearance

HL7 Confidentiality Codeset (OID: 2.16.840.1.113883.5.25) [HL7-HCS: Security Observation Vocabulary].

urn:oasis:names:tc:xspa:2.0:subject:sensitivity-clearance

HL7 Information Sensitivity Codeset (OID: 2.16.840.1.113883.5.4) [HL7-HCS: Security Observation Vocabulary].

urn:oasis:names:tc:xspa:2.0:subject:integrity-clearance HL7 Integrity Codeset (OID: 2.16.840.1.113883.5.1063) [HL7-HCS: Security Observation Vocabulary].

urn:oasis:names:tc:xspa:2.0:subject:compartment-clearance

HL7 Information Compartment Codeset (OID: 2.16.840.1.113883.5.4) [HL7-HCS: Security Observation Vocabulary].

urn:oasis:names:tc:xspa:2.0:resource:type HL7 Healthcare Object Codeset [HL7-PERM: 6.Object Definitions].

urn:oasis:names:tc:xacml:1.0:action:action-id HL7 Healthcare Operations Codeset [HL7-PERM: 5. Operation Definitions].

urn:oasis:names:tc:xacml:2.0:action:purposeHL7 Purpose of Use Codeset (OID: 2.16.840.1.113883.5.8) [HL7-HCS: Security Observation Vocabulary].

urn:oasis:names:tc:xspa:2.0:subject:supported-obligations

HL7 Obligation and Refrain Policy Codeset (OID: 2.16.840.1.113883.5.4) [HL7-HCS: Security Observation Vocabulary].

urn:oasis:names:tc:xspa:2.0:subject:supported-refrainsHL7 Obligation and Refrain Policy Codeset (OID: 2.16.840.1.113883.5.4) [HL7-HCS: Security Observation Vocabulary].

saml-xspa-v2.0-wd01wd11 Working Working Draft 0111 17 10 March July 20132017Standards Track Draft Copyright © OASIS Open 2013. All Rights Reserved. Page 30 of 35

Mohammad Jafari, 07/27/15,
What vocabulary? There are 5 different integrity vocabulary. Should we allow either?

An Implementation must conform at minimum to the SAML v2.0 specification. The following tables describes the Attribute naming syntax, restrictions, and acceptable values,

Table 1: Attribute Naming, Typing, and Acceptable Value Set

Identifier Type Valid Values

urn:oasis:names:tc:xacml:1.0:subject:subject-id String Is the name of the user as required by Health Insurance Portability and Accountability Act (HIPAA) Privacy Disclosure Accounting. The name will be typed as a string and in plain text.

urn:oasis:names:tc:xpsa:1.0:subject:organization anyURI Organization the requestor belongs to as required by Health Insurance Portability and Accountability Act (HIPAA)Privacy Disclosure Accounting.

urn:oasis:names:tc:xspa:1.0:subject:organization-id anyURI Unique identifier of the consuming organization and/or facility

urn:oasis:names:tc:xpsa:2.0:subject:organizational-hierarchy

anyURI Unique identifier of the consuming sub-organization or region. If there are additional levels of sub-organizations, they shall be represented as multiple values in order of the most significant organization to the least.

urn:oasis:names:tc:xspa:2.0:subject:permissions String HL7-PERM may be used here, but is not limited to just HL7 value sets.

urn:oasis:names:tc:xacml:2.0:subject:role String Structural Role refer to [ASTM E1986-98 (2005)] and its OID representation.

urn:oasis:names:tc:xspa:1.0:subject:purposeofuse anyURI For authoritative value refer to HL7 Privacy and Security Vocabulary.

urn:gov:hhs:fha:nhinc:service-type String NwHIN identifier that represents ws-address, PatientDiscovery, DocumentQuery, etc.

urn:oasis:names:tc:xacml:1.0:resource:resource-id String Unique identifier of the resource defined by and controlled by the servicing organization. In healthcare this is the patient unique identifier.

urn:oasis:names:tc:xspa:2.0:resource: type String For minimum interoperability set of objects and supporting actions refer to [HL7-PERM] and their OID representations. Again we are not limited here by HL7-PERM so should not be calling out in attribute name. Type could be PatientDiscovery, DocumentQuery, etc., and is implementation unique.

urn:oasis:names:tc:xspa:1.0:environment:locality String Unique identifier of the servicing organization.

urn:oasis:names:tc:xspa:2.0:subject:npi String National Provider ID provided by U.S. Government for all active providers.

urn:oasis:names:tc:xspa:2.0:subject:patient:authorization

anyURI Link to patient authorization to request information from servicing organization.

saml-xspa-v2.0-wd01wd11 Working Working Draft 0111 17 10 March July 20132017Standards Track Draft Copyright © OASIS Open 2013. All Rights Reserved. Page 31 of 35

Identifier Type Valid Values

urn:oasis:names:tc:xspa:2.0:subject:supported-obligation-policies

anyURI Listing of obligations that the requesting organization can capable and agrees (promise) to support. For authoritative value refer to HL7 Privacy and Security Vocabulary.

urn:oasis:names:tc:xspa:2.0:subject:supported-refrain-policies

anyURI Listing of refrain policies that the requesting organization is capable of and agrees(promise) to support. For authoritative value refer to HL7 Privacy and Security Vocabulary.

*Note: The OID for the HL7 Permission Catalog [HL7-PERM] is 2.16.840.1.113883.13.27. The OID for structural roles referenced in [ASTM E1986-98 (2005)] is 1.2.840.10065.1986.7

The mechanism used to identify the patent in a standardized way, e.g. resource:resource-id, is outside the scope of the profile. HL7 RBAC Permission Catalog [HL7-PERM] represents a conformant minimum interoperability set for object/action pairings. Conformance TablesThe following section identifies portions of the profile that MUST be adhered to in order to claim conformance.Note: “M” is mandatory “O” is optional.AttributesThe implementation MUST use the attributes associated with the following identifiers in the way this profile has defined.

Table 1: Conformance Attributes

Identifiers

urn:oasis:names:tc:xacml:1.0:subject:subject-id M

Urn:oasis:names:tc:xspa:1.0:subject:organization M

urn:oasis:names:tc:xspa:2.0:subject:organizational-hierarchy O

urn:oasis:names:tc:xspa:1.0:subject:organization-id O

urn:oasis:names:tc:xspa:1.0:subject::permissions O

urn:oasis:names:tc:xacml:2.0:subject:role ASTM E1986-98 (2005) Structured Role Value M

Urn:oasis:names:tc:xspa:1.0:subject:functional-role O

urn:oasis:names:tc:xspa:1.0:subject:purposeofuse M

urn:oasis:names:tc:xacml:1.0:resource:resource-id M

urn:oasis:names:tc:xacml:1.0:action:action-id O

urn:oasis:names:tc:xspa:1.0:resource::type M

saml-xspa-v2.0-wd01wd11 Working Working Draft 0111 17 10 March July 20132017Standards Track Draft Copyright © OASIS Open 2013. All Rights Reserved. Page 32 of 35

Identifiers

urn:oasis:names:tc:xspa:1.0:environment:locality M

urn:oasis:names:tc:xspa:2.0:subject:npi O

urn:oasis:names:tc:xspa:2.0:subject:patient:authorization O

urn:oasis:names:tc:xspa:2.0:subject:supported:obligation-policies O

urn:oasis:names:tc:xspa:2.0:subject:supported:refrain-policies O

saml-xspa-v2.0-wd01wd11 Working Working Draft 0111 17 10 March July 20132017Standards Track Draft Copyright © OASIS Open 2013. All Rights Reserved. Page 33 of 35

[Appendix A.] AcknowledgmentsThe following individuals have participated in the creation of this specification and are gratefully acknowledged:Participants:!!br0ken!!

Kel Callahan, HIPAAT International, Inc.John M. Davis, Veterans Health AdministrationDeCouteau, Duane, Veterans Health AdministrationMohammad Jafari, Veterans Health AdministrationAnthony Mallia, Veterans Health Administration

The TC especially thanks Kathleen Connor from HL7 Security and Privacy workgroup for her contribution to this profile.

[Participant Name, Affiliation | Individual Member][Participant Name, Affiliation | Individual Member]

saml-xspa-v2.0-wd01wd11 Working Working Draft 0111 17 10 March July 20132017Standards Track Draft Copyright © OASIS Open 2013. All Rights Reserved. Page 34 of 35

Appendix A.[Appendix B.] Revision History

Revision Date Editor Changes Madesaml-xspa-2.0-wd01 11 Mar. 2012 Duane DeCouteau Working Draft revisions 01

saml-xspa-2.0-wd02 6 Apr.il 2012 Duane DeCouteau Comments and Changes updated from April 6th TC Meetings.

saml-xspa-2.0-wd03 27 Apr.il 2012 Duane DeCouteau Comments and Changes updated from April 27th TC Meetings

saml-xspa-2.0-wd04 23 May 2012 Duane DeCouteauUpdate to organizational-heirarchy purpose of use vocabulary, supported-obligation-policies, supported-refrain-policies

saml-xspa-2.0-wd04wd05 19 Jul.y 2013

Mohammad JafariMohammad Jafari

Updating the template.Minor editorial corrections.

saml-xspa-2.0-wd05 11 Mar. 2014 Mohammad Jafari Update to the structure and attribute IDs. - Harmonization with XACML standard attributes.

saml-xspa-2.0-wd05 21 Mar. 2014 Mohammad Jafari Added HL7 CD data type.Updated the conformance table.

saml-xspa-2.0-wd05 28 Mar. 2014 Mohammad Jafari Comments from March 25 meeting.saml-xspa-2.0-csd01 1 Apr. 2014 Mohammad Jafari Approved by the TC as CSD.

saml-xspa-2.0-wd06 25 Jun. 2014 Mohammad Jafari Public Review CommentsAdding push scenario

saml-xspa-2.0-wd06 10 Sep. 2014 Mohammad Jafari Resolved OASIS Technical Advisory Board Commentssaml-xspa-2.0-wd06 15 Oct. 2014 Mohammad Jafari Added US-realm conformance clauses.

saml-xspa-2.0-wd06 25 Nov 2014 Mohammad Jafari

Added:- R equirement for compliance with XACML

Attribute Profile- Requirement for providing DataType XML

attributed to guarantee interoperability with XACML.

- Correcting CD data type to include URN-based modeling. Allowing alternative XML formats if the ACS implementation can ensure complex data types are supported.

- Note on how to fill the NameID of the saml:Subject element.

saml-xspa-2.0-wd07 10 Dec 2014 Mohammad Jafari Minor edits

saml-xspa-2.0-wd08 27 July 2015 Mohammad Jafari

Adding new attributes for clearance: Integrity, Compartment, Purpose.

Adding a note in the introduction about the consequences of this profile for recording the principal's attributes in audit.

saml-xspa-2.0-wd09 25 August 2015 Mohammad Jafari

Including OIDs for valuesets.Updating clearance attributes.Merging obligations and refrains into caveats.Adding Consent Directive pointer.

saml-xspa-2.0-wd10 16 March 2016 Mohammad Jafari Editorial corrections.saml-xspa-2.0-wd11 10 March 2017 Mohammad Jafari Preparing for the next committee draft.

saml-xspa-v2.0-wd01wd11 Working Working Draft 0111 17 10 March July 20132017Standards Track Draft Copyright © OASIS Open 2013. All Rights Reserved. Page 35 of 35


Recommended