ABFAB                                                           A. Perez
Internet-Draft                                      University of Murcia
Intended status: Informational                                J. Howlett
Expires: September 13, 2012                                        Janet
                                                          March 12, 2012


          Options for Abfab-based Kerberos pre-authentication
             draft-perez-abfab-kerberos-preauth-options-01

Abstract

   Kerberos is widely used for authentication within organisations.  It
   is not, however, commonly used for authentication between domains or
   realms ("cross-realm operation").  Abfab is a new architecture, based
   on the AAA framework, that provides a mechanism for federating
   authentication between realms.

   AAA protocols are already widely used for federating authentication
   for network access scenarios today.  It has been proposed that Abfab
   could be used to provide a mechanism yielding cross-realm
   functionality for Kerberos.  This document discusses two alternative
   models with the aim of informing and facilitating discussion.

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/.

   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 September 13, 2012.

Copyright Notice

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



Perez & Howlett        Expires September 13, 2012               [Page 1]


Internet-Draft        Abfab-based Kerberos pre-auth           March 2012


   (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.

Table of Contents

   1.  Introduction  . . . . . . . . . . . . . . . . . . . . . . . . . 3
   2.  Use of Abfab  . . . . . . . . . . . . . . . . . . . . . . . . . 3
   3.  Proposed Models . . . . . . . . . . . . . . . . . . . . . . . . 3
     3.1.  The Kerberos client is the Abfab initiator  . . . . . . . . 3
     3.2.  The Kerberos Client is the Abfab acceptor . . . . . . . . . 4
     3.3.  Commonalities . . . . . . . . . . . . . . . . . . . . . . . 5
     3.4.  Differences . . . . . . . . . . . . . . . . . . . . . . . . 5
   4.  EAP-based pre-authentication approaches . . . . . . . . . . . . 5
     4.1.  EAP pre-authentication  . . . . . . . . . . . . . . . . . . 5
     4.2.  GSS-API pre-authentication  . . . . . . . . . . . . . . . . 6
   5.  Security Considerations . . . . . . . . . . . . . . . . . . . . 6
   6.  Informative References  . . . . . . . . . . . . . . . . . . . . 7





























Perez & Howlett        Expires September 13, 2012               [Page 2]


Internet-Draft        Abfab-based Kerberos pre-auth           March 2012


1.  Introduction

   Kerberos [RFC4120] is a widely deployed system for authentication,
   being integrated in multiple operating systems and network
   applications.  However, Kerberos is typically only used to manage
   authentication within the scope of a single realm (typically
   corresponding to a single organisation).  While often supported by
   implementations, Kerberos cross-realm operation is used relatively
   infrequently.

   The Abfab architecture [I-D.lear-abfab-arch] describes an access
   management model that enables the application of federated identity
   within a broad range of use cases.  This is achieved by building on
   proven technologies and widely deployed infrastructures.  Some of
   these use cases are described in [I-D.ietf-abfab-usecases].

   This draft considers two alternative models to typical Kerberos
   cross-realm operation that build on the Abfab architecture.  The goal
   of this document is to describe these approaches in the expectation
   that this will facilitate and inform further discussion.

2.  Use of Abfab

   The Extensible Authentication Protocol (EAP) [RFC3748] was originally
   defined as an authentication framework for data links (such as PPP
   [RFC1661]), building on the AAA frameworks provided by RADIUS
   [RFC2865] and Diameter [RFC3588].

   Abfab is the application of the EAP and AAA frameworks for
   authentication of application-level protocols, through the use of a
   Generic Security Services (GSS) mechanism that acts as an EAP lower-
   layer: the GSS EAP mechanism [I-D.ietf-abfab-gss-eap].

   In the GSS EAP mechanism, the GSS initiator is the EAP peer and the
   GSS acceptor is the EAP authenticator.  In the canonical case the GSS
   acceptor will act as an EAP pass-through, using an AAA protocol to
   federate authenticate to a remote AAA/EAP server.

3.  Proposed Models

   Two models involving the application of Abfab within Kerberos have
   been proposed.

3.1.  The Kerberos client is the Abfab initiator

   In this model a Kerberos client, co-located with the User Agent and
   acting as an EAP peer, obtains a Kerberos ticket by using an EAP
   credential to authenticate against a foreign realm's KDC that is



Perez & Howlett        Expires September 13, 2012               [Page 3]


Internet-Draft        Abfab-based Kerberos pre-auth           March 2012


   acting as an Abfab relying party.  A detailed description of this
   model can be found in [I-D.perez-abfab-eap-gss-preauth].

   The EAP credential is authenticated by the EAP server associated with
   the user principal wielding the User Agent.  If this ticket is a TGT,
   the Kerberos client can subsequently obtain service tickets from the
   foreign KDC in the usual way.

   In either case, the Kerberos client is able to subsequently request a
   Kerberos service ticket from the foreign KDC and authenticate to
   Kerberos services within that realm.

   The following figure illustrates this model:

           User                 Kerberos                   EAP
          Agent <----------------> KDC <----------------> Server

                     (EAP over           (EAP over AAA)
                    K5 REQ/REP)

                                 Figure 1

   This model can be understood as the application of Abfab to the
   Kerberos authentication message exchange.

3.2.  The Kerberos Client is the Abfab acceptor

   In this model a User Agent, acting as an EAP peer, initiates a
   standard Abfab authentication exchange with an Abfab relying party.
   A Kerberos client, co-located on the Abfab relying party, obtains a
   Kerberos ticket (naming the principal wielding the User Agent) by
   using the EAP tokens to authenticate against its KDC.

   As in the previous model the EAP credential is authenticated by the
   EAP server associated with the user principal wielding the User
   Agent.

   The following figure illustrates this model:

           User         Abfab           Kerberos         EAP
          Agent <-------> RP <----------> KDC--------> Server

                 (Abfab)      (EAP over    (EAP over AAA)
                             K5 REQ/REP)

                                 Figure 2

   Having an additional actor, this model is more complex than the first



Perez & Howlett        Expires September 13, 2012               [Page 4]


Internet-Draft        Abfab-based Kerberos pre-auth           March 2012


   model.  However, the relying party and KDC can be understood as a
   single EAP authenticator that is split across two entities.  Hence,
   both entities must share access to the EAP authenticator context
   (i.e. authenticator name, MSK, RADIUS keys...).

3.3.  Commonalities

   These model share the following in common:

   o  EAP is used to authenticate the user principal.

   o  The KDC is able to act as a point of authorisation for relying
      parties within its realm.

3.4.  Differences

   These models are different in the following ways:

   o  In the first model, the KDC must (in the general case) be exposed
      to KDC requests from any network location.  In the second model,
      the KDC only needs to be exposed to trusted Kerberos services.

   o  In the first model, the Kerberos client must be happy to use the
      Kerberos discovery mechanism.

   o  In the first model, the User Agent must be happy to always use
      Kerberos if it is available.

   o  In the first model, the Kerberos client and KDC must be modified,
      but the already deployed relying parties reamain unmodified.  In
      the second model, the relying parties and the KDC must be
      modified.

4.  EAP-based pre-authentication approaches

   The models described above require of a Kerberos pre-authentication
   based on EAP.  However, this pre-authentication can be provided by
   one of the following two approaches.

4.1.  EAP pre-authentication

   In this approach, Kerberos itself becomes an EAP lower-layer.  The
   most straightforward way to approach this is to define a new EAP-
   based FAST factor.  This FAST factor transports EAP packets between
   the EU and the KDC, following the multi round-trip procedure
   described in [RFC6113] (i.e. returning MORE_PREAUTH_DATA_REQUIRED
   error code).




Perez & Howlett        Expires September 13, 2012               [Page 5]


Internet-Draft        Abfab-based Kerberos pre-auth           March 2012


   This alternative is very simple, as EAP interfaces directly with
   Kerberos, making the architecture more straightforward.  It requires
   the definition of the FAST factor in such a way that implements
   [RFC4137], which defines the interface between EAP and the EAP lower-
   layer.

   This approach is applicable to any of the models.

4.2.  GSS-API pre-authentication

   In this alternative GSS-API is used by the Kerberos client and the
   KDC to perform pre-authentication.  Hence, a pre-authentication
   mechanism based on the transport of GSS-API tokens is required, such
   as that proposed by [I-D.perez-krb-wg-gss-preauth].  Such a pre-
   authentication mechanism provides a generic framework where any GSS-
   API mechanism can be executed, without further modification to the
   Kerberos infrastructure.

   This alternative introduces an additional layer, the GSS-API, between
   EAP and Kerberos.  The addition of this layer implies a higher
   complexity of the model, but it also comes with several advantages.
   The first one is the flexibility it provides.  Defining a generic
   GSS-preauth not only allows performing EAP pre-authentication, but it
   can be used for any other existing GSS mechanism, and for those to be
   defined in the future.  This implies that using this alternative
   would serve to integrate Kerberos into any existing federation, not
   only those based on AAA, just by using a different GSS mechanism
   instead of GSS-EAP.

   Besides, from an design point of view, this alternative takes
   advantage of the definition and implementation efforts put on the
   GSS-EAP mechanism of the ABFAB WG and the Moonshot project.  That
   mechanism has already carefully implemented the interfaces defined
   for an EAP lower-layer.

   Finally, as discussed in [I-D.perez-krb-wg-gss-preauth], using this
   proposal may simplify the generation of the PA-PX-COOKIE, as instead
   of serializing the whole EAP state machine on each round-trip, it
   could be possible to exchange GSS-API context handlers.

   This approach is applicable to the first model.  However, due the
   specific particularities of the second model, this approach is not
   easily applicable to it.

5.  Security Considerations

   To do




Perez & Howlett        Expires September 13, 2012               [Page 6]


Internet-Draft        Abfab-based Kerberos pre-auth           March 2012


6.  Informative References

   [I-D.lear-abfab-arch]              Howlett, J., Hartman, S.,
                                      Tschofenig, H., and E. Lear,
                                      "Application Bridging for
                                      Federated Access Beyond Web
                                      (ABFAB) Architecture",
                                      draft-lear-abfab-arch-02 (work in
                                      progress), March 2011.

   [I-D.ietf-abfab-usecases]          Smith, R., "Application Bridging
                                      for Federated Access Beyond web
                                      (ABFAB) Use Cases",
                                      draft-ietf-abfab-usecases-01 (work
                                      in progress), July 2011.

   [I-D.ietf-abfab-gss-eap]           Howlett, J. and S. Hartman, "A
                                      GSS-API Mechanism for the
                                      Extensible Authentication
                                      Protocol",
                                      draft-ietf-abfab-gss-eap-04 (work
                                      in progress), October 2011.

   [I-D.perez-krb-wg-gss-preauth]     Perez-Mendez, A., Pereniguez-
                                      Garcia, F., Lopez-Millan, G., and
                                      R. Lopez, "GSS-API pre-
                                      authentication for Kerberos",
                                      draft-perez-krb-wg-gss-preauth-01
                                      (work in progress), January 2012.

   [I-D.perez-abfab-eap-gss-preauth]  Perez-Mendez, A., Lopez, R.,
                                      Pereniguez-Garcia, F., and G.
                                      Lopez-Millan, "GSS-EAP pre-
                                      authentication for Kerberos", draf
                                      t-perez-abfab-eap-gss-preauth-01
                                      (work in progress), March 2012.

   [RFC1661]                          Simpson, W., "The Point-to-Point
                                      Protocol (PPP)", STD 51, RFC 1661,
                                      July 1994.

   [RFC2865]                          Rigney, C., Willens, S., Rubens,
                                      A., and W. Simpson, "Remote
                                      Authentication Dial In User
                                      Service (RADIUS)", RFC 2865,
                                      June 2000.

   [RFC3588]                          Calhoun, P., Loughney, J.,



Perez & Howlett        Expires September 13, 2012               [Page 7]


Internet-Draft        Abfab-based Kerberos pre-auth           March 2012


                                      Guttman, E., Zorn, G., and J.
                                      Arkko, "Diameter Base Protocol",
                                      RFC 3588, September 2003.

   [RFC3748]                          Aboba, B., Blunk, L., Vollbrecht,
                                      J., Carlson, J., and H. Levkowetz,
                                      "Extensible Authentication
                                      Protocol (EAP)", RFC 3748,
                                      June 2004.

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

   [RFC4137]                          Vollbrecht, J., Eronen, P.,
                                      Petroni, N., and Y. Ohba, "State
                                      Machines for Extensible
                                      Authentication Protocol (EAP) Peer
                                      and Authenticator", RFC 4137,
                                      August 2005.

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

Authors' Addresses

   Alejandro Perez Mendez
   University of Murcia

   EMail: alex@um.es


   Josh Howlett
   Janet

   EMail: josh.howlett@ja.net












Perez & Howlett        Expires September 13, 2012               [Page 8]