<?xml version="1.0"  encoding="US-ASCII"?>

<!DOCTYPE rfc SYSTEM "rfc2629.dtd">

<?xml-stylesheet type='text/xsl' href='rfc2629.xslt' ?>

<!-- used by XSLT processors -->

<?rfc strict="yes" ?>
<?rfc toc="yes"?>
<?rfc tocdepth="4"?>

<?rfc symrefs="yes"?>

<?rfc sortrefs="no" ?>
<?rfc compact="yes" ?>
<!-- do not start each main section on a new page -->
<?rfc subcompact="no" ?>


<rfc docName="draft-zeltsan-scim-use-cases-00" 
	category="info" 
	ipr="trust200902"
> 

<front>

<title>
SCIM Use Cases </title>

<author fullname="Phil Hunt" initials="P."
			surname="Hunt">
			<organization>Oracle</organization>
			<address>
				<email>phil.hunt@oracle.com</email>

				<!-- uri and facsimile elements may also be added -->
			</address>
</author>
		
<author fullname="Bhumip Khasnabish" initials="B."
			surname="Khasnabish">
			<organization> ZTE USA, Inc.</organization>
			<address>
			<phone>+001-781-752-8003</phone>
				<email>vumip1@gmail.com, bhumip.khasnabish@zteusa.com</email>

				<!-- uri and facsimile elements may also be added -->
			</address>
			
</author>
<author fullname="Anthony Nadalin" initials="A." 
            surname="Nadalin">
      <organization>Microsoft</organization>

      <address>
        <postal>
          <street></street>

          <!-- Reorder these if your country does things differently -->

          <city></city>

          <region></region>

          <code></code>

          <country></country>
        </postal>

         <email>tonynad@microsoft.com</email>

      </address>
    </author>

<author fullname="Zachary Zeltsan" initials="Z." 
            surname="Zeltsan">
      <organization>Alcatel-Lucent</organization>

      <address>
        <postal>
          <street>600 Mountain Avenue</street>

          <!-- Reorder these if your country does things differently -->

          <city>Murray Hill</city>

          <region>New Jersey</region>

          <code></code>

          <country>USA </country>
        </postal>

        <phone>+1 908 582 2359</phone>

        <email>Zachary.Zeltsan@alcatel-lucent.com</email>

      </address>
    </author>


<date month="October" year="2012"/>

<area>Applications</area>
<workgroup>SCIM WG</workgroup>
<keyword>I-D</keyword>
<keyword>Internet-Draft</keyword>

<abstract>
<t>This document lists the use cases of System for Cross-domain Identity Management (SCIM).
</t>
</abstract> 

</front>

<middle>


<section title="Introduction">

<t>
This document describes the SCIM use cases. It also provides a list of the requirements derived from the use cases.  
The document's objective is to help with understanding of the design and applicability of <xref target="I-D.ietf-scim-core-schema">SCIM schema</xref> and
<xref target="I-D.ietf-scim-api">SCIM protocol</xref>. 

<vspace blankLines="1"/>
The following section provides the abbreviated descriptions of the use cases. 
</t>

</section> <!-- Introduction -->

<section title="SCIM use cases">
<t>This section lists the SCIM use cases. 
  </t>

<section title="Change of the ownership of a file">
<t>
<vspace blankLines="0"/>
Description: <vspace blankLines="1"/>
Bob - an employee of the company SomeEnterprise - creates a file, which is located at the cloud provided by SomeCSP. 
After Bob leaves SomeEnterprise, SomeCSP on a request from SomeEnterprise terminates Bob's rights to the file and transfers his 
former rights to Bill - another employee of SomeEnterprise.
</t>

<t>Pre-conditions:
<list style='symbols'>
<t>	SomeCSP is a cloud service provider for SomeEnterprise </t>
<t>	With permission of SomeEnterprise, Bob had created a file at the cloud provided by SomeCSP </t>
<t>	Bob has left SomeEnterprise </t>
<t>	SomeEnterprise terminates Bob's rights to the file and, possibly, decommissions Bob's identity </t>
<t>	SomeEnterprise communicates the changes to the Bob's rights to SomeCSP</t>
<t>	SomeCSP enforces the changes made by SomeEnterprise </t>
<t>	SomeEnterprise requests SomeCSP to transfer Bob's former rights to Bill </t>

</list>
</t>
<t>Post-conditions:
<list style='symbols'>
<t>Bob does not have the rights to the file at the cloud provided by SomeCSP</t>
<t>	Bill has the rights to the file that Bob had had </t>

</list>
</t>

<t>Requirements:
<list style='symbols'>

<t>	SomeEnterprise can securely communicate to SomeCSP all changes regarding its employee's identity</t>
<t>	SomeCSP can enforce the requested changes</t>
<t>	SomeCSP shall be able to log all changes regarding a SomeEnterprise employee's identity  </t>
<t>	The logs should be secure and available for auditing</t>

</list>
</t>
</section>

<section title="Migration of the identities">
<t>

<vspace blankLines="0"/>
Description: <vspace blankLines="1"/>
A company SomeEnterprise runs an application ManageThem that relies on the identity information about its employees 
(e.g., identifiers, attributes). The identity information is stored at the cloud provided by SomeCSP. SomeEnterprise has decided to move 
identity information to the cloud of a different provider - AnotherCSP. In addition, SomeEnterprise has purchased a second application 
ManageThemMore, which also relies on the identity information. SomeEnterprise is able to move identity information to AnotherCSP without 
changing the format of identity information. 
The application ManageThemMore is able to use the identity information.</t>

<t>Pre-conditions:
<list style='symbols'>
<t>SomeCSP is a cloud service provider for SomeEnterprise </t>
<t>AnotherCSP is a new cloud service provider for SomeEnterprise </t>
<t>All involved cloud service providers and applications support the same standard specifying the format for and actions on the user 
(e.g., employee) identity information  </t>
</list>
</t>
<t>Post-conditions:
<list style='symbols'>
<t>SomeEnterprise has moved its employees' identity information from SomeCSP to AnotherCSP without making any changes to representation of 
identity information </t>
<t>Application ManageThemMore is able to use the identity information </t>
</list>
</t>

<t>Requirements:
<list style='symbols'>

<t> SomeEnterprise, the applications ManageThem and ManageThemMore, the providers SomeCSP and AnotherCSP support a common standard for 
identity information, which specifies the following:

<list style='symbols'>
<t> Format (or schema) for representing user identity information</t>
<t>Interfaces and protocol for managing user identity information</t>
</list>
</t>
<t> Cloud providers shall be able to log all actions related to SomeEnterprise employees' identities </t>
<t> The logs should be secure and available for auditing</t>
</list>
</t>
</section>

<section title="Single Sign-On (SSO) Service">
<t>

<vspace blankLines="0"/>
Description: <vspace blankLines="1"/>
Bob has an account with application hosted by a cloud service provider SomeCSP. SomeCSP has federated its user identities with a cloud 
service provider AnotherCSP. Bob requests a service from an application running on AnotherCSP. The application running on AnotherCSP, 
relying on Bob's authentication by SomeCSP and using identity information provided by SomeCSP, serves Bob's request. 
</t>

<t>Pre-conditions:
<list style='symbols'>
<t>Bob's identity information is stored on SomeCSP</t>
<t>SomeCSP and AnotherCSP have established trust and federated their user identities</t>
<t>SomeCSP is able to authenticate Bob</t>
<t>SomeCSP is able to securely provide the authentication results to AnotherCSP</t>
<t>SomeCSP is able to securely provide Bob's identity information (e.g., attributes) to AnotherCSP</t>
<t>AnotherCSP is able to verify information provided by SomeCSP</t>
<t>SomeCSP is able to process the identity information received from AnotherCSP</t>

</list>
</t>
<t>Post-conditions:

<vspace blankLines="1"/>
Bob has received the requested service from an application running on AnotherCSP without having to authenticate to that application explicitly.
</t>
<t>Requirements:
<list style='symbols'>
<t> Bob must have an account with SomeCSP</t>
<t>SomeCSP and AnotherCSP must establish trust and federate their user identities</t>
<t>SomeCSP must be able to authenticate Bob</t>
<t>SomeCSP must be able to securely provide the authentication results to AnotherCSP</t>
<t>SomeCSP must be able to securely provide Bob's identity information (e.g., attributes) to AnotherCSP</t>
<t>AnotherCSP must be able to verify the identity information provided by SomeCSP</t>
<t>SomeCSP must be able to process the identity information received from AnotherCSP</t>
<t>SomeCSP and AnotherCSP must log information generated by Bob's actions according to their policies and the trust agreement between them</t>
</list>

</t>
</section>


<section title="Provisioning of the user accounts for a Community of Interest (CoI)">
<t>
<vspace blankLines="0"/>
Description: <vspace blankLines="1"/>
Organization YourHR provides Human Resources (HR) services to a Community of Interest (CoI) YourCoI. The HR services are offered as 
Software-as-a-Service (SaaS) on public and private clouds. YourCoI's offices are located all over the world. Their Information Technology 
(IT) systems may be composed of the combinations of the applications running on Private and Public clouds along with the traditional IT systems. 
The local YourCoI offices are responsible for establishing personal information and (i.e., setting the user identities and attributes). 
YourHR services provide means for provisioning and distributing the employee identity information across all YourCoI offices. YourHR also 
enables the individual users (e.g., employees) to manage their personal information that they are responsible for (e.g., update of an address 
or a telephone number).  
</t>

<t>Pre-conditions:
<list style='symbols'>
<t>YourCoI has a complex infrastructure composed of the large number of local offices that rely on the diverse IT systems </t> 
<t>YourCoI has contracted YourHR to provide the HR services </t>
<t>Each local office has a right to establish a personal account for an employee</t>
</list>
</t>

<t>Post-conditions:
<list style='symbols'>
<t>All personal accounts are globally available to any authorized user or application across the YourCoI system through the services 
provided by YourHR </t> 
<t>The employees have ability to manage the part of personal information that is in their responsibility </t>
</list> 
</t>

<t>Requirements:
<list style='symbols'>
<t> YourHR must ensure that the personal information generated by the local offices is timely available in a globally-accessible database </t>
<t> Only authorized users and applications must be able to access personal information</t>
<t> Identity management of the personal data must be secure</t>
<t> All operation with identity data must be securely logged</t>
<t> The logs should be available for auditing</t>
</list>
</t>
</section>

<section title="Update attributes of a user who had previously interacted with a relying party web site">
<t>

<vspace blankLines="0"/>
Description: <vspace blankLines="1"/>
An end user has an account in a directory service A with one or more attributes.  That user then visits relying party web site B, and through a 
federation protocol (e.g., WS-Federation, SAML, OAuth), selected attributes of the user are transferred from the user's account in directory service 
A to the web site B at the time of the user's first visit to that site. 
<vspace blankLines="1"/>
The attributes of the user change later in directory service A.  For example, the attributes might change if the user changes 
their name, has their account disabled, or terminates their relationship with directory service A.  The directory service A then 
wishes to notify relying party web site B of these changes, as relying party B might (or might not) have a cache of those 
attributes, and if the relying party B were aware of these changes to their cached copy, would potentially cause a state change 
in relying party B.  (E.g., if the user's account were disabled in A, then the relying party B might wish to also change their 
access control policies as well).
</t>

<t>Pre-conditions:
<list style='symbols'>
<t>User has an account in a directory service A</t>
<t>User has one or more attributes</t>
<t>User visits web site of a relying party B</t>

</list>
</t>
<t>Post-conditions:

<vspace blankLines="1"/>
Selected attributes of the user are transferred from the user's account in directory service A to the web site B at the time 
of the user's first visit to that site.
</t>
<t>Requirements:
<vspace blankLines="1"/>
Relying parties have to be aware of changes to their cached copy, as these would potentially cause a state change in other relying parties.
</t>
</section>

<section title="Change notification">
<t>

<vspace blankLines="0"/>
Description: <vspace blankLines="1"/>
An end user has an account in a directory service A with one or more attributes.  That user then visits relying party web 
site B.  Relying party web site B queries directory service A for attributes associated with that user, and related 
resources.
<vspace blankLines="1"/>
The attributes of the user change later in directory service A. For example, the attributes might change if the user changes
 their name, has their account disabled, or terminates their relationship with directory service A.    Furthermore, other 
 resources and their attributes might also change.  The directory service A then wishes to notify relying party web site 
 B of these changes, as relying party B might (or might not) have a cache of those attributes, and if the relying party 
 B were aware of these changes to their cached copy, would potentially cause a state change in relying party B.
 <vspace blankLines="1"/>
The volume of changes, however, might be substantial, and only some of the changes may be of interest to relying party B, 
so directory service A does not wish to "push" all the changes to B.  Instead, directory service A wishes to notify B that 
there are changes potentially of interest, such that B can at an appropriate time subsequently contact directory service A 
and retrieve just the subset of changes of interest to B.
</t>

<t>Pre-conditions:
<list style='symbols'>
<t>User has an account in a directory service A </t>
<t>User has one or more attributes</t>
<t>User visits relying party web site B</t>

</list>
</t>
<t>Post-conditions:

<vspace blankLines="1"/>
Service A is able to notify B that there are changes potentially of interest.
</t>
<t>Requirements:
<vspace blankLines="1"/>
B must be able at an appropriate time to subsequently contact directory service A and retrieve just the subset 
of changes of interest to B.

</t>
</section>

</section> <!-- sectiion SCIM use cases -->




<section title="Security considerations">

<t>
TBD
 
</t>

</section> <!-- Security Considerations -->

<section title="IANA considerations">

<t>This Internet Draft includes no request to IANA.</t>

</section> <!-- iana-cons -->
<section title="Acknowledgements">
<t>
TBD
</t>
</section>
</middle>  

<back>


<references title='Informative References'>

 <?rfc include='http://xml.resource.org/public/rfc/bibxml3/reference.I-D.ietf-scim-api.xml' ?>

<?rfc include='http://xml.resource.org/public/rfc/bibxml3/reference.I-D.ietf-scim-core-schema.xml' ?>


        </references>


</back>
</rfc>


