<?xml version="1.0" encoding="US-ASCII"?>

<?rfc toc="yes"?>
<?rfc symrefs="yes"?>
<?rfc compact="yes"?>
<?rfc subcompact="no"?>
<?rfc strict="no"?>
<?rfc rfcedstyle="yes"?>
<?rfc comments="yes"?>
<?rfc inline="yes"?>

<!DOCTYPE rfc SYSTEM "rfc2629.dtd" [
<!ENTITY rfc1939 SYSTEM "http://xml.resource.org/public/rfc/bibxml/reference.RFC.1939.xml">
<!ENTITY rfc2060 SYSTEM "http://xml.resource.org/public/rfc/bibxml/reference.RFC.2060.xml">
<!ENTITY rfc2616 SYSTEM "http://xml.resource.org/public/rfc/bibxml/reference.RFC.2616.xml">
<!ENTITY rfc2821 SYSTEM "http://xml.resource.org/public/rfc/bibxml/reference.RFC.2821.xml">
<!ENTITY rfc3226 SYSTEM "http://xml.resource.org/public/rfc/bibxml/reference.RFC.3226.xml">
<!ENTITY rfc3229 SYSTEM "http://xml.resource.org/public/rfc/bibxml/reference.RFC.3229.xml">
<!ENTITY rfc3550 SYSTEM "http://xml.resource.org/public/rfc/bibxml/reference.RFC.3550.xml">
<!ENTITY rfc4251 SYSTEM "http://xml.resource.org/public/rfc/bibxml/reference.RFC.4251.xml">
<!ENTITY rfc5280 SYSTEM "http://xml.resource.org/public/rfc/bibxml/reference.RFC.5280.xml">
<!ENTITY I-D.lear-abfab-arch SYSTEM "http://xml.resource.org/public/rfc/bibxml3/reference.I-D.lear-abfab-arch.xml">
<!ENTITY I-D.wei-abfab-fcla SYSTEM "http://xml.resource.org/public/rfc/bibxml3/reference.I-D.wei-abfab-fcla.xml">
<!ENTITY OASIS.saml-profiles-2.0-os PUBLIC '' "http://xml.resource.org/public/rfc/bibxml2/reference.OASIS.saml-profiles-2.0-os.xml">
]>

<rfc category="info" docName="draft-ietf-abfab-usecases-02" ipr="trust200902">
    <front>
        <title abbrev="ABFAB Use Cases">Application Bridging for Federated Access Beyond web (ABFAB) Use Cases</title>
        <author fullname="Dr. Rhys Smith" surname="Smith" initials="R" role="editor">
            <organization>Cardiff University</organization>
            <address>
                <postal>
                    <street>39-41 Park Place</street>
                    <city>Cardiff</city>
                    <code>CF10 3BB</code>
                    <country>United Kingdom</country>
                </postal>
                <phone>+44 29 2087 0126</phone>
                <email>smith@cardiff.ac.uk</email>
            </address>
        </author>

        <date year="2012" />

        <area>Security Area</area>

        <workgroup>ABFAB</workgroup>

        <keyword>Internet-Draft</keyword>
        <keyword>Federated Authentication</keyword>
        <keyword>AAA</keyword>
        <keyword>RADIUS</keyword>
        <keyword>Diameter</keyword>
        <keyword>GSS-API</keyword>
        <keyword>EAP</keyword>
        <keyword>SASL</keyword>

        <abstract>
            <t>
                Federated authentication has so far been typically associated with Web-based services, but there is growing interest in the application of federated authentication for non-Web services. The goal of this document is to document a selection of the wide variety of contexts whose user experience could be improved through the use of technologies based on the ABFAB architecture and specifications.
            </t>
        </abstract>
    </front>

    <middle>
    
        <section title="Introduction">
            <t>
                Federated identity facilitates the controlled sharing of information about people (a.k.a. 'principals'), commonly across organisational boundaries. This avoids redundant registration of principals who operate in and across multiple domains; both reducing administrative overhead for the organisations involved and improving usability for the principal. Simultaneously, it can also help address privacy-related concerns, along with the regulatory and statutory requirements of some jurisdictions.
            </t>
            <t>
                The information that is passed between organisations may include authentication state and identity information that can be used for many purposes, including making access management decisions. A number of mechanisms support the transmission of this information for Web-based scenarios in particular (for example SAML <xref target="OASIS.saml-profiles-2.0-os"/>), but there is significant interest in the more general application of federated identity to include non-Web use cases. This document enumerates some of these use-cases, describing how technologies based on the the ABFAB architecture <xref target="I-D.lear-abfab-arch"/> and specifications could be used.
            </t>
        </section>

        <section title="Terminology">
            <t>
                TODO:
                <list style="symbols">
                    <t>
                        Cloud:
                    </t>
                    <t>
                        Federated Identity:
                    </t>
                    <t>
                        Principal:
                    </t>
                </list>
            </t>
        </section>
        
        <section title="Context of Use Cases">
            <t>
                The use cases described in the present document are a result of work led by JANET(UK), the operator of the United Kingdom's education and research network, responding to requirements from that particular community.
            </t>
            <t>
                In the interest of promoting the development of technology of broad applicability, the present authors welcome use cases and requirements from other sectors and communities.
            </t>
        </section>
        
        <section title="Use Cases">
            <t>
                This section describes a variety of use cases where technologies based on the ABFAB architecture and specifications could help improve the user experience; each includes a brief description of how current technologies attempt to solve the use cases and how this could improved upon.
            </t>        

            <section title="Cloud Services">
                <t>
                    Many organisations are seeking to deliver services to their users through the use of providers based in the 'cloud'. This is typically motivated by a desire to avoid management and operation of commodity services which, through economies of scale and so-forth, can often be delivered more efficiently by such providers.
                </t>
                <t>
                    Many providers already provide web-based access using conventional federated authentication mechanisms; for example, outsourced email provision where federated access is enabled using 'web-mail' applications where access is mediated through the use of SAML <xref target="OASIS.saml-profiles-2.0-os"/>. This use of federated authentication enables organisations that consume cloud services to more efficiently orchestrate the delivery of these services to their users.
                </t>
                <t>
                    Frequently, however, users will prefer to use desktop applications that do not use web (i.e. HTTP <xref target="RFC2616"/> based) protocols. For example, a desktop email client may use a variety of non-web protocols including SMTP <xref target="RFC2821"/>, IMAP <xref target="RFC2060"/> and POP <xref target="RFC1939"/>. Some cloud providers support access to their services using non-web protocols, however, the authentication mechanisms used by these protocols will typically require that the provider has access to the user's credentials - i.e. non federated. Consequently, the provider will require that users' credentials are regularly synchronised from the user organisation to the provider, with the obvious overhead this imparts on the organisation along with the obvious implications for security and privacy; or else be provisioned directly by the provider to the user.
                </t>
                <t>
                    The latter approach of directly provisioning accounts may be acceptable in the case where an organisation has relationships with only a small number of providers, but may become untenable if an organisation obtains services from many providers. Consequently any organisation with a requirement to use non-web protocols would prefer to make use of the credentials that they have already provisioned their users with, and to utilise federated authentication with non-web protocols to obtain access to cloud-based providers.
                </t>
                <t>
                    ABFAB could help in this context as its specifications would enable federated authentication for a variety of non-web protocols, thus gaining the benefits of federated authentication without any of the drawbacks that are currently experienced.
                </t>
            </section>

            <section title="High Performance Computing">
                <t>
                    High-performance computing (HPC) is a discipline that uses supercomputers and computer clusters to solve complex computation problems; it most commonly associated with scientific research or computational science. 
                </t>
                <t>
                    Access to HPC resources, often mediated through technologies such as secure shell <xref target="RFC4251"/>, is typically managed through the use of user digital certificates <xref target="RFC5280"/> or through manually provisioned credentials and accounts. This requires HPC operators to issue certificates or accounts to users using a registration process that often duplicates identity management processes that already exist within most user organisations. The HPC community would like to utilise federated identity to perform both the user registration and authentication functions required to use HPC resources, and so reduce costs by avoiding this duplication of effort.
                </t>
                <t>
                    The HPC community also have following additional requirements:
                    <list style="symbols">
                        <t>
                            Improved Business Continuity: In the event of operational issues at an HPC system at one organisation (for example, a power failure), users and jobs could be transparently moved to other HPC systems without the overhead of having to manage user credentials for multiple organisations;
                        </t>
                        <t>
                            Establish HPC-as-a-service: Many organisations who have invested in HPC systems want to make their systems easily available to external customers. Federated authentication facilitates this by enabling these customers to use their existing identity management, user credentialing and support processes;
                        </t>
                        <t>
                            Improve the user experience: Authentication to HPC systems is normally performed using user digital certificates, which some users find difficult to use. Federated authentication can provide a better user experience by allowing the use of other types of credentials, without requiring technical modifications to the HPC system to support these.
                        </t>
                    </list>
                </t>
                <t>
                    ABFAB could help in this context as it could enable federated authentication for the many of the protocols and technologies currently in use by HPC providers, such as secure shell.
                </t>
            </section>

            <section title="Grid Infrastructure">
                <t>
                    Grids are large-scale distributed infrastructures, consisting of many loosely coupled, independently managed, and geographically distributed resources managed by organisationally independent providers. Users of grids utilise these resources using grid middleware that allows them to submit and control computing jobs, manipulate datasets, communicate with other users, etc. These users are organised into Virtual Organisations (VOs); each VO represents a group of people working collaboratively on a common project. VOs facilitate both the management of its users and the meditation of agreements between its users and resource providers.
                </t>
                <t>
                     Authentication and authorisation within most grids is performed using a Public Key Infrastructure, requiring each user to have an X.509 public-key certificate <xref target="RFC5280"/>. Authentication is performed through ownership of a particular certificate, while authorisation decisions are made based on the user's identity (derived from their X.509 certificate), membership of a particular VO, or additional information assigned to a user by a VO. While efficient and scalable, this approach has been found wanting in terms of usability - many users find certificates difficult to manage, for various reasons. 
                </t>
                <t>
                    One approach to ameliorating this issue, adopted to some extent by some grid communities already, is to abstract away direct access to certificates from users, instead using alternative authentication mechanisms and then converting the credential provided by these into standard grid certificates. Some implementations of this idea use existing federated authentication techniques. However, current implementations of this approach suffer from a number of problems, not the least of which is the inability to use the federated credentials used to authenticate to a credential-conversion portal to also directly authenticate to non-web resources such as secure shell daemons.
                </t>
                <t>
                    The ability to use federated authentication directly through ABFAB, without the use of a credential conversion service, would allow users to authenticate to a grid and its associated services, allowing them to directly launch and control computing jobs, all without having to manage, or even see, an X.509 public-key certificate at any point in the process. Authorisation within the grid would still be performed using VO membership asserted issued by the user's identity provider through the federated transport.
                </t>
            </section>
            
            <section title="Databases and Directories">
                <t>
                    Databases (e.g. MySQL, PostgreSQL, Oracle, etc.) and directory technologies (e.g. OpenLDAP, Microsoft Active Directory, Novell eDirectory, etc.) are very commonly used within many organsiations for a variety of purposes. This can include core administrative functions, such as hosting identity information for its users, as well as business functions (e.g. student records systems at educational organisations).
                </t>
                <t>
                    Access to such database and directory systems is usually provided for internal users only, however, users external to the organisations sometimes require access to these systems directly: for example, external examiners in educational organisations requiring access to student records systems, members of cross-organisational project teams who store information in a particular organisation's systems, external auditors, etc.
                </t>
                <t>
                    Credentials for users both internal or external to the organisation that allow access these databases and directories are usually provisioned manually within an organisation, either using Identity Management technologies or through more manual processes. For the internal users, this situation is fine - this is one of the mainstays of Identity Management. However, for external users who require access, this represents more of a problem for organisational processes. The organisation either has to add these external users to its internal Identity Management systems, or else provision these credentials directly within the database/directory systems and continue to manage them, including appropriate access controls associated with each credential, for the lifetime of that credential.
                </t>
                <t>
                    Federated authentication to databases or directories, via ABFAB technologies, would improve upon this situation as it would remove the need to provision and de-provision credentials to access these systems. Organisations may still wish to manually manage access control of federated identities; however, even this could be provided through federated means, if the trust relationship between organisations was strong enough for the organisation providing the service to rely upon it for this purpose.
                </t>
            </section>
            
            <section title="Media Streaming">
                <t>
                    Media streaming services (audio or audio/video) are often provided publicly to anonymous users, but authentication is important for a protected subset of streams where rights management and access control must be applied.
                </t>
                <t>
                    Streams can be delivered via protocols such as RTSP <xref target="RFC3226"/> / RTP <xref target="RFC3550"/> which already include authentication, or can be published in an encrypted form with keys only being distributed to trusted users. Federated authentication is applicable to both of these cases.
                </t>
                <t>
                    Alternative mechanisms to managing access exist; for example, an approach where a unique stream URI is minted for each user. However, this relies on preserving the secrecy of the stream URI, and also requires a communication channel between the web page used for authentication and the streaming service itself. Federated authentication would be a better fit for this kind of access control. Thus, AFAB technologies that allow federated authentication directly within (inherently non-web) media streaming protocols would represent an enhancement to this area.
                </t>
            </section>
  
            
            <section title="Printing">
                <t>
                    A visitor from one organisation to the premises of another often requires the use of print services. Their home organisation may of course offer printing, but the output could be a long way away so the home service is not useful. The user will typically want to print from within a desktop or mobile application.
                </t>
                <t>
                    Where this service is currently offered it would usually be achieved through the use of 'open' printers (i.e. printers that allow anonymous print requests), where printer availability is advertised through the use of Bonjour or other similar protocols. If the organisation requires authenticated print requests (usually for accounting purposes), the the visitor would usually have to be given credentials that allow this, often supplemented with pay-as-you-go style payment systems.
                </t>
                <t>
                    Adding federated authentication to IPP <xref target="RFC3229"/> (and other relevant protocols) would enable this kind of remote printing service without the administrative overhead of credentialing these visitors (who, of course, may well one time visitors to the organisation). This would be immediately applicable to higher education, where this use case is increasingly important thanks to the success of federated network authentication systems such as eduroam but could also be used in other contexts such as commercial print kiosks, or in large, heterogeneous organisations.
                </t>
            </section>
            
            <section title="Accessing Applications from Devices on a Telecoms Infrastructure">
                <t>
                    Telecom operators typically have the following properties:
                    <list style="symbols">
                        <t>
                            A large collection of registered users, many of whom may have identities registered to a fairly high level of assurance (often for payment purposes). However, not all users will have this property - for example, non-contract customers on mobile telecoms infrastructures in countries with low levels of identity registration requirements.
                        </t>
                        <t>
                            An existing network infrastructure capable of authenticating a device (e.g. a cellphone or an ADSL router), and by inference, its owner.
                        </t>
                        <t>
                            A large collection of applications (both web-based and non web-based) that its users wish to access using their device. These applications could be hosted by the telecoms operator directly, or could be any application or system on the internet - for example, network messaging services, VoIP, email, etc.
                        </t>
                    </list>
                </t>
                <t>
                    At present, authentication to these applications will be typically configured manually by the user on the device (or on a different device connected to that device) but inputting their (usually pre-provisioned out-of-band) credentials for that application - one per application.
                </t>
                <t>
                    The use of ABFAB technologies in this case, via a mechanism dubbed "federated cross-layer access" (see <xref target="I-D.wei-abfab-fcla"/>) would enhance the user experience of using these applications through devices greatly. Federated cross-layer access would make use of the initial mutual authentication between device and network to enable subsequent authentication and authorisation to happen in a seamless manner for the user of that device authenticating to applications.
                </t>                  
            </section>
                  
            <section title="Trust Router">
                <t>
                    TODO
                </t>
            </section>

            <section title="PLASMA">
                <t>
                    TODO
                </t>
            </section>

            <section title="SIP">
                <t>
                    TODO
                </t>
            </section>

        </section>

        <section title="Contributors">
            <t>
                The following individuals made important contributions to the text of this document: Tim Bannister (Manchester University), Simon Cooper (Janet), Josh Howlett (Janet), and Mark Tysom (Janet).
            </t>
        </section>
        
        <section title="Acknowledgements">
            <t>
                These use-cases have been deve3loped and documented using significant input from Jens Jensen (STFC Rutherford Appleton Laboratory), Daniel Kouril (CESNET), Michal Prochazka (CESNET), Ian Stewart (University of Edinburgh), Stephen Booth (Edinburgh Parallel Computing Centre), Eefje van der Harst (SURFnet), Joost van Dijk (SURFnet), Robin Breathe (Oxford Brookes University), and Yinxing Wei (ZTE Corporation).
            </t>
        </section>
          
        <section title="Security Considerations">
            <t>
                TODO
            </t>
        </section>
        
        <section title="IANA Considerations">
            <t>
                This document does not require actions by IANA.
            </t>
        </section>        
        
    </middle>

    <back>
        <references title="Normative References">
            &I-D.lear-abfab-arch;
        </references>

        <references title="Informative References">
            &rfc1939;
            &rfc2060;
            &rfc2616;
            &rfc2821;
            &rfc3226;
            &rfc3229;
            &rfc3550;
            &rfc4251;
            &rfc5280;
            &OASIS.saml-profiles-2.0-os;
            &I-D.wei-abfab-fcla;
        </references>
        
        <section anchor="appendix" title="Change Log">
            <t>
                Note to RFC Editor: if this document does not obsolete an existing RFC, please remove this appendix before publication as an RFC.
            </t>
            <t>
                Draft -01 to draft -02
                <list style="numbers">
                    <t>
                        Added Telecoms Operator Cross Layer use case.
                    </t>
                    <t>
                        Minor changes in wording through the draft.
                    </t>
                </list>
            </t>
            <t>
                Draft -00 to draft -01
                <list style="numbers">
                    <t>
                        Added Databases and Directories use case.
                    </t>
                    <t>
                        Added Media Streaming use case.
                    </t>
                    <t>
                        Added printing use case.
                    </t>
                    <t>
                        Added remote working use case.
                    </t>
                    <t>
                        Minor changes in wording through the draft.
                    </t>
                    <t>
                        Added references to the various protocols mentioned.
                    </t>
                </list>
            </t>
         </section>
        
        <section title="Open Issues">
            <t>Note to RFC Editor: please remove this appendix before publication as an RFC.</t>
            <!--
             <t><list style="numbers">
             <t>Contributor addresses need to be updated</t>
             </list></t>
             -->
        </section>

    </back>
</rfc>
