{"revision":"c10276e953456835cdbb1f3a60d58ae1980be353","document":{"id":40653,"path":"platform-security/authentication/t_CreateASAML2Upd1SSOConfigMultiSSO.md","title":"SAML 2.0 configuration using Multi-Provider SSO","bundle":null,"doc_type":null,"release":"australia","body":"\n# SAML 2.0 configuration using Multi-Provider SSO\n\nYou can create or update a SAML 2.0 SSO configuration from the Multi-Provider SSO feature.\n\n## Before you begin\n\nRole required: sso\\_config\\_admin, business\\_rule\\_admin, script\\_include\\_admin\n\n## About this task\n\n**Note:** New to the Jakarta release, you must validate your configuration by using the Test Connection functionality before you can activate your IdP configuration. You can still use the Update functionality to save your configuration data, but it is not an active configuration without a successful test connection.\n\n## Procedure\n\n1.  Navigate to **All** &gt; **Multi-Provider SSO** &gt; **Identity Providers**.\n\n2.  Do one of the following options.\n\n    -   To update a configuration, select an SSO configuration record.\n    -   To create configuration, select **New** &gt; **SAML**.\n3.  Enter the IdP information by one of the following methods.\n\n<table id=\"choicetable_okg_pdd_4z\"><tbody><tr><td id=\"d229318e119\">\n\n**Using a metadata descriptor URL**\n\n</td><td>\n\nSelect the URL check box and enter the URL of the IdP that you're using.\n\n</td></tr><tr><td id=\"d229318e128\">\n\n**Using metadata descriptor XML file**\n\n</td><td>\n\nSelect the XML check box and paste in the XML data generated from the IdP you're using.\n\n</td></tr><tr><td id=\"d229318e137\">\n\n**Entering metadata manually**\n\n</td><td>\n\nClose the pop-up window and manually enter the data in the property fields.\n\n</td></tr></tbody>\n</table>    **Note:** All required fields must be filled-in on the Identity Provider form.\n\n<table id=\"table_lf5_c3d_4z\"><thead><tr><th>\n\nProperty\n\n</th><th>\n\nRequired\n\n</th><th>\n\nDescription\n\n</th></tr></thead><tbody><tr><td>\n\nName\n\n</td><td>\n\nYes\n\n</td><td>\n\nEnter the name for the IdP. This IdP is the auto redirect sys id.\n\n</td></tr><tr><td>\n\nActive\n\n</td><td>\n\nYes\n\n</td><td>\n\nActive should be set to true for the IdP to be used for authentication.**Note:** The option to set this property only comes after a successful test connection.\n\n</td></tr><tr><td>\n\nDefault\n\n</td><td>\n\nNo\n\n</td><td>\n\nThe Auto Redirect IdP, formerly known as the Primary IdP, automatically redirects users to access the base instance URL. This property sets this IdP configuration as the default.\n\n</td></tr><tr><td>\n\nAuto Redirect IdP\n\n</td><td>\n\nNo\n\n</td><td>\n\nSets this IdP configuration as the Auto Redirect IdP.**Note:** If you make a new Auto Redirect IdP configuration active, the**glide\\_sso\\_id**cookie updates with the new Auto Redirect IdP. The **glide.authenticate.sso.update.idp.cookie** system property, automatically enabled, controls this feature.\n\n</td></tr><tr><td>\n\nIdentity Provider URL\n\n</td><td>\n\nYes\n\n</td><td>\n\nEnter the URL to your IdP. Each IdP URL must be unique.\n\n</td></tr><tr><td>\n\nIdentity Provider's AuthnRequest\n\n</td><td>\n\nYes\n\n</td><td>\n\nEnter the URL to the HTTP-Redirect binding obtained from the SingleSignOnService element.\n\n</td></tr><tr><td>\n\nIdentity Provider's SingleLogoutRequest\n\n</td><td>\n\nNo\n\n</td><td>\n\nEnter the URL obtained from the SingleLogoutService element.\n\n</td></tr><tr><td>\n\nServiceNow Homepage\n\n</td><td>\n\nYes\n\n</td><td>\n\nEnter the URL, including login page, of the instance for which the IdP authenticates. For example: https://yourinstance.service-now.com/navpage.do\n\n</td></tr><tr><td>\n\nEntity ID/Issuer\n\n</td><td>\n\nYes\n\n</td><td>\n\nEnter the base URL, excluding login page. of the instance for which the IdP authenticates. For example: https://yourinstance.service-now.com/\n\n</td></tr><tr><td>\n\nAudience URI\n\n</td><td>\n\nYes\n\n</td><td>\n\nEnter the base URL, excluding login page. of the instance for which the IdP authenticates. For example: https://yourinstance.service-now.com/\n\n</td></tr><tr><td>\n\nNameID Policy\n\n</td><td>\n\nYes\n\n</td><td>\n\nEnter the value of the NameIDFormat element the integration uses.\n\n</td></tr><tr><td>\n\nExternal logout redirect\n\n</td><td>\n\nNo\n\n</td><td>\n\nEnter the URL where the integration redirects users after they log out.\n\n</td></tr><tr><td>\n\nFailed Requirement Redirect\n\n</td><td>\n\nNo\n\n</td><td>\n\nEnter the URL for redirecting failed authentication requests. By default, this is the URL endpoint of an error page or logout page configured in the IdP. You can populate this value in the glide.authenticate.failed\\_requirement\\_redirect field.\n\n</td></tr><tr><td>\n\nClient Type\n\n</td><td>\n\nNo\n\n</td><td>\n\nChoose the client type, based on the type of your client. Options:**Iframe Embedded**.**Note:** If client type field is required for your configuration, you can edit the form and add the field. To know more, see [Configure client type for OAuth and SSO records](https://raw.githubusercontent.com/ServiceNow/ServiceNowDocs/australia/markdown/australia/platform-security/authentication/client-type.md).\n\n</td></tr></tbody>\n</table>4.  Encryption And Signing tab\n\n    **Note:**\n\n    -   You should use your own self-signed or CA-signed certificate. The following types of certificates are supported:\n        -   [BCFKS \\(FIPS-compliant\\) keystore](https://raw.githubusercontent.com/ServiceNow/ServiceNowDocs/australia/markdown/australia/platform-security/authentication/create-fips-certificate-for-saml.md) \\(Recommended\\)\n        -   Java keystore\n    -   The **FIPS approved mode** requires different certificates for **Encryption** and **Signing**.\n    -   Use different certificates for **Encryption** and **Signing** for a better security posture.\n    -   While using the certificates, make sure to update the following system properties with the sys\\_id of the certificates \\(x.509 Certificates\\):\n        -   **Signing** \\(`glide.authenticate.sso.saml2.keystore`\\)\n        -   **Encryption** \\(`glide.authenticate.sso.saml2.encryption.keystore`\\)\n    -   Make sure to update the key alias and key password of the **Signing** and **Encryption** keystores in the Identity Provider record and generate the metadata \\(Select **Generate Metadata**\\).\n    -   Upload the signing and encryption certificates present in the generated metadata \\(XML\\) to the Identity Provider.\n    -   To configure certificate expiry notification, use **Notify on expiration** and **Groups to notify on expiration**, and set the notification timing using **Warn in days to expire** and **Frequency**.\n    \\[Omitted image \"encryption-signing.png\"\\] Alt text: Encryption And Signing\n\n    |Property|Description|\n    |--------|-----------|\n    |Signing Key Alias|Enter the Signing alias of the key entry stored in [SAML 2.0 SP Keystore](https://raw.githubusercontent.com/ServiceNow/ServiceNowDocs/australia/markdown/australia/platform-security/authentication/t_CreatingAServiceProviderKeyStore.md).|\n    |Signing Key Password|Enter the Signing password of the key entry stored in [SAML 2.0 SP Keystore](https://raw.githubusercontent.com/ServiceNow/ServiceNowDocs/australia/markdown/australia/platform-security/authentication/t_CreatingAServiceProviderKeyStore.md).|\n    |Encryption Key Alias|Enter the Encryption alias of the key entry stored in [SAML 2.0 SP Keystore](https://raw.githubusercontent.com/ServiceNow/ServiceNowDocs/australia/markdown/australia/platform-security/authentication/t_CreatingAServiceProviderKeyStore.md).|\n    |Encryption Key Password|Enter the Encryption password of the key entry stored in [SAML 2.0 SP Keystore](https://raw.githubusercontent.com/ServiceNow/ServiceNowDocs/australia/markdown/australia/platform-security/authentication/t_CreatingAServiceProviderKeyStore.md).|\n    |Encrypt Assertion|Select the check box to encrypt the assertion in the SAML response. The metadata generated for the IDP embeds the x509 certificate, which the IDP uses to encrypt the assertion in the SAML response that it generates.|\n    |Signing Signature Algorithm|Enter the URL that points to the SAML 2.0 Identity Provider AuthnRequest Consumer for eSignature Authentication.|\n    |Sign AuthnRequest|Select the check box to enable the IdP single-sign on service to receive a signed AuthnRequest.|\n    |Sign LogoutRequest|Select the check box to enable the IdP single-sign on service to receive a signed LogoutRequest.|\n    |Sign Logout Response|Select the check box to enable the IdP single-sign on service to receive a signed Logout Response.|\n\n5.  User Provisioning tab\n\n<table id=\"table_bfv_frd_4z\"><thead><tr><th>\n\nProperty\n\n</th><th>\n\nDescription\n\n</th></tr></thead><tbody><tr><td>\n\nAuto Provisioning User\n\n</td><td>\n\nEnable automatic user provisioning, creates the users when user doesn't exists in the instance User Table based on the information provided by the IdP.\n\n</td></tr><tr><td>\n\nUpdate User Record Upon Each Login\n\n</td><td>\n\nUpdates user information in the instance User table with the information in the IdP each time the user logs in using SAML.\n\n</td></tr><tr><td>\n\nUser groups applied to provisioned users\n\n</td><td>\n\nSpecifies the user groups that are automatically assigned to users created through SAML user provisioning.\n\n When a user is provisioned from the SAML identity provider, the instance adds the user to each group listed in this field, so provisioned users receive consistent group membership — and any roles or access those groups grant — without manual assignment.\n\n</td></tr></tbody>\n</table>6.  Advanced tab\n\n    \\[Omitted image \"advanced.png\"\\] Alt text: Advanced tab\n\n<table id=\"table_aqk_mnd_4z\"><thead><tr><th>\n\nProperty\n\n</th><th>\n\nDescription\n\n</th></tr></thead><tbody><tr><td>\n\nUser Field\n\n</td><td>\n\nEnter the field on the User table that contains the value the IdP requires to identify the user. This is a unique id as part of the response. For example, user name, employee id, and so on. In the sys user table, this unique id is matched with the user details.\n\n</td></tr><tr><td>\n\nNameID Attribute\n\n</td><td>\n\nLeave this field empty unless you configure a new NameID policy. If you configure a new policy, the system requires the User table it must use to identify the user logging in. The system matches the NameID token to the name of that User table field here.\n\n</td></tr><tr><td>\n\nCreate AuthnContextClass\n\n</td><td>\n\nSelect the check box to specify a particular context class such as Password Protected Transport. If the check box is cleared, the IdP selects the most appropriate context class.\n\n</td></tr><tr><td>\n\nAuthnContextClassRef Method\n\n</td><td>\n\nEnter the URN of the login mechanism you want the IdP to use to authenticate users.\n\n</td></tr><tr><td>\n\nForce AuthnRequest\n\n</td><td>\n\nSelect the check box to force AuthnRequests to occur.\n\n</td></tr><tr><td>\n\nIs Passive AuthnRequest\n\n</td><td>\n\nSelect the check box if the AuthnRequest is passive.\n\n</td></tr><tr><td>\n\nSingle Sign-On Script\n\n</td><td>\n\nSelect the Single Sign-On script. The default is MultiSSOV2\\_SAML2\\_custom.\n\n</td></tr><tr><td>\n\nSign Logout Response\n\n</td><td>\n\nEnter the logout response details in this field.\n\n</td></tr><tr><td>\n\nClock Skew\n\n</td><td>\n\nEnter the number of seconds between the two attributes that make up the SAMLResponse nonce. The default is 60. A valid SAMLResponse must fall between the notBefore and notOnOrAfter date-time values. See Sample SAML 2 Response with the SubjectConfirmation and SubjectConfirmationData Elements and Sample SAML 2 Response with the AudienceRestrictions and Audience Elements for a sample SAMLResponse message.\n\n</td></tr><tr><td>\n\nProtocol Binding for the IDP's SingleLogoutReuqest\n\n</td><td>\n\nEnter one of the supported values listed in the Binding attribute from the SingleLogoutService element.\n\n</td></tr><tr><td>\n\nMetadata URL from which IDP properties are imported\n\n</td><td>\n\nThe IdP properties import from this URL. If set, it enables the automatic import of SAML certificate from the IdP if the previous certificate has expired. **Note:** If you upgrade from SAML2 Update 1 to Multi-Provider SSO or if you manually set up your SSO connection, the IdP Metadata URL does not automatically populate.\n\n</td></tr><tr><td>\n\nRequest\n\n</td><td>\n\nAn unique id as part of request, the id can be user name, employee id, and so on.**Note:** Both redirect and post binding is supported for request. The option to set this field only appears after a successful test connection. For more information see, [Test IdP connections](https://raw.githubusercontent.com/ServiceNow/ServiceNowDocs/australia/markdown/australia/platform-security/authentication/t_TestIdPConnections.md).\n\n</td></tr><tr><td>\n\nResponse\n\n</td><td>\n\nAn unique id as part of response, the id can be user name, employee id, and so on. **Note:** Both redirect and post binding is supported for response. The option to set this field only appears after a successful test connection. For more information see, [Test IdP connections](https://raw.githubusercontent.com/ServiceNow/ServiceNowDocs/australia/markdown/australia/platform-security/authentication/t_TestIdPConnections.md).\n\n</td></tr></tbody>\n</table>7.  On the Continuous Authentication tab, configure the following fields:\n\n    **Note:**\n\n    -   The Continuous Authentication tab appears only when you install the **Zero Trust - Continuous Authentication** \\(`com.snc.zero_trust_continuous_authentication`\\) plugin that requires license.\n    -   If you're using continuous authentication policy to protect access to table or data class, see [Continuous Authentication \\(CA\\)](https://raw.githubusercontent.com/ServiceNow/ServiceNowDocs/australia/markdown/australia/platform-security/ca-homepage.md).\n    \\[Omitted image \"ca-tab.png\"\\] Alt text: Continuous Authentication - tab information\n\n<table id=\"table_vvj_d5x_4dc\"><thead><tr><th>\n\nField\n\n</th><th>\n\nDescription\n\n</th></tr></thead><tbody><tr><td>\n\nContinuous Authentication Configured\n\n</td><td>\n\nSelect the check-box to set the configuration active.\n\n</td></tr><tr><td>\n\nContinuous Authentication Consumer URL\n\n</td><td>\n\nProvide the Consumer URL from the Identity Provider.\n\n</td></tr><tr><td>\n\nContinuous Authentication Script\n\n</td><td>\n\nSelect the look-up icon to choose the script provided from the platform. In this configuration, for SAML: **MultiSSOv2\\_SAML2\\_ContinuousAuth\\_custom**\n\n</td></tr></tbody>\n</table>\n"}}