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]