Internet Engineering Task Force                                  A. Jain
Internet-Draft                                              Georgia Tech
Updates: 4120 (if approved)                                    N. Kinder
Intended status: Standards Track                             N. McCallum
Expires: November 17, 2016                                 Red Hat, Inc.
                                                            May 16, 2016

              Authentication Indicator in Kerberos Tickets


   This document proposes specifies an extension in the Kerberos protocol
   [RFC4120].  It defines a new Authorization Data Type authorization data type AD-
   AUTHENTICATION-INDICATOR.  The purpose of introducing this data type
   is to include an indicator of the strength of a client's
   authentication in the service tickets so that the application services
   can use it as an input into policy decisions.

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

   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 November 17, 2016.

Copyright Notice

   Copyright (c) 2016 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
   ( 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.

Table of Contents

   1.  Introduction  . . . . . . . . . . . . . . . . . . . . . . . .   2
   2.  Document Conventions  . . . . . . . . . . . . . . . . . . . .   2
   3.  AD Type Specification . . . . . . . . . . . . . . . . . . . .   3   2
   4.  Security Considerations . . . . . . . . . . . . . . . . . . .   3
   5.  References  . . . . . . . . . . . . . . . . . . . . . . . . .   4   3
     5.1.  Normative References  . . . . . . . . . . . . . . . . . .   4   3
     5.2.  Informative References  . . . . . . . . . . . . . . . . .   4
   Appendix A.  ASN.1 Module . . . . . . . . . . . . . . . . . . . .   4
   Appendix B.  Acknowledgements . . . . . . . . . . . . . . . . . .   5   4

1.  Introduction

   Kerberos [RFC4120] allows secure interaction among users and services
   over a network.  It supports a variety of authentication mechanisms
   using its Pre-Authentication pre-authentication framework [RFC6113].  The Kerberos
   Authentication Service
   authentication service has been architected to support password based
   authentication as well as multi-factor authentication using One Time
   Password one-time
   password devices or Public Key Cryptography. public key cryptography.  Implementations that
   have Pre-Authentication pre-authentication mechanisms offering significantly different
   strengths of client authentication may choose to keep track of the
   strength of the authentication used as an input into policy

   This document proposes specifies a new Authorization Data Type to be used authorization data type to convey the
   authentication strength to the application services.  The
   KDC can provide the DER encoding  Elements of the ASN.1 type defined in this
   document into the ad-data field of the
   type appear within an AD-CAMMAC [RFC7751] container.
   This ASN.1 type contains information about the type of authentication
   mechanism used by the Kerberos client to authenticate itself to the

2.  Document Conventions

   The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT",
   document are to be interpreted as described in RFC 2119 [RFC2119].

3.  AD Type Specification

   The KDC MAY include the following Authorization Data authorization data element, wrapped
   in AD-CAMMAC, in the initial credentials credentials, and copy it from a ticket-
   granting ticket into service tickets:

   The corresponding ad-data field contains the DER encoding of the
   following ASN.1 type which is defined as type:


   Each UTF8String value is a short string that indicates that a
   particular set of requirements was met during the initial
   authentication.  These strings are intended to be compared against
   known values.  They are not intended to store structured data.  These
   strings MAY be site-defined strings that do not contain a colon such
   as the name of the Pre-Authentication mechanism used, or
   alternatively URIs that reference a Level of Assurance Profile


   Authorization data elements of type AD-AUTHENTICATION-INDICATOR MUST
   be included in the an AD-CAMMAC container so that its their contents can be protected.  The
   verified as originating from the KDC.  Elements of type AD-
   AUTHENTICATION-INDICATOR MAY safely be ignored by the applications and
   KDCs that do not implement this element.

4.  Security Considerations

   Elements of type AD-AUTHENTICATION-INDICATOR is are wrapped in AD-CAMMAC which supersedes
   AD-KDC-ISSUED container.
   containers.  AD-CAMMAC supersedes AD-KDC-ISSUED, and allows both the
   service services and the KDC to verify the authenticity of the
   Authorization Data.

   A malicious service can replace AD-CAMMAC in a service ticket with a
   legitimate authorization data.

   KDC implementations MUST use AD-CAMMAC present verifiers as described in some other ticket that the service
   has received.  The KDC MUST
   the security considerations of RFC 7751 [RFC7751] to ensure that the service does AD-
   AUTHENTICATION-INDICATOR elements are not tamper
   with the contents of AD-CAMMAC or the ticket modified by including a kdc-
   verifier in an attacker.
   Application servers MUST validate the containing CAMMAC.  This binding protects AD-
   AUTHENTICATION-INDICATOR in case AD-CAMMAC container before
   making authorization decisions based on AD-AUTHENTICATION-INDICATOR
   elements.  Application servers MUST NOT make authorization decisions
   based on AD-AUTHENTICATION-INDICATOR elements which appear outside of constrained delegation such as
   S4U2Proxy [MS-SFU] extension.
   AD-CAMMAC containers.

   Using multiple strings in AD-AUTHENTICATION-INDICATOR MAY lead to
   ambiguity when a service tries to make a decision based on the AD-
   AUTHENTICATION-INDICATOR values.  This ambiguity can be avoided if
   indicator values are always used as a positive indication of certain
   requirements being met during the initial authentication.

5.  References

5.1.  Normative References

   [RFC2119]  Bradner, S., "Key words for use in RFCs to Indicate
              Requirement Levels", BCP 14, RFC 2119, DOI 10.17487/
              RFC2119, March 1997,

   [RFC4120]  Neuman, C., Yu, T., Hartman, S., and K. Raeburn, "The
              Kerberos Network Authentication Service (V5)", RFC 4120,
              DOI 10.17487/RFC4120, July 2005,

   [RFC6113]  Hartman, S. and L. Zhu, "A Generalized Framework for
              Kerberos Pre-Authentication", RFC 6113, DOI 10.17487/
              RFC6113, April 2011,

   [RFC7751]  Sorce, S. and T. Yu, "Kerberos Authorization Data
              Container Authenticated by Multiple Message Authentication
              Codes (MACs)", RFC 7751, DOI 10.17487/RFC7751, March 2016,

5.2.  Informative References

   [MS-SFU]   Microsoft, "Kerberos Protocol Extensions: Service for User
              and Constrained Delegation Protocol", January 2013,

   [RFC6711]  Johansson, L., "An IANA Registry for Level of Assurance
              (LoA) Profiles", RFC 6711, DOI 10.17487/RFC6711, August
              2012, <>.

Appendix A.  ASN.1 Module

   KerberosV5AuthenticationIndicators {
           iso(1) identified-organization(3) dod(6) internet(1)
           security(5) kerberosV5(2) modules(4)



Appendix B.  Acknowledgements

   Dmitri Pal (Red Hat)
   Simo Sorce (Red Hat)
   Greg Hudson (MIT)

Authors' Addresses

   Anupam Jain
   Georgia Tech
   225 North Ave NW
   Atlanta, GA  30332


   Nathan Kinder
   Red Hat, Inc.
   444 Castro St.
   Suite 500
   Mountain View, CA  94041


   Nathaniel McCallum
   Red Hat, Inc.
   100 East Davie Street
   Raleigh, NC  27601