Configuration
This section outlines the requirements for configuring SAML 2.0 with ID.me.
Prerequisites
You must have the following to proceed with configuration:
- An established relationship with ID.me
- An understanding of the SAML protocol
- Access to the appropriate development environment and resources on the partner’s side
- An application that is able to support federated authentication via SAML 2.0 to consume the ID.me SAML service
Required information
ID.me will provide:
IdP metadata for both the Sandbox and Production environments:
Your organization will provide:
SP metadata – An XML document which contains information necessary for interaction with SAML-enabled identity or service providers. The document contains URLs of endpoints, information about supported bindings, identifiers and public keys.
Environments
ID.me offers two separate environments, Sandbox idmelabs.com and Production id.me. Sandbox does not contain any PII or user data. Production does not contain any test identities. Your ID.me team is available to further discuss the differences as well as approaches to working with both.
SAML metadata
Once an account is created, SAML metadata (along with keys) must be exchanged to ensure proper configuration of the endpoints.
Be sure to preserve formatting and whitespace when importing XML metadata—it prevents errors
The metadata document describes the IdP to a SP, including the following elements:
- The endpoint addresses for communication
- The X.509 certificates being used to sign and encrypt SAML assertions
- The SAML bindings supported by the service provider
EntityID
The unique name that distinguishes it from any other entity. Specified in metadata.
SAML bindings
The ID.me IdP SAML service supports HTTP POST and HTTP Redirect bindings.
POST
Redirect
Name identifier (NameIDFormat)
The ID.me IdP SAML service supports the following NameID formats:
Best practice
ID.me recommends nameid-format:persistent
based on UUID as the UUID within ID.me is a unique identifier which will not change and the other NameID values can vary.
Authentication context (AuthnContext)
The ID.me IdP SAML service supports invoking different authentication and verification policies on a per-application or per-request basis. The policy name is required to be passed along within the AuthnContext. The ID.me team will provide the specific value to be used.
Sandbox example
The following is an IdP initiated SSO example. ID.me strongly recommends an SP initiated SSO where the SP generates the AuthnRequest.
In the example below, <policy-handle>
would be replaced with the appropriate policy name which is provided by ID.me.
SAML is a secure protocol, which supports encryption and message signing. In addition, the HTTP communication security between the SP and the IdP is ensured by using SSL (TLS v1.1 or higher).
For more information about available policies and support for setting these up, please contact your ID.me team for additional information.
RelayState
A parameter used to identify the specific resource the user will access after they are signed in and directed to the relying party (RP).
XML signature
All ID.me SAML messages are digitally signed. This includes all requests, assertions and metadata. The XML signature is contained within the element. The signature serves as proof that only the IdP could have signed the element, and also to guarantee the integrity of the assertion. ID.me signs messages using SHA256, SHA384 and SHA512 algorithms.
XML Encryption
ID.me requires all SAML assertions to be encrypted. This helps protect any confidential data in the response. The encrypted assertion is contained within the element.
ID.me supports using AES-128, AES-192 and AES-256 as message encryption algorithms.
Resources
Web Access management software configurations
Broadcom Siteminder Federation Manager
Broadcom Siteminder’s Federation Manager can be configured to allow the ID.me network to operate as an Identity Provider (IdP). The following links below are to Broadcom documentation related to this process. These product pages may be updated from time to time by the vendor, please access the most current documentation directly through your vendor’s support portal.
For more information, see the Federation Manager Guide
Oracle Access Manager
Oracle 11g can be configured to allow the ID.me network to operate as an Identity Provider (IdP). The following links below are to Oracle documentation related to this process. These product pages may be updated from time to time by the vendor, please access the most current documentation directly through your vendor’s support portal.
For more information, see the Federation Manager SAML 2.0 Configuration Oracle Product Support Page
Tivoli Access Manager
IBM Tivoli can be configured to allow the ID.me network to operate as an Identity Provider (IdP). The following links below are to IBM documentation related to this process. These product pages may be updated from time to time by the vendor, please access the most current documentation directly through your vendor’s support portal.
For more information, see Configuring SAML 2.0 SP
Forgerock Open Access Manager
Forgerock OpenAM can be configured to allow the ID.me network to operate as an Identity Provider (IdP). The following links below are to Forgerock documentation related to this process. These product pages may be updated from time to time by the vendor, please access the most current documentation directly through your vendor’s support portal.
For more information, see Forgerock Open Access Manager
SimpleSAML
Simple SAML can be configured to allow the ID.me network to operate as an Identity Provider (IdP). The following links below are to Simple SAML documentation related to this process. These product pages may be updated from time to time by the vendor, please access the most current documentation directly through your vendor’s support portal.
For more information, see the Simple SAML documentation
GluuSAML
Gluu can be configured to allow the ID.me network to operate as an Identity Provider (IdP). The following links below are to Gluu documentation related to this process. These product pages may be updated from time to time by the vendor, please access the most current documentation directly through your vendor’s support portal.
For more information, see Set up SAML 2.0 Trust Relationships in GLUU
Test credentials
Manual creation
When going through the “Create Account” process, you can submit most information as long as it meets the attribute format (i.e. phone numbers are the correct length and contain numbers) and sample documents (i.e. driver’s license from the DMV). All test credentials created this way will return a standard data set.
Automated creation
Working with your ID.me team, you can either complete a test credential template spreadsheet or randomly generated attributes can be used. Once created, the ID.me team will deliver a spreadsheet with email addresses and passwords which can be used to test your sandbox environment.