Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.
Wiki Markup
{note}work in progress{note}
{div:style=font-weight:bold;font-size:1.2em;}[Account Service Home]{div}

{toc:minLevel=3|maxLevel=5}


h3.Description

Account service offers operations to manage a CollectionSpace account. To securely access the CollectionSpace services, an account for a user is required in the system. An account is associated with an identity. The identity could either reside in [collectionspace:CollectionSpace Identity Provider (CSIP)] which is the default identity provider or a foreign identity provider such as [CalNet|https://calnet.berkeley.edu/] or an [OpenID provider|http://openid.net/get-an-openid/].

{note}In release 0.4 only CSIP is supported{note} 

h3. Key Concepts

A CollectionSpace user's identity could reside in the default identity provider or a foreign identity provider. Account Service manages an identity only if the identity is stored in the realm managed by the default identity provider. That means, Account Service also provides identity management functions for the default identity provider.

h4. Relationships

Following describes the relationship between an Account, a Person and a User in the [default identity provider|collectionspace:CollectionSpace Identity Provider (CSIP)]. 

{gliffy:name=account_relationships|space=collectionspace|page=Account Service Description and Assumptions|pageid=27099214|align=left|size=M}

* An account is associated with one person. 
* An account could be associated with one or more tenants. 
* An account is always associated with one user identity. This user identity could be managed by CSIP or by a 3rd party identity provider. 

h4. Assumptions

# In a multi-tenant SaaS deployment of CollectionSpace, it is assumed that the account service is consumed by users with privileges to manage accounts for a tenant.
# Tenant provisioning has already taken place before provisioning any account for that tenant.
# At the time of provisioning a tenant, an administrator account is provisioned off-band (without using the account service).
# Account service is not a management interface for the 3rd party identity providers.

h4. Account Provisioning

This section describes how accounts are provisioned in CollectionSpace. There are two scenarios.

# Account for a user managed by CollectionSpace's default identity provider
# Account for a user managed by a 3rd party identity provider such as CalNet, LDAP, OpenId provider, etc.


h5. User managed by CollectionSpace identity provider (CSIP)

{gliffy:name=account_provisioning_csip|space=collectionspace|page=Account Service Description and Assumptions|pageid=27099214|align=left|size=M}

# The [account create (POST)|Account Service REST APIs - Release v0.1#create] request from service consumer provides account information including user id and one or more tenant ids to which the user is associated with.
# The account service creates an account.
# Person service is called to create a person.
# Account service registers userid and password with CSIP.
# Account service registers the userid with one or more tenant ids provided.

h5. User managed by a 3rd party identity provider

{gliffy:name=account_provisioning_3rdparty_idp|space=collectionspace|page=Account Service Description and Assumptions|pageid=27099214|align=left|size=M}

# The [account create (POST)|Account Service REST APIs - Release v0.1#create] request from service consumer provides account information including user id and one or more tenant ids to which the user is associated with.
# The account service creates an account.
# Person service is called to create a person.
# Account service registers the userid with one or more tenant ids provided.

h4. Issues

{multi-excerpt-include:pageTitle=Authentication Service Description and Assumptions|name=issue sign up a user|nopanel=true}

 
{note}
* The Person Service is the System of Record (SOR), or authoritative data source, for personIds.
* The SOR for systemIds is TBD.
{note}

h3. References
# [collectionspace:Authentication Service Description and Assumptions]
# [collectionspace:CollectionSpace Identity Provider (CSIP)]
# [Design notes for multi-tenancy in CollectionSpace]


h3. Questions