Network Working Group T. Freeman Internet-Draft Microsoft Corp. Intended status: Informational J. Schaad Expires: April 22, 2012 Soaring Hawk Consulting P. Patterson Carillon Information Security Inc October 20, 2011 Requirements for Message Access Control draft-freeman-message-access-control-req-03 Abstract There are many situations where organizations want to protect information with robust access control, either for implementation of intellectual property right protections, enforcement of information contractual confidentiality agreements or because of externally imposed legal regulations. The Enhanced Security Services (ESS) for S/MIME defines an access control mechanism which is enforced by the recipients client after decryption of the message. The ESS mechanism therefore is dependent on the correct access policy configuration of every recipients client. This mechanism also provides full access to the data to all recipients prior to the access control check which is considered to be inadequate for due to the difficulty in demonstrating policy compliance. This document lays out the deficiencies of the current ESS security label, and presents requirements for new model for doing access control to messages where the access check is performed prior to message content decryption. This new model also does not require policy configuration on the client to simplify deployment and compliance verification. The proposed model additionally provides a method where non-X.509 certificate credentials can be used for encryption/decryption of S/MIME messages. Status of this Memo This Internet-Draft is submitted in full conformance with the provisions of BCP 78 and BCP 79. Internet-Drafts are working documents of the Internet Engineering Task Force (IETF). Note that other groups may also distribute working documents as Internet-Drafts. The list of current Internet- Drafts is at http://datatracker.ietf.org/drafts/current/. Freeman, et al. Expires April 22, 2012 [Page 1] Internet-Draft Requirements for Message Access Control October 20, 2011 Internet-Drafts are draft documents valid for a maximum of six months and may be updated, replaced, or obsoleted by other documents at any time. It is inappropriate to use Internet-Drafts as reference material or to cite them other than as "work in progress." This Internet-Draft will expire on January 20, 2012. Copyright Notice Copyright (c) 2011 IETF Trust and the persons identified as the document authors. All rights reserved. This document is subject to BCP 78 and the IETF Trust's Legal Provisions Relating to IETF Documents (http://trustee.ietf.org/license-info) in effect on the date of publication of this document. Please review these documents carefully, as they describe your rights and restrictions with respect to this document. Code Components extracted from this document must include Simplified BSD License text as described in Section 4.e of the Trust Legal Provisions and are provided without warranty as described in the Simplified BSD License. Freeman, et al. Expires April 22, 2012 [Page 2] Internet-Draft Requirements for Message Access Control October 20, 2011 Table of Contents 1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . . 4 1.1. Access Control for Regulated Content in Email . . . . . . 4 1.2. Encrypted E-Mail Using Web-based Credentials . . . . . . . 5 1.3. Vocabulary . . . . . . . . . . . . . . . . . . . . . . . . 5 1.4. Keywords . . . . . . . . . . . . . . . . . . . . . . . . . 6 2. Background . . . . . . . . . . . . . . . . . . . . . . . . . . 7 2.1. ESS Security Labels . . . . . . . . . . . . . . . . . . . 8 2.2. Access Control and the Web . . . . . . . . . . . . . . . . 10 2.3. Information Asset Protection . . . . . . . . . . . . . . . 11 2.4. Authentication Assurance Frameworks . . . . . . . . . . . 12 3. Use Case Scenarios . . . . . . . . . . . . . . . . . . . . . . 13 3.1. Business to Consumer Secure Email . . . . . . . . . . . . 13 3.2. Business to Business Ad-Hoc Email (add alternate recipients as well) . . . . . . . . . . . . . . . . . . . 14 3.3. Business to Business Regulated Email . . . . . . . . . . . 15 3.4 Regulated Industry Email . . . . . . . . . . . . . . . . . . 18 3.5 Regulated Email Compliance Verification . . . . . . . . . . 19 3.5 Email Pipeline Inspection (add pre-auth and regular access) . . . . . . . . . . . . . . . . . . . . . . . . . . 19 3.6. Related scenarios . . . . . . . . . . . . . . . . . . . . 20 4. General Data Model . . . . . . . . . . . . . . . . . . . . . . 23 4.1 Access Control Model . . . . . . . . . . . . . . . . . . . . 28 4.2 Content Creation Workflow . . . . . . . . . . . . . . . . . 31 4.3 Content Consumption Workflow . . . . . . . . . . . . . . . . 31 4.4 Policy Types . . . . . . . . . . . . . . . . . . . . . . . . 32 5. Message Protection Requirements . . . . . . . . . . . . . . . 33 5.1. General Requirements . . . . . . . . . . . . . . . . . . . 33 5.2. Basic Policy Requirements . . . . . . . . . . . . . . . . 35 5.3. Advanced Policy Requirements . . . . . . . . . . . . . . . 35 5. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 37 6. Security Considerations . . . . . . . . . . . . . . . . . . . 38 Editorial Comments . . . . . . . . . . . . . . . . . . . . . . . . 39 Appendix A. References . . . . . . . . . . . . . . . . . . . . . 40 A.1. Normative References . . . . . . . . . . . . . . . . . . . 40 A.2. Informative References . . . . . . . . . . . . . . . . . . 40 Appendix B Authors' Addresses . . . . . . . . . . . . . . . . . . 41 Appendix C Document Change History . . . . . . . . . . . . . . . . 42 Freeman, et al. Expires April 22, 2012 [Page 3] Internet-Draft Requirements for Message Access Control October 20, 2011 1. Introduction The S/MIME (Secure/Multipurpose Internet Mail Extensions) standard [rfc5652] today provides digital signatures (for message integrity and data origination) and encryption (for data confidentiality). The Enhanced Security Services (ESS) for S/MIME [rfc2634] provides for additional services including security labels (eSSSecurityLabel) which represent the access control policy. These labels are placed as a signed attribute in the signed data block of a message. The recipient of the message is then responsible for checking that the recipient has a legitimate right to see the message based on the label on the message. This type of security labeling is similar to that of stamping top-secret on the cover of a document. It relies on the reader to not open and read the document when discovered. The Cryptographic Message Syntax (CMS) [rfc5652] allows for a variety of different lock boxes to be applied to an encrypted message. This allows for a variety of different type of security mechanisms to be used by the sender and the recipient to process the message. However the S/MIME standard is currently solely based on X.509 certificates. This means anyone without an X.509 certificate is unable to leverage the S/MIME protocol for securing email. The vast majority of users on the Internet have other forms of credentials (passwords, one time passwords, GPG/PGP keys etc.). 1.1. Access Control for Regulated Content in Email There are many situations where organizations want to include information which is subject to regulatory or other complex access control policy in email. Regulated information requires some form of robust access control to protect the confidentiality of the information. While ESS for S/MIME [rfc2634] defines an access control mechanism for S/MIME (eSSSecurityLabel), this is an extremely weak form of access control as the recipient is responsible for the enforcement and is given access to the data even if they fail to meet the criteria of the label. An access control policy defines a set of criteria which is required to be met in order to grant access to the information. These criteria are defined in terms of attributes about the subject requesting access. Examples of the types of attributes would include what roles the subject is assigned to (Role Based Access Control) or one or more attributes about the subject (Attribute Based Access Control). While S/MIME provides a standardized representation for the security label, it does not provide for any method of obtaining the necessary attributes for enforcement of the policy. Standards now exist to that enable for the transport of subject attributes [SAML-overview]. Adoption of these subject attribute protocols would Freeman, et al. Expires April 22, 2012 [Page 4] Internet-Draft Requirements for Message Access Control October 20, 2011 allow a rich set of access control polices to be supported by S/MIME in line with other applications. ESS Security labels are a signed attribute of a SignedData object which indicates the access control policy for the message. The fact that this is a signed attribute protects the integrity of the data and the binding of the label to the message but does not protect the confidentiality of the information i.e. at the point where you learn the access control policy to the data you also have access to the data. While the signature provides integrity for the label over the clear text, it is susceptible to unauthorized removal who is able to decrypt the message. I.e. if you only have SignedData message, any Message Transport Agent (MTA) in the path can remove a signature layer and therefore remove the access control data. Encrypting the signed message protects the confidentiality of the data and protects the SignedData from users unable to decrypt the message but this hides the ESS security label. From a regulatory enforcement perspective this is an extremely weak form of access control because cryptographic access to the data is given before the access check. The correct enforcement of the access check is dependent on the configuration of the recipients email client. Since the cryptographic access is granted before the access checks, there is no cryptographic impediment for a recipient who is unauthorized under the policy to access the data. A stronger enforcement model is needed for regulatory control for email where cryptographic access is only granted after the access check. 1.2. Encrypted E-Mail Using Web-based Credentials There are many users on the Internet today who have some form of authentication credential but the credentials are not X.509 certificates and who therefore cannot use S/MIME. There are now available, standard based services (e.g. [SAML-overview]) which abstract the specifics of a technology used to authenticate uses from the application itself (S/MIME in this case). Adoption of this abstraction model would enable a broader set of users who have other types to authentication credentials to be able to use S/MIME to secure email. It also allows for new authentication technology to be deployed without impacting the core S/MIME protocol at the expense of adding a third party to the transaction. 1.3. Vocabulary A cryptographic lock box is a per recipient data structure which holds the encrypted message encryption key. Early Binding is the concept of creating the cryptographic lock Freeman, et al. Expires April 22, 2012 [Page 5] Internet-Draft Requirements for Message Access Control October 20, 2011 box for a recipient at the time the message is sent. (Oppose to Late Binding). Late Binding is the concept of creating the cryptographic lock box for a recipient when the recipient attempts to decrypt the message. (Oppose to Early Binding) Content Encryption Key (CEK) is a key used to encrypt protected end user data. Key Encryption Key (KEK) is a key used to encrypt a cryptographic key. Authenticated denotes:- The sender is able to establish to a known level of confidence the identity of the recipient or The recipient is able to establish to a known level of confidence the identity of the sender Confidential denotes that a message has been protected to a known level of confidence so that the contents are not decipherable by unauthorized users. Integrity protected denotes that a recipient of a message can determine to a known level of confidence that a message has not been modified between the time that it was created and it was received by the recipient. Front End Attribute Exchange is when subject attributes are relayed from the issuer to the relying party by the subject Bach End Attribute Exchange is when subject attributes are directly send from the issuer to the the relying party 1.4. Keywords The 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 RFC 2119. Freeman, et al. Expires April 22, 2012 [Page 6] Internet-Draft Requirements for Message Access Control October 20, 2011 2. Background The S/MIME standard [rfc5751] provides a method to send and receive secure MIME messages. While CMS allows for other types of security credentials to be used, S/MIME exclusively uses X.509 certificates [rfc5750] for the security credentials used for signing and encryption operations. S/MIME uses an early binding mechanism for encryption keys where the sender needs to discover the public key for every recipient of encrypted messages before they can send the encrypted message. This requires the sender to maintain a cache of all potential recipient certificates (e.g. in a personal address book) and/or have the ability to find an acceptable certificate for the recipient from a repository at message creation. This key management model has limited the use of S/MIME for encryption for a variety of reasons. For example: o The recipient may not have an X.509 encryption certificate o The sender may not have received a signed email with the recipient certificate o The recipient may not have an available repository o The sender may be unaware of the location of the recipients repository o The recipient's repository may not be accessible to the sender e.g. it's behind a firewall o The sender may not implement the algorithms supported by the recipient. If one or more recipient certificates are missing then the sender is left with a stark choice: send the message unencrypted or remove the recipients without certificates from the message. The use of secure mailing lists has the ability to provide some relieve to the problem as the original sender does not need to know the appropriate encryption information for all of the recipients on the list. It can thus be thought of as a form of late-binding of recipient information for originating sender. However it is still early-binding encryption for the mail list agent; as it needs to perform all of the gathering and processing of certificate information for every recipient that the message will be send to. The use of a mailing list also means that the originating sender has no chance to perform any sender side filtering on who should receive an email based on the recipients attributes as they do not know the full list of the recipients. Freeman, et al. Expires April 22, 2012 [Page 7] Internet-Draft Requirements for Message Access Control October 20, 2011 In many regulated environments end-to-end confidentiality between sender and recipients by itself is not enough. The regulatory policy requires some form of access control checks before access to the data should be granted. In many inter-organization collaboration scenarios it's impossible for the sender to satisfy the access checks on behalf of the recipients since they don't have and frequently should not have access to all the attributes about the recipients because to do so may be a breach of the recipient's privacy. Indeed to release the attributes to the sender may require that the sender's attributes first be released to the recipient's attributes holder and then recurse. It's a fundamental tenet of good security practice that users must be in control of the release of data about themselves. 2.1. ESS Security Labels Security labels are an optional security service for S/MIME defined in Enhanced Security Services for S/MIME [rfc2634]. The ESS security label allows classification of the sensitivity of the message contents using a hierarchical taxonomy in terms of the impact of unauthorized disclosure of the information [rfc3114]. The security label can also indicate access control such as full time employees only or US nationals only. ESS security labels are authenticated attributes of a signer-info structure in a SignedData object. The label when applied to signed clear text data provides the access control decisions for the plain text. If applied to cipher text such as with the outer layer of a triple wrapped S/MIME message the label is used for course grained optimization such as routing. 2.1.1. Problems With ESS Security Labels ESS Security Labels have been found to have a number of limitations. 1. If the label is on the innermost content, access to the plain text is provided to the recipient (in some form) independent of the label evaluation as it will be processed for the purpose of hash computation as part of signature validation. Depending on how a triple wrapped message is processed by the recipient's CMS code, the inner content may be processed for signature validation even before the outer signature is validated. This would happen for a stream based CMS processor which starts processing inner- layers immediately rather than finishing processing of each layer and caching the intermediate results. 2. Labels applied can be removed in transit. If a signed layer is seen then it can be removed by any agent that processes the message (such as a Message Transit Agent). If the label is protected by an encryption layer then it can be removed by any Freeman, et al. Expires April 22, 2012 [Page 8] Internet-Draft Requirements for Message Access Control October 20, 2011 agent that has key access to the message (Encryption Mail List agents or Spam Filtering software would be two such examples). 3. Policies are identified by Object Identifiers. This makes for a small tight encoding, but it does not provide any mechanism for an email client to discover how to enforce a new access control policy if the message contains a policy the client is unaware of. This provides a stark choice: ignore the access control policy and grant access to the message or block access to the message. Object identifiers also do not provide a good display name for a user so that they could manually find and download a new policy. 4. The current ESS standard only allows for a single policy label in a message, no standardized method of composing multiple policy labels together has been defined. This is adequate for course grained policy binding to express a limited set of choices such as with sensitivity which typically a hierarchy of 3-5 choices. Many data sets need to be subject to multiple access control polices. For instance, a message may contain information that is both propriety and export controlled. Trying to represent combinations of polices via a single policy label would lead to an exponential growth in the number of policy labels. 5. They do not provide for any auditing of who has been granted accessed the message. All policy evaluation is local to the recipient's machine, no centralized logging of access to the message can be performed 6. Enforcement of the policy occurs on the recipients machine, this means that compliance with the policy is dependent on the state of the configuration of every receiving agent. This means that the policy is enforce by whatever module is located on the user's system. For cross cooperate systems, this means that the policy provided by Company A must be installed on Company B machines, or Company B must install a policy that Company A will accept as being equivalent to their own policy enforcement module. Additionally any time that a new version of the policy module is rolled out; there will be a time lag before every recipient machine will have the updated module. This makes policy compliance practically impossible anything but a small closed environment. 7. Access to the message cannot be granted or removed after the message has been sent, but before the recipient attempts to read it. Freeman, et al. Expires April 22, 2012 [Page 9] Internet-Draft Requirements for Message Access Control October 20, 2011 2.2. Access Control and the Web A prerequisite for many web transactions is the disclosure of attributes about the subject such as name, age, email address, physical location, address, credit card number, social security number etc. Some attributes lend themselves to easy verification but many do not. An assertion of an email address can be verified by sending an email to the address containing a secret ephemeral challenge. Subsequent demonstration of knowledge of the ephemeral challenge verifies the email address assertion. Other assertions such as "this is my credit card account number" are not easily verified. The fact it is a valid credit card number can be verified but not the binding to the subject attempting to use it. Where a claim is not easily verified it is often combined with other assertions under the assumption that knowledge of this larger data set verifies all the assertions in the data set. If you know the account number, billing address, etc., of course you must be the account holder. This is a very weak form of verification as is often demonstrated by the growth of identity theft, much of this bigger data set data set is often publicly available via social networks or easily guessed e.g. the most popular professions for a parent is dead or retired. Many of these assertions which are harder to verify are based on government issued documents such as a birth certificates, driver's license, identity card or passport. This requires an exchange of the documents between the relying party and the subject. For a small number of high value transactions (e.g. opening a new account) with relying parties that have widespread physical presence (a bank) this is acceptable because the applicant can present themselves with the required documentation in person. However with web based relying parties they cannot perform an in person exchange of documents to verify information on government issued documents. The approach taken with such relying parties is to have trusted assertion providers where the assertion provider can perform an in person exchange of documents with the subject then vouch for the set of assertions they have verified. SAML [SAML-core] defines an XML framework for describing and exchanging attributes about subjects. The entity making the assertions about the subject is known as the assertion provider, the entity consuming the assertions is known as the relying party. The well-known scenarios for using SAML are: o Single Sign On across systems on different platform technology o Federated Identity between business partners o Web Services and other standards e.g. SOAP based protocols Freeman, et al. Expires April 22, 2012 [Page 10] Internet-Draft Requirements for Message Access Control October 20, 2011 The critical difference between SAML and pure authentication protocols such as mutually authenticated TLS is that SAML is able to exchange the rich and variable set of assertions which necessary for authorizing transactions. X.509 certificate can exchange a limited and fixed set of identity assertions such as an x.500 distinguished name, email address, Kerberos principal name, etc. SAML is able to do this as well as an extensible set of other assertions about the subject such as: date of birth, business sign-off limits levels, etc. SAML additionally defined a number of query/response style profiles [SAML-QUERY] that allow for a relying party to specify the type of attributes that are required to evaluate a policy. SAML also abstracts the details of the authentication protocol from the relying party. The assertion provider can use a broad range of authentication mechanisms such as passwords, one time passwords, biometrics, X.509 certificates, etc., without impacting the relying party. The assertion provider can include the details of the authentication mechanism or its strength using an established strength scale such as NIST SP800-63-1 [sp800-63-1]. The relying party can then inspect the claims about how or how strongly the subject authenticated to the identity provider to determine if it complies with its access policy. Low value transactions can use simple short lived assertions where possession of the assertion alone is considered acceptable for the transaction risk. These are known as Bearer assertions. Higher value transaction can require proof of possession keys (either symmetric or asymmetric cryptographic keys) where the subject demonstrates knowledge of a cryptographic secret to the relying party via a HMAC or digital signature. These are defined by the SAML specification as Holder of Key assertions. The subject has to demonstrate possession of the key to the relying party. Holder of key assertions can be either symmetric or asymmetric keys. 2.3. Information Asset Protection Information Asset Protection (IAP) is a concept developed by the Transglobal Secure Collaboration Program (TSCP), a working group comprised of the major players in the western Aerospace and Defense industry. The industry is highly regulated and operates in an environment with many policies governing the access to information assets. These policies may be motivated by the desire to protect intellectual property, the confidentiality of information, or are imposed by government regulators such as the US International Traffic in Arms Regulations (ITAR) from the US Department of State. They apply to the information assets in whatever form the asset may take and are independent of the application used to create the information. These policies take many forms, e.g. verification the recipient has demonstrated a need to know the information because they are working on a specific project, that they have passed the Freeman, et al. Expires April 22, 2012 [Page 11] Internet-Draft Requirements for Message Access Control October 20, 2011 appropriate background and nationality checks, or that they have signed the appropriate non-disclosure agreement. What is needed is a policy driven information centric protection where the applicable policies either is manually or automatically attached to the information and based on the policy the system understands what access control and data protection is necessary. Email is an application widely used in the Aerospace and Defense industry. S/MIME is widely used today and provides sender to recipient confidentiality. This protects the contents of the message from discloser to unauthorized third parties e.g. while it is in transit between MTA's or while at rest in a MTA message queue or recipients mailbox. However it does not impose any finer grained access control such as those required by many policies. S/MIME does define an extension mechanism for access control via an ESS security label [rfc2634] thou this mechanism has drawbacks (see above). 2.4. Authentication Assurance Frameworks A number of organizations have created taxonomies to define the possible levels of identity assurance for electronic authentication. The objective of the framework is to provide a simple abstraction the details of any specific combination of identity proofing, credential technology, authentication technology from the authorization policy. These frameworks have been drafted by industry organizations [lib- iaf][kan-iaf] and governments [sp800-63-1]. While all of these frameworks may not agree on every aspect, at a macro level they do exhibit many similarities. A common theme in many is the adoption of a small number levels of identity assurance, typically between 3-5. S simplified description of the levels is: Level 1 Negligible confidence in the asserted identity Level 2 Some confidence in the asserted identity Level 3 Significant confidence in the asserted identity Level 4 High confidence in the asserted identity The framework defines broad characteristics in the areas of identity proofing, credential types and management, identity provider authentication and relying party authentication. Freeman, et al. Expires April 22, 2012 [Page 12] Internet-Draft Requirements for Message Access Control October 20, 2011 3. Use Case Scenarios This section documents some use case scenarios the new protocol aims to support. 3.1. Business to Consumer Secure Email There are many examples of business to consumer secure email scenarios where the email could potentially contain sensitive data. This would include doctor, patient; bank, account holder; Medical insurance, insured person. As an example, let's say that Alice is a doctor and has received test results for her patient Bob. This information is confidential, so any channel of communication she selects must protect the Bob's privacy. Alice elects to use email to reach Bob quickly with news of the results. Alice must ensure the following:- (a) Only Bob can read the email. (b) When Bob authenticates to read the email, that there is at least some confidence in his identity (i.e. level 2 or above). (c) The Bob can verify the email is from Alice. (d) The Bob can verify the email has not been modified after Alice sent it. The sequence of events would be as follows: 1. Alice composes the email to Bob. She includes some comments and suggestions for Bob and attaches the test results. 2. Alice's email client allows her to classify the email. Alice classifies the email as a Doctor-Patient communication. (a) 3. Alice's email client knows the protections to apply to Doctor- Patient communication; it knows to encrypt and integrity- protects the message and what level of assurance required for the recipients identity. 4. The protected email is able to flow securely and seamlessly through existing email infrastructure to Bob. The data is protected while in transit or at rest.(a) 5. Bob receives the email as sees it is a secure message from Alice.(c) Bob can verify the message has not been altered[Objective (d)].Bob attempts to opens the email. Bob uses a Level 2 password with his cloud identity service to log Freeman, et al. Expires April 22, 2012 [Page 13] Internet-Draft Requirements for Message Access Control October 20, 2011 onto his email system. Bob is able to use the same service to prove his identity to open Alice's email. (b) After Bob has proved his identity, he is able to read the email. If Bob replies to the email from Alice, the new message inherits the policy from the original message so doctor-patient messages and replies to doctor-patient messages have the same policy. The doctor- patient policy does not apply to messages forwarded by Bob because is allowed to make his own choices for protecting of the contents when sharing with others. 3.2. Business to Business Ad-Hoc Email (add alternate recipients as well) Early in the relationship between two companies, it is frequently necessary to exchange sensitive information. This needs to occur before the relationship has matured to the point that a formal relationship is reflected through a legal agreement. Business owners need the agility to interact with potential partners without having to engage their respective IT staffs as a prerequisite of the communication. As example, the IT staff might need to provide cross certifications and exposure of certificate repositories. As an example, Charlie works for Company Foo. He has just met Dave from Company Bar to discuss the prospect of a potential new business opportunity. Following the meeting, Charlie wants to send Dave some sensitive information relating to the new business opportunity. When Charlie sends the email to Dave with the sensitive content, he must ensure the following objectives: (a) Only Dave can read the email (b) When Dave authenticates to read the email, that there is at least some confidence in his identity (i.e. level 2 or above). (c) The Dave can verify the email is from Charlie (d) The Dave can verify the email has not been tampered with (e) Charlie may also need to keep a record of the fact that Dave accessed the message and when it was done. The sequence of events Charlie would use is as follows: 1. Charlie composes the email to Dave. He include some sensible information relating to potential terms and conditions for the new contract that Foo and Bar would sign to form a partnership Freeman, et al. Expires April 22, 2012 [Page 14] Internet-Draft Requirements for Message Access Control October 20, 2011 for the business opportunity. 2. Charlie's email client allows him to classify the email. He classifies the email as an Ad-hoc pre-contractual communication. 3. Charlie's client knows the protections to apply to Ad-hoc pre- contractual communication; it knows to encrypt and integrity- protect the message and the level of assurance required for the recipients identity. 4. The protected email is able to flow securely and seamlessly through existing email infrastructure to the recipients (Dave in this case). The data is protected while in transit or at rest. 5. Dave receives the email as sees it is a secure message from Charlie. (Charlie requires level 2, Dave uses a password) Dave is able to prove his identity to the level of assurance requested by Charlie so is able to read the email. The organization Dave work for has an identity service which he uses to prove his identity for Charlie's email. Dave opens the email. If Dave replies to the email from Charlie, the new message inherits the policy from the original messages so the entire message thread has the same policy. The policy also applies to messages forwarded by Dave because it contains information from Charlie and Company Foo wants consistent policy enforcement on its information. 3.3. Business to Business Regulated Email As business relationship mature they often result in a formal contractual agreement to work together. Contractual agreements would define a number of work areas and deliverables. These deliverables may be subject to multiple corporate and or legal policies for access control, authentication and integrity. Some classes of email may have information which is legally binding or the sender needs to demonstrate authorization to send some types of message where authority to send the message is derives from their role or function. Also many regulated environments need to be able to verify the information for a extended period - well beyond the typical lifetime of a users certificate. The set of policies applicable to an email is potentially subject to change as the different users contribute information to the email thread. Company Foo has been awarded a contract to build some equipment (Program X). The equipment is covered by export control. Company Bar is a subcontractor to company Foo working on Program X. Company Foo sets up some business rules for access to program X data to ensure compliance with export control requirements. Company Foo also set up separate rules to cover the protection of its intellectual Freeman, et al. Expires April 22, 2012 [Page 15] Internet-Draft Requirements for Message Access Control October 20, 2011 property contributed to Program A. Company Bar also sets up its own polices to protect its own intellectual property it contributes to Program X. As part of the agreement between Foo and Bar, they have agreed to mutually respect each other's policies. Frank is an employee of Company Foo. He has been assigned as a team leader on Program X and an individual contributor onProgram Y. Frank wants to send some mail as a team leader to colleagues working on Program X in both Companies Foo and Bar. Grace is an employee of Company Bar. She has also been assigned to Program X. When Frank sends the email with Program X regulated content he must ensure compliance with the export control polices. When frank sends program directions as team lead, recipients need to verify his authority and for compliance the message need to be able to be verified for 10 years. If Frank includes Company Foo intellectual property, he must also ensure compliance with his corporate IP protection policies. When Frank sends a Program X email he must ensure the following objectives: (a) Only recipients who meet the Program X policy and or or Company Foo's intellectual property protection policy can read the email (b) To comply with policy as team lead, Frank must sign the message with certificate to indicate the signature message is legally binding e.g. it does not just indicate the identity of the sends and protects the integrity of the message. (c) The message is also signed to indicate originator signature complies with the policy and the originator had presented the necessary claims and the allows the message to be verified for at least 10 years. (d) The recipients authenticates with an acceptable level of assurance (i.e. level 3 or above) (e) Recipients present any other attributes about themselves necessary to verify compliance with the applicable policies (theirs program assignment, nationality, professional or industry certifications) (f) Recipients can verify the email is from Frank to the level of assurance as defined by the message policy (i.e. level 3 or above) (g) Recipients can verify the email has not been tampered with the level of assurance as defined by the message policy (h) Recipients are made aware that the message is a Program X email and the contents can only be shared with other Program X workers. The sequence of events Frank would use is as follows: Freeman, et al. Expires April 22, 2012 [Page 16] Internet-Draft Requirements for Message Access Control October 20, 2011 (1) Frank composes the email and includes a Program X distribution list as a recipients. He include some information relation to Program X. Frank also includes some information which is Company Foo's IP. (2) Frank's email client allows him to select the Program Z team lead business context which is appropriate for his work. (3) Frank selects the Program X team lead and Company Foo IP polices from the list of available policies. The email client knows the protections to apply to the email; the message needs to be encrypted and integrity-protect the message using a certificate which is legally binding, it also has a signature which allows the message to be verified for at least 10 years; the level of assurance required for the recipients identity and what recipient attributes are necessary to access the message. (4) Frank clinks the send email button. The client signs the email using Franks smart card and a certificate indicating the signature is legally binding. The client obtains a second signature on the message to indicate Franks authority to send the message and allow it to be verified for at least 10 years. The Client then encrypts the message and obtains data from a server that will enforce the access control requirements for Frank, and sends it to his email server. The email is able to flow securely and seamlessly through existing email infrastructure recipients of the distribution list. Grace is on the distribution list so receives the email from Frank. (5) Grace receives the email as sees it is a secure message from Frank. Grace's client provides the attributes necessary to comply with the policy which includes her level 3 encryption certificate to the PDP. (6) Once Grace has shown she passes the policy requirements, the PDP releases the message CEK to grace using her level 3 encryption certificate. (7) Grace uses her smart card to open the message. She sees the message is marked with both the Program X and Company Foo IP policies If Grace replies to the email from Frank, the new message inherits the policy from the original messages. Grace includes some information which is Company Bar's IP so add her companies IP protection policy requirements to the message. Frank receives the reply from Grace. Frank is able to prove his identity to the level requested by Grace and provides the requested attributes about himself to satisfy both the Program X export Freeman, et al. Expires April 22, 2012 [Page 17] Internet-Draft Requirements for Message Access Control October 20, 2011 control, the Company Foo IP protection policies as well as the Company Bar IP protection policies. Frank opens the email. The policy also applies to messages forwarded by Frank because it contains information from Company Foo and Company Bar both companies wants consistent policy enforcement on its information. 3.4 Regulated Industry Email Some organizations work in area which are intrinsically subject to policy such as regulatory policy e.g. healthcare. In such environments the policies are often tied to the roles of the participates, the institution they are working at and the subject of the exchange. Hanna is a primary care physician working for FooBar Healthcare. She has a patient which she is referring to a specialist Ida for further investigations. Ida works at the Bar Hospital. Hanna needs to send the relevant patient notes, test results and comments to Ida. Hanna knows she needs to comply with the confidentiality regulations and needs to respect her patients consent decree for the privacy of their Healthcare information. When Hanna sends the referral message she must ensure: (a) Only recipients who meet the healthcare regulatory policy and the patients consent decree can read the email (b) The message has the appropriate level of integrity and data origination as required by the policies (c) The recipients authenticate with an acceptable level of assurance (i.e. level 3 or above) (d) Recipients present attributes about themselves necessary to verify compliance with the policies (e.g. their professional qualification, professional registration, affiliated healthcare facility and department) (e) Recipients can verify the email is from the sender (Hanna) to the level of assurance as defined by the message policy (i.e. level 3 or above) (f) Recipients can verify the email has not been tampered with the level of assurance as defined by the message policy (g) Recipients are made aware that the message is a Patient referral and contains sensitive patient data. workers. The sequence of events Frank would use is as follows: (1) Hanna composes the email and includes Ida as a recipients. SHe includes the patient information, test results and comments in the email (2) Hanna's email client allows her to select a business context which is appropriate for her work. Hanna selects a Patient Freeman, et al. Expires April 22, 2012 [Page 18] Internet-Draft Requirements for Message Access Control October 20, 2011 Consultation context. (3) Hanna selects the Patient Referral and Patient Consent decree polices from the list of available policies. The email client knows the protections to apply to the email; to encrypt and integrity-protect the message, the level of assurance required for the recipients identity and what recipient attributes are necessary to access the message. (4) Hanna clinks the send email button. The client signs the email using Hanna smart card. The Client then encrypted the message and sends it to his email server. The email is able to flow securely and seamlessly through existing email infrastructure recipients of the distribution list. Grace is on the distribution list so receives the email from Frank. (5) Ida receives the email as sees it is a secure message from Hanna. Ida's client provides the attributes necessary to comply with the policy which includes her level 3 encryption certificate to the PDP. (6) Once Ida has shown she passes the policy requirements, the PDP releases the message CEK to Ida using her level 3 encryption certificate. (7) Ida uses her smart card to open the message. She sees the message is marked with both the Patient Referral and Sensitive Patient Data policies 3.5 Regulated Email Compliance Verification TBD 3.5 Email Pipeline Inspection (add pre-auth and regular access) Unsolicited bulk email (aka spam) is a problem for organizations. Email can also contain malicious content such as viruses or attempts at phishing. To combat these threats, server side scanning of the email messages before they reach the recipient is an effective countermeasure. Authorized agents must be capable of getting access to the message. Company Foo receives email from the Internet. Company Foo has a policy to scan inbound email with a view to remove inappropriate or malicious content. The scanning of inbound email for Company Foo can happen on their own servers or it may be outsourced to a third party. The fact that Company Foo scans inbound email is a policy published to the intent to inform senders and allow them to take appropriate action. Also the public keys for email Freeman, et al. Expires April 22, 2012 [Page 19] Internet-Draft Requirements for Message Access Control October 20, 2011 hygiene servers for the Foo domain are also published to on the Internet to enable senders to pre-approve the Company Foo hygiene servers access to the messages. The server has the ability to identify itself as a subject or delegate for Company Foo who is authorized to scan email on behalf of Foo recipients if the server has not been pre-approved for a message. If the hygiene server has been pre-approved it therefore has immediate access to the message on receipt, otherwise it can request access to encrypted email. The email hygiene server or service has a local policy on what content to remove. It also has policy if a sending organization denies the server access to the content. It can:- o Allow the email to proceed o Reject email so the sender is aware the message was rejected o Drop the email so the sender is unaware of the actions the server took The server is able to establish the origin of the message without decrypting so it is possible to set up exceptions for messages from domain which may contain sensitive information. Dropping the message is the simplest and is appropriate where the sending domain may be a spammer. 3.6. Related scenarios There are other scenarios which are related to the email cases because they would be subject to the same policy requirements. Email allows users to create content and transport it to a set of recipients. You can perform similar actions with other formats such as documents and instant messages. Policy is agnostic to the underlying technology therefore if an organization has a policy relating to a type of information, then that policy would apply to the same content in an email, a document an instant message, etc. 3.6.1. Document Protection This scenario is very similar to 4.2 and 4.3 above. The difference is that the information being generated is in the form of a document not an email. It could be as part of an ad-hoc sharing or a regulated sharing or information. Frank is an employee of Company Foo. He has been assigned to Program X. Grace is an employee of Company Bar. She has been assigned to Freeman, et al. Expires April 22, 2012 [Page 20] Internet-Draft Requirements for Message Access Control October 20, 2011 Program X. Frank creates a document for the program. He also includes some Company Foo IP in the document. When Frank creates the document he must ensure compliance with export control regulations and his corporate IP protection policies. Fran must ensure: 1. Only users who meet the Program X policy or Company Foo's intellectual property protection policy can open the document 2. Users authenticates with an acceptable level of assurance as defined by the set of policies applied to the document 3. Users present any other attributes about themselves necessary to verify compliance with the applicable policies. 4. Users can verify who the author was to an acceptable level of assurance as defined by the document policy 5. Users can verify the document has not been tampered with to an acceptable level of assurance as defined by the document policy 6. They can also tell it is a Program X document and the contents can only be shared with other Program X workers. Frank creates a document for Program X. He include some information relation to Program X. Frank also includes some information which is Company Foo's IP. Franks word processor client allows him to classify the document. Frank classifies the document as Program X and Company Foo proprietary information. The word processor client knows the protections to apply to the document; to encrypt and integrity-protect the document, the level of assurance required for the users identity and what user attributes are necessary to access the document. The document is able to be published on a cloud based Web portal. The document is protected while in transit to the portal or at rest on the portal. The document is also protected on any backup or replica of the portal data. Frank does not to worry about where on the portal he publishes the document. He can make the most appropriate choose based on the project and the document content. Grace sees the document on the portal and tries to open the document. Grace is able to prove her identity to the level requested by Frank and provides the requested attributes about herself to satisfy both the Program X export control and the Company Foo IP protection policies. Grace opens the document. Freeman, et al. Expires April 22, 2012 [Page 21] Internet-Draft Requirements for Message Access Control October 20, 2011 If Grace edits the document and includes some information which is Company Bar's IP so adds her companies IP protection policy requirements to the document. Grace saves the updated document to the same location on the portal. Frank sees that Grace has updated the document on the portal. Frank is able to prove his identity to the level requested by both the Company Foo and company Bar policies and provides the requested attributes about himself to satisfy both the Program X export control, the Company Foo IP protection policies as well as the Company Bar IP protection policies. Frank opens the document. Need XMPP scenario . Draft something and send to Leif and Peter for review. Freeman, et al. Expires April 22, 2012 [Page 22] Internet-Draft Requirements for Message Access Control October 20, 2011 4. General Data Model This work is modeled on a well established set of Actors for policy enforcement [rfc3198] [XACML-core]. Policy Administration Point (PAP): A service that creates policy rules Policy Repository: The location where a PAP publishes policy rules Policy Decision Point (PDP): A service that is able to interpret the policy rules published by a PAP to make decisions to allow or deny requests. Policy Information Point (PIP): A service with issues assertions about subjects e.g. .a SAML Security Token Service. This model supports both front end and back end exchange of assertions. Attributes can be distributed directly between the PIP and the PDP (Backbend Attribute Exchange;BAE). There are two types of PIP based on the types of attribute the PIP would assert about the subject. A Identity Provider (IdP) PIP will issue authentication attributes e.g. information about how and when the subject authenticated to the IdP. An IdP may also issue attributes about the subject themselves e.g. their name, age or citizenship. An attribute provider (AtP)PIP only issues attributes about the subject. Policy Enforcement Point (PEP): The service responsible for making policy decision requests to the PDP. Freeman, et al. Expires April 22, 2012 [Page 23] Internet-Draft Requirements for Message Access Control October 20, 2011 ------------------ | | | Policy | | Administration | | Point | | | ------------------ | | Publish v Policy v ----------------- | | | Policy | ----------------- | Repository | ----------------- | | | | | | | Policy | | | | Policy | | Information | ----------------- | Information | | Point | | | Point | | | | Read | | ----------------- v Policy ----------------- | | v | | | |Issue ----------------- Issue | | | |Attributes | | Attributes| | | |(BAE) | | (BAE) | | | -------------->>| Policy |<<--------------- | | | Decision | | | | Point | | | -------------->>| |<<----------- | | |Protect | | Consume | | | |Content ----------------- Content | | | |Request+ Request+ | | | |Attributes Attributes| | | |(FEE) (FEE) | | v | v v v | v v ----------------- ----------------- | | | | | Content | Distribute | Content | | Creation | Content | Consumption | | Policy | ---------------------------->>| Policy | | Enforcement | | Enforcement | | Point | | Point | | | | | ----------------- ----------------- Figure 1 General Scheme for Publishing and Consuming Protected Content Freeman, et al. Expires April 22, 2012 [Page 24] Internet-Draft Requirements for Message Access Control October 20, 2011 The model is applicable to any data e.g. email, documents, databases etc. Another objective is to not require the PEP to have access to the plain text content in order to be able to make decision requests to the PDP. Policy process is complex so the PEP in this model just uses policy pointers or policy labels to policy. The model allows the content creation PEP to discover the set of policies a PDP would allow the user to assert based on a role assignment based. The Content consuming PEP dynamic may discover the PDP's who are authoritative for the protected content in question. The PDP makes its decisions based on the requested action from the PEP, the policy requirements from the PAP and the information from the PIP about the subject and the subjects environment. The information abut the subject may be exchanged direly between the PIP and the PDP (Back end Attribute Exchange) or indirectly via the PEP (Front end Attribute Exchange) or both. Freeman, et al. Expires April 22, 2012 [Page 25] Internet-Draft Requirements for Message Access Control October 20, 2011 Freeman, et al. Expires April 22, 2012 [Page 26] Internet-Draft Requirements for Message Access Control October 20, 2011 --------------- --------------- --------------- | | | | | | | Policy | | Policy | | Policy | | Decision | | Decision | | Decision | | Point | | Point | | Point | | | | | | | --------------- --------------- --------------- | | | | T | T | | TTTTTTT|TTTTTTT | V V V V V V --------------- --------------- --------------- | | | | | | | Policy | | Policy | | Policy | | Enforcement | | Enforcement | | Enforcement | | Point | | Point | | Point | | | | | | | --------------- --------------- --------------- | | | T | T | | TTTTTTT|TTTTTT | | V V V V V V --------------- --------------- --------------- | | | | | | | End | | End | | End | | User | | User | | User | | Application | | Application | | Application | | | | | | | --------------- --------------- --------------- (a) (b) (c) Figure 2 Options Full Trust With Clear Text Data. Drawing the line where the actors in the model are full trusted with the clear text data there are three possibilities (see figure 2). Figure 2a shows the full trust line between the user application and the PEP. This is the model for current standard access control e.g. XACML [XACML-core]. In 2a, the PEP has full access to the clear text data. It makes decision requests to the PDP and if the decision is allow the PEP releases the data to the application. To use fig 2a for secure email would require every MTA to act a a PEP so to be fully trusted with clear text data which is impossible. Figure 2b shows the full trust line between the PDP and the PEP. In 2b, the PEP only has cipher text data. THe data is encrypted with a Freeman, et al. Expires April 22, 2012 [Page 27] Internet-Draft Requirements for Message Access Control October 20, 2011 content encryption key (CEK) and the PDP has the CEK. THe PDP releases the CEK to the end user application when access is granted. This mode is viable for secure email as either the MTA or the MUA can act as a PEP. In figure 2c, no actor is given full trust. When the data is encrypted, the CEK is encrypted for each recipient just as S/MIME does today. The encrypted CEKs are given to the PDP and the PDP releases the encrypted CEK when access is granted. This mode is also viable for secure email as the sender can use either conventional Public key cryptography or Identity Based Encryption[rfc5408] to protect the CEK for each recipient. 4.1 Access Control Model This model is a hybrid of many access control models. o This model uses name based binding between the resource and the policy. When information is created, it is encrypted and a list of policies that must be enforce by the PDP is bound to the protected information o The model is fundamentally an Attribute-Based Access Control (ABAC) model. Access is granted to information based on attributes of the subject. Any subject that can prove they possess the necessary attributes to meet all the necessary policies is granted access to the information. o Access does not require the subject provide their orthonym. Subjects could be anonymous or use pseudonymous. o The subject is required to bind the attributes to the channel with the relying party to a level of assurance as required by the relying party. If the PDP only requires low assurance, bearer token over SSL would be suitable. If the PDP requires higher assurance, then holder of key tokens over SSL would be suitable. o This model also supports Token-Based Access Control (TBAC) where security tokens represent a capability to meet a policy. Once a subject has proven compliance with a policy, they can be issued a token to that effect. The client can subsequently present this token in lieu of a token with the set of subject attributes. The net result is the model can transition to a Capability Based Access Control (CBAC) because the policy token is an unforgeable token of compliance with a policy. The token can be used with any resource tagged with the same policy. Freeman, et al. Expires April 22, 2012 [Page 28] Internet-Draft Requirements for Message Access Control October 20, 2011 o When a subject tries to access the information they must present tokens to the PDP to prove they meet the required policies o When a subject creates information, this model uses business contexts (BCs) as a means to mange the set of policies a subject is allowed to assert on information they create. The PAP publish a set of policies associated with each business context. This is the Business Context Policy Collection(BCPC). Multiple PAP can publish policies for a BCPC. The PIP would provide information on the set of BCs a subject belongs to. The PDP issues a BCPC token to subject for each BC they belong to based on the information provided by the PIP. Each BCPC token contains the aggregation of all the policies from all the PAPs for each BCPC. Each BCPC list is a hint to the subject on the specific list of policies to pick from when creating information for each BC. The act of aggregation by the PDP allows the BCPC token to contain project wide policies used by all subjects across a collaborative project as well as organization specific policies applicable to the BC. o The BCPC token is used by the subject to authorize the creation of content with specific polices. The PDP will check the requested list of policies for the information is a subset of the policies in the BCPC token. If the set of policies are a subset of the policies in the BCPC, then it will issue the metadata token to be attached to the protected information. 4.1.1 Policy Data Binding There are three ways to bind policy to data. o By value. This is where a copy of the machine readable rule set is directly associated with the data e.g. where a file system has a Access Control List for the file or directory or where a rights management agent has embedded a copy of the policy expressed in a policy expression language in the rights protects data. When an access request is made to the data, the PDP compares the access request to the policy on the data itself. o By name. This is where a reference to the policy is directly associated with the data. e.g. a URI or a URN which identifies the policy to be enforced or points to where the policy is published. For example with S/MIME the ESS label identifies the applicable policy by an OID. When an access request is made to the data, the PDP finds the policy based on the identifier and then compares the access request to the referenced policy. o By description. This is where the policy has a target description in terms of characteristics of the sets of data resources the Freeman, et al. Expires April 22, 2012 [Page 29] Internet-Draft Requirements for Message Access Control October 20, 2011 policy applies to. When an access request is made, the set of polices are evaluated at run time to determine the set of policies to apply. For example when you author a XACML policy, you also define a target for the policy. When an access request is made to the data, the PDP finds the policy using the set of attributes of the resource looking for any polices that match the target description associated with the policy. It then compares the access request to the identified policy. The chief strength of binding policy by value is its simplicity. The policy is local to the data can can easily and quickly be read. The chief weakness in binding policy by value is maintaining policy over time. Many polices have a multi-year life span and during the course of that time there is a very high probability that the policy would need to be updated. Given the high number of copies, it has proven to be an very costly and imperfect process both from an enforcement and audit perspective. This process is complicated by the fact that because only the result is stored and not an identifier, it is hard to identify the policy which has to be updated. The chief strength of binding by names is once bound to the data the association with the policy travels with the data. The chief weakness in binding by name is it requires the reference to be strongly bound to the data. This is possible using cryptography but then process of persisting the binding impacts the storage format. This can break backwards compatibility. The chief strength of binding by description is it can be applied to data without impacting the storage format. The chief weakness in binding by description is the reliability of the matching. Any matching process must have a false positive and falsie negative rate. This rate has to be evaluated on a case by case basis over time as it can change making compliance expensive. The set of available attributes also varies with different data types e.g. structured database information has a rich set of attributes whereas documents and files have a poor set of attributes. This inconsistently over available attributes impacts matching reliability. The resultant set of polices for a policy target is also dependent on the correctness of the set of policies evaluated. Its also impossible to detect if a policy is missing from the policy store which again would mean incorrect policy enforcement This model is choosing to use binding by name because we need to encrypt the data which means we will impacting the storage format anyway which negates the main weakness of binding my name. We get the reliability of policy enforcement which is independent of location and we get low maintenance since we are only storing a reference to the policy and not the policy wit the data.. Freeman, et al. Expires April 22, 2012 [Page 30] Internet-Draft Requirements for Message Access Control October 20, 2011 4.2 Content Creation Workflow The Content Creation PEP bootstraps itself via the following sequence of events: (1) The content creation PEP is configured with the set PIP's and PDP's it trusts. (2) The content creation PEP summits a request to all the trusted PDPs for the set of BCs it allows for the user. THe subject is authenticated via a token from a PIP. The token may contain attributes abbot the subject or the PDP may exchange information directly with the PIP about the subject. (3) The content creation PEP receives a list of the BCs the PDP can configured for the user (4) The PEP submits a request for the policy collection for each BC. Additional attributes may be required from the PIP to authorize the release of the BCPC token. Now the PEP is bootstrapped with a list of BCs and for each BC a list of policies associated with each BC. Now the PEP is ready to create content. When the user wants to release protected content, they use the following sequence of events (i) The user creates the new content (ii) The user select the appropriate business context for the content, then selects one or more policies applicable to the content (iii) The PEP encrypts the content with one or more locally generated CEKs (iv) The PEP submits the CEK, the set of requires policies to be applied and the hash of the encrypted content to the PDP. THe CEK can be a raw key or a CEK key encrypted by a KEK if the user does not want the PDP to have the ability to access the plain text data. (v) The PDP generates the encrypted metadata which contains the list of policies and the CEKs. The metadata is encrypted by the PDP for itself. The PDP includes a URL for itself and the hash of the protected content as authenticated attributes then signs the encrypted metadata. (vi) The PDP returns the metadata to the PEP (vii) The PEP attaches the PDP metadata to the protected content and distributes the content. 4.3 Content Consumption Workflow When a user want to open some protected content they would follow the following workflow. (A) The PEP verifies the certificate in the signed metadata then Freeman, et al. Expires April 22, 2012 [Page 31] Internet-Draft Requirements for Message Access Control October 20, 2011 determines via local policy if it want to process the protected information based on the identity of the PDP (B) The PEP verifies the signature on the metadata token and the binding to the encrypted data by hashing the encrypted information and comparing it to the authenticated attribute in the metadata (C) The PEP forwards the signed metadata and requests a read token from the PDP using the location in the authenticated attribute in the metadata (D) The PDP decrypts the metadata, de-references the policy pointers and determines the set of access rules based on the policy published by the PAP. The PDP then determines the set of subject attributes it needs to evaluate the access rules. The PDP can the use PIP is has relationships with to query attributers about the subject. The list of attributes the PDP is missing is then returned to the PEP (E) The PEP obtains the missing attributes requested by the PDP and sends them to the PDP (F) Once the PDP has a complete set of attributes, and the attribute values match those required under the access policy, the PDP releases the CEK to the PEP along with a TTL which defines how long the PEP can use the CEK before it must discard the CEK and reapply for access. (G) Once the PEP has the CEK it decrypts the information. It caches the CEK until the TTL expires. 4.4 Policy Types Policies range from very simple to very complex. Policies have dependencies not only on the technical implementation of the software but on the range of attributes a PIP would would issue to subjects. This is likely constrained by the physical procedures a PIP would support to capture and verify the information about the subject. To manage this range of requirements, this model uses type types of policy. 4.4.1 Basic Policy Basic policy is intended to be universally usable by using a small fixed set of attributes. For example, basic policy is intended to be equivalent to sending encrypted email with S/MIME today. It is a simple policy that authenticated recipients of the email get access to the message. Its intended target is simple scenarios involving consumers and small businesses who are using public PIP which issue a limited set of attributes. It is expected that all Plasma clients and commercial IdP would be capable of supporting basic policy due to their simplicity and basic attribute set. Freeman, et al. Expires April 22, 2012 [Page 32] Internet-Draft Requirements for Message Access Control October 20, 2011 4.4.2 Advanced Policy Advanced policy is intended to be used where one or more arbitrary policies are required on the content . It is intended to target more complex scenarios such as content with regulated information or content subject to other organization and contractual policies. The input set of attributes is defined by the policies and can be either primordial or derived attributes or both. Multiple policies have a logical relationship e.g. they can be AND or ORed together. It is not expected that all Plasma clients support advances policy. 5. Message Protection Requirements 5.1. General Requirements Protected content MUST be where the content is confidential, integrity protected AND provides data origination. Every authentication has a level of assurance associated with it depending on attributes such as the identity checks made about the subject and the authentication technology used. The authentication of content creator and content consumers MUST support the multiple levels of identity assurance. (see scenarios 3.1, 3.2, 3.3 and 3.4) It is not possible for the PDP to know the specifics of every possible authentication mechanism or every detail about how the subject was screened. The specifics of how the identity of the content creator or the content consumer is established and what technical means they use to authenticate and level of identity assurance resulting from the process as a whole MUST be abstracted from the PDP by use of a simple numeric scale ( e,g, 0-4, or 1-6) liked to an identity assurance framework which defines the specifics of how to derive the LoA.(See section 3.1, 3.2, 3.3 and 3.4) Access to the plain text of the content MUST only be provided to the content consumer after either the consumer obtained suitable valid attributes from a PIP and provide them to the PDP or the PDP was able to find attributes about the content consume from a PIP to satisfy the policy as defined by the content creator (See section 2.1.1) The content creator MUST be provided with a list of policies applicable to content they create and scoped to their current business context i.e. .what tasks they are currently assigned to deliver(see scenarios 3.1, 3.2, 3.3). The specifics of the access control policy used by the PDP MUST be abstracted from both the content creator and content consumer i.e. the PEP MUST NOT make the access control decision or need specifics Freeman, et al. Expires April 22, 2012 [Page 33] Internet-Draft Requirements for Message Access Control October 20, 2011 of the policy(see scenarios 3.1, 3.2, 3.3 and 3.4). Content consumers PEP MUST receive authenticated attributes of the identity of the creator, the level of identity assurance of the creator and the cryptographic fingerprint of the original content so the PEP can confirm who created the content and that the content has not been altered (see section 3.1, 3.2, 3.3 and 3.4) The key exchange between content creator and content consumer and the PDP MUST support multiple levels of assurance so an appropriate strength of mechanism can be selected based on the level of assurance required. For example, for low assurance situations this could be via a plan text CEK over a secure transport such as SSL. For high assurance situations recipient MAY be required to provide a suitable key exchange key such as an X.509 certificate to encrypt the CEK. (See scenarios 3.3 and 3.4) The level of key exchange assurance requited MUST be selected by the sender and enforced by the PDP (See section 3.1, 3.2, 3.3 and 3.4). If the content consumers is unable to initially comply with the content creators policy, they MUST be able resolve any issues by getting the suitable credentials or attributes and gain access to the content without intervention from the content creator. A time-to-live MUST be provided to content consumers when access is granted by the PDP to define when the PEP MUST discard the message CEK and submit a new access request to the PDP. The TTL value MUST be based on the message policy and optional attributes about the content consumer and their environment. The PDP MUST be stateless for processing policy requests from content creators and consumers with respect to any instance of protected content. It MUST be possible to have multiple instances of a PDP service and load balance requests across all instances of the service transparently to the client and not require synchronization of state about requests between instances of the service. A PDP MUST be capable of generating audit events associated with access to protected content. 5.1.1 Email Specific General Requirements It MUST be possible for PDP to pre-authorize MTA of recipient domains access to protected email at send time so for email scanning i.e. the MTA does not need to contact the PDP because the PDP as already included an encrypted CEK for the MTA in the protected message (see section 3.5). Freeman, et al. Expires April 22, 2012 [Page 34] Internet-Draft Requirements for Message Access Control October 20, 2011 It MUST be possible for MTAs to request access to protected messages which have not been preauthorized by the sender (see section 3.5). 5.2. Basic Policy Requirements When using Basic Policy, the sending agent MUST define which basic policy and the list of recipients. Basic policy MUST support multiple levels of identity assurance. The levels of identity assurance MUST map to an existing identity authentication assurance framework e.g. to NIST 800-63-1 or equivalent. need rewording to multiple basic policies A sender using Basic policy MUST be able to send protected messages without discovering any recipient's encryption key. Using basic policy MUST NOT require bilateral agreements between sender and recipients a priori to sending the message. reword to a must 5.2.1 Email Specific Basic Policy Requirements The use of Basic Policy MUST be backwards compatible with existing S/MIME. A sender's agent MAY discover some recipient's certificates and create recipient info structures as per the existing S/MIME standard and elect to use the new mechanism for recipients it cannot discover keys for rather than remove the recipients without certificates. 5.3. Advanced Policy Requirements It MUST be possible to apply one or more Advanced Policies to a protected content. Where 2 or more policies are applied to protected content, the logical relationship between the policies MUST also be expressed i.e. are the policies a logical AND or a logical OR. (See section 3.3) An advanced policy MAY require attributes about: o The content consumer o The device the content consumer is using o The environment of the device is attempting to access the protected content from Advances policy MUST support an extensible list of obligations on the content creator where use of the policy requires some specific action on the part of the content creator e.g. sign content with 2 factor Freeman, et al. Expires April 22, 2012 [Page 35] Internet-Draft Requirements for Message Access Control October 20, 2011 smart card and/or that the signature is legally binding, or the message needs to be verified for an extended period(see scenarios 3.3 and 3.4). Advanced policies must support the ability to verify the content for an extended period (10 or more years) Freeman, et al. Expires April 22, 2012 [Page 36] Internet-Draft Requirements for Message Access Control October 20, 2011 5. IANA Considerations This document describes the requirements for message access control. As such no action by IANA is necessary for this document Freeman, et al. Expires April 22, 2012 [Page 37] Internet-Draft Requirements for Message Access Control October 20, 2011 6. Security Considerations Authentication by itself is not a good trust indicator for users. Authentication raises the level of assurance the identity is correct but does not address whether the identity is trustworthy or noteworthy to the recipient. Authentication should be coupled with some form of reputation e.g. the domain is on a white list or is not or a black list. Malicious actors may attempt to "legitimize" a message if an indication of authentication is not coupled with some form of reputation. Malicious actors could attempt to use encrypted email as a way to bypass existing message pipeline controls or to mine information from a domain. Domain should have sufficient granularity of policy to handle situations where their email pipeline agents have not been authorized to inspect the contents. It must be possible for a third party to, upon correctly presenting a legitimate legal justification, to recover the content of a message. This includes the Senders and Recipients companies for business continuity purposes, as well as Law Enforcement. If the entity requesting the information and the entity controlling the access are in different jurisdictions, then the process would be subject to some form of rendition. Freeman, et al. Expires April 22, 2012 [Page 38] Internet-Draft Requirements for Message Access Control October 20, 2011 Editorial Comments [anchor21] JLS: Are these really the terms that we want to be using? I normally use data origination rather than authenticated. It would be assumed that the data origination is being attested to by a middle man for a sender w/o signature capability rather than authentication being a correct term. [anchor22] JLS: We need to talk about what operation you are getting this level of assurance for. and who you are authenticating to. [anchor23] JLS: Same text should apply for senders? [anchor24] JLS: What does assurance level mean here? Are we talking about security levels or authentication levels or something else? Are levels required to define a set of requirements. I.e. An assumance level defines: Authentication requirements, confidentiality requirements (other). Freeman, et al. Expires April 22, 2012 [Page 39] Internet-Draft Requirements for Message Access Control October 20, 2011 Appendix A. References A.1. Normative References [rfc2119] Bradner, S., "Key words for use in RFCs to Indicate Requirement Levels", BCP 14, RFC 2119, March 1997. [rfc2634] Hoffman, P. Ed., "Enhanced Security Services for S/MIME", RFC 2634, June 1999. [rfc3198] Westerinen et. al., "Terminology for Policy Based Management", November 2001. [rfc5280] Cooper, D, et al, "Internet X.509 Public Key Infrastructure Certificate and Certificate Revocation List (CRL) Profile", RFC 5280, May 2008 [rfc5652] Housley, R., "Cryptographic Message Syntax (CMS)", RFC 5652, September 2009. [rfc5750] Ramsdell, B. and S. Turner, "Secure/Multipurpose Internet Mail Extensions (S/MIME) Version 3.2 Certificate Handling", RFC 5750, January 2010. [rfc5751] Ramsdell B., Turner S., "Secure/Multipurpose Internet Mail Extensions (S/MIME) Version 3.2 Message Specification", January 2010 [SAML-core] OASIS, Assertions and Protocols for the Security Assertion Markup Language (SAML) Version 2.0, March 2005 [sp800-63-1] NIST SP 800-63-1 "Electronic Authentication Guideline", December 2008 A.2. Informative References [bc-iaf] Province of British Columbia; Electronic Credential And Authentication Standard, version 1.0 [kan-iaf] Kantara Initiative; Identity Assurance Framework: 4 Assurance Levels, version 2.0 [lib- iaf] Liberty Alliance; Liberty Identity Assurance Framework, version 1.1 [rfc3114] Nicolls, W., "Implementing Company Classification Policy with the S/MIME Security Label", RFC 3114, May 2002. [rfc5408] Appenzeller, G., "Identity-Based Encryption Architecture and Supporting Data Structures", RFC5408, January 2009. [SAML-over] OASIS, Security Assertion Markup Language (SAML) Version 2.0 Technical Overview [XACML-core] OASIS, eXtensible Access Control Markup Language (XACML) Version 3.0 Core Specification Freeman, et al. Expires April 22, 2012 [Page 40] Internet-Draft Requirements for Message Access Control October 20, 2011 Appendix B Authors' Addresses Trevor Freeman Microsoft Corp. Email: trevorf@microsoft.com Jim Schaad Soaring Hawk Consulting Email: ietf@augustcellars.com Patrick Patterson Carillon Information Security Inc Email: ppatterson@carillon.ca Freeman, et al. Expires April 22, 2012 [Page 41] Internet-Draft Requirements for Message Access Control October 20, 2011 Appendix C Document Change History Added general data model (section 4) Added regulated industry email scenario (section 3.4 Split requirements into general requirements and email specific requirements Cleaned up scenarios to differentiate requirements and workflow Freeman, et al. Expires April 22, 2012 [Page 42]