In this scenario, the service provider (SP) sends a SAML artifact to the identity provider (IdP) through an HTTP redirect. The IdP uses the artifact to obtain an authentication request from the SP, then the IdP sends another artifact to the SP, which the SP uses to obtain the SAML response.
- A user requests access to a protected SP resource. The user is not logged on to the site. The request redirects to the federation server to handle authentication.
- The Assertion Consumer Service (ACS) generates
an authentication request and creates an artifact. It sends an HTTP redirect
containing the artifact through the user's browser to the IdP's single sign-on (SSO) service.
The artifact contains the source ID of the SP's Artifact Resolution Service (ARS) and a reference to the authentication request.
- The SSO service extracts the source ID from
the SAML artifact and sends a SAML artifact resolve message containing the artifact
to the SP's artifact resolution service.
The federation agreement maps the SP and IdP's source IDs and remote artifact resolution services prior to this action.
- The SP's artifact resolution service sends back a SAML artifact response message containing the previously-generated authentication request.
- If the user is not already logged on to the IdP site or needs to re-authenticate, The IdP asks for credentials, such as ID and password, and the user logs on.
- The user data store can provide additional information about the user for inclusion in the SAML response. The federation agreement between the IdP and the SP predetermines these attributes. See User attributes.
- The IdP federation server generates an assertion, creates an artifact, and sends an HTTP redirect containing the artifact through the browser to the SP's Assertion Consumer Service (ACS).
- The ACS extracts the Source ID from the SAML artifact and sends an artifact-resolve message to the identity federation server's Artifact Resolution Service (ARS).
- The ARS sends a SAML artifact response message containing the previously-generated assertion.
- (Not shown) If the IdP returns a valid SAML assertion to the SP, a session is established on the SP and the browser is redirected to the target resource.