{"revision":"c10276e953456835cdbb1f3a60d58ae1980be353","document":{"id":40796,"path":"platform-security/certificate-based-authentication/set-up-mutual-auth.md","title":"Set up Certificate-based authentication","bundle":null,"doc_type":null,"release":"australia","body":"\n# Set up Certificate-based authentication\n\nSet up mutual authentication for either user interface-based logins or inbound web services.\n\n## Before you begin\n\nRole required: sso\\_config\\_admin\n\nCheck that your instance is using an ADCv2 load balancer. For more information, see the[ADCv2 Migration knowledge article](https://support.servicenow.com/kb?id=kb_article_view&sysparm_article=KB0952875). If your instance is not using the ADCv2 load balancer, contact Now Support.\n\n**Note:**\n\n-   Certificate Based Authentication is not supported on the On-Prem and edge encryption enabled instance.\n-   To enable Certificate Based Authentication on self-hosted instance, review this [KB article](https://support.servicenow.com/kb?id=kb_article_view&sysparm_article=KB1272738) and follow the instructions available in the **Native Certificate-Based Authentication** row within the table.\n\n.\n\n## Procedure\n\n1.  Set up Certificate-based authentication to:\n\n    -   Allow end users to securely log in to the ServiceNow AI Platform or Service Portal using PIV or CAC cards. After certificate-based authentication is enabled, you can self-register the PEM certificate or an administrator can map the certificate for you. See [Log in using Certificate-based authentication](https://raw.githubusercontent.com/ServiceNow/ServiceNowDocs/australia/markdown/australia/platform-security/certificate-based-authentication/ui-login-mutual-auth.md).\n    -   Enable mutual authentication for inbound web services. Once Certificate-based authentication is set up, the system uses the provided certificates to mutually authenticate requests to access ServiceNow REST and SOAP APIs.\n\n## Activate Certificate-based authentication\n\nYou can activate the Certificate-based authentication plugin \\(com.glide.auth.mutual\\) for ServiceNow AI Platform if you have the admin role.\n\n### Before you begin\n\nRole required: admin\n\n### About this task\n\nThe following Tables are installed with Certificate-based authentication:\n\n-   sys\\_user\\_certificate\n-   sys\\_ca\\_certificate\n-   sys\\_ca\\_certificate\\_api\\_track\n\n### Procedure\n\n1.  Navigate to **All** &gt; **System Applications** &gt; **All Available Applications** &gt; **All**.\n\n2.  Find the Certificate-based authentication plugin \\(com.glide.auth.mutual\\) using the filter criteria and search bar.\n\n    You can search for the plugin by its name or ID. If you cannot find a plugin, you might have to request it from ServiceNow personnel.\n\n3.  Select **Install** to start the installation process.\n\n    **Note:** When domain separation and delegated admin are enabled in an instance, the administrative user must be in the **global** domain. Otherwise, the following error appears: `Application installation is unavailable because another operation is running: Plugin Activation for <plugin name>.`\n\n    You will see a message after installation is completed. For information about the components installed with a plugin, see [Find components installed with an application](https://raw.githubusercontent.com/ServiceNow/ServiceNowDocs/australia/markdown/platform-administration/find-components.md).\n\n\n## Register CA certificate\n\nRegister root certificates or intermediate certificates to make them available for authentication.\n\n### Before you begin\n\nRole required: sso\\_config\\_admin\n\n### Procedure\n\n1.  Navigate to **All** &gt; **Certificate Based Authentication** &gt; **CA Certificate Chain**.\n\n2.  Click **New**.\n\n3.  On the form, fill in the fields:\n\n<table id=\"table_att_rwx_c4b\"><thead><tr><th>\n\nField\n\n</th><th>\n\nDescription\n\n</th></tr></thead><tbody><tr><td>\n\nName\n\n</td><td>\n\nName to identify the certificate.\n\n</td></tr><tr><td>\n\nExpiration notification\n\n</td><td>\n\nOption to warn users when a certificate is about to expire.\n\n</td></tr><tr><td>\n\nNotify on expiration\n\n</td><td>\n\nList of users to be notified when the certificate expires.\n\n</td></tr><tr><td>\n\nWarn in days to expire\n\n</td><td>\n\nNumber of days when a notification is sent to users before a certificate expires.\n\n</td></tr><tr><td>\n\nActive\n\n</td><td>\n\nOption to make the client certificate active.\n\n</td></tr><tr><td>\n\nFormat\n\n</td><td>\n\nPEM\n\n</td></tr><tr><td>\n\nType\n\n</td><td>\n\nType of certificate. Options include:-   **CA Cert**: The root CA certificate. Can also include intermediate certificates in the chain. CA certificates are automatically synced with the load balancer. Use this option when possible to avoid missing a required certificate in the chain.\n-   **Intermediate Cert**: An intermediate certificate in the certificate chain. This certificate remains on the instance only and is not synced with the load balancer. Only use this option if you need to add an intermediate certificate to an existing chain.\n\n\n</td></tr><tr><td>\n\nShort description\n\n</td><td>\n\nShort description of the user client certificate.\n\n</td></tr></tbody>\n</table>    **Note:** During the certificate upload, the read-only fields, **Valid from**, **Expires**, **Expires in days**, **Issuer**, and **Subject**, **Certificate Chain**, and **PEM Certificate** are extracted and auto-populated.\n\n4.  Click **Submit**.\n\n5.  Click **Validate Stores/Certificates** to validate the certificate.\n\n\n## Map PEM certificate to user\n\nMap PEM certificates to users to enable them to log in using PIV or CAC cards or to authenticate inbound requests. You can map multiple PEM certificates to a user.\n\n### Before you begin\n\n-   Role required: sso\\_config\\_admin\n-   Make sure that you have the Privacy Enhanced Mail \\(PEM\\) certificate of the user.\n\n**Note:** After the Map PEM certificate to User configuration, the \"verify certificate\" will fail. This is because the PEM certificate is not stored.\n\n### Procedure\n\n1.  Navigate to **All** &gt; **Certificate Based Authentication** &gt; **User to Certificate Mapping** and click **New**.\n\n2.  On the form, fill in these fields:\n\n<table id=\"table_r1h_21z_14b\"><thead><tr><th>\n\nField\n\n</th><th>\n\nDescription\n\n</th></tr></thead><tbody><tr><td>\n\nName\n\n</td><td>\n\nName of the user client certificate.\n\n</td></tr><tr><td>\n\nExpiration notification\n\n</td><td>\n\nOption to warn users when a certificate is about to expire.\n\n</td></tr><tr><td>\n\nWarn in days to expire\n\n</td><td>\n\nNumber of days when a notification is sent to users before a certificate expires.\n\n</td></tr><tr><td>\n\nNotify on expiration\n\n</td><td>\n\nList of users to be notified when the certificate expires.\n\n</td></tr><tr><td>\n\nActive\n\n</td><td>\n\nOption to make the client certificate active.\n\n</td></tr><tr><td>\n\nUser\n\n</td><td>\n\nUser who is mapped to the client certificate.The system receives the client certificate from either the inbound request or [certificate registration](https://raw.githubusercontent.com/ServiceNow/ServiceNowDocs/australia/markdown/australia/platform-security/certificate-based-authentication/ui-login-mutual-auth.md), and then uses the user designated in this field to initiate a session to execute the request.\n\n</td></tr><tr><td>\n\nShort description\n\n</td><td>\n\nShort description of the user client certificate.\n\n</td></tr><tr><td>\n\nFormat\n\n</td><td>\n\nPrivacy Enhanced Mail \\(PEM\\) format is a base-64 encoded Distinguished Encoding Rules \\(DER\\) certificate.\n\n</td></tr><tr><td>\n\nType\n\n</td><td>\n\nClient cert. This field is read only.\n\n</td></tr></tbody>\n</table>    **Note:** During the certificate upload, the read-only fields, **Valid from**, **Expires**, **Expires in days**, **Issuer**, and **Subject** are extracted and auto-populated.\n\n3.  Click the attachments icon and upload the certificate.\n\n4.  Click **Submit**.\n\n    The certificate is validated and mapped to the specified user if the certificate is from a trusted Certificate Authority \\(CA\\).\n\n\n## Configure Certificate-based authentication properties\n\nUse system properties to enable or disable certificate-based authentication features.\n\n### Before you begin\n\nRole required: sso\\_config\\_admin\n\n### Procedure\n\n1.  Navigate to **All** &gt; **Certificate Based Authentication** &gt; **Properties**.\n\n2.  On the form, fill in the fields:\n\n<table id=\"table_fh4_vb1_b4b\"><thead><tr><th>\n\nProperty\n\n</th><th>\n\nDescription\n\n</th></tr></thead><tbody><tr><td>\n\nEnable certificate based authentication\n\n</td><td>\n\nOption to enable to Certificate-based authentication for both user interface logins and inbound web services.Default: true\n\n**Note:** On the Portal pages, use the Form Layout to add the field to the form and then enable the property.\n\n</td></tr><tr><td>\n\nShow 'Log in with PIV/CAC' option in login screen\n\n</td><td>\n\nDisplays the **Log in with PIV/CAC card** option on the login screen. Allows users to log in using Certificate-based authentication using the user interface.Default: false\n\n</td></tr><tr><td>\n\nEnable auto-redirect for certificate based login\n\n</td><td>\n\nDetermines whether to require that the user click **Log in with PIV/CAC card** after selecting a registered certificate and entering their PIN. Activate to automatically log in the user after they select a registered client certificate and enter their PIN. Deactivate to require that the user click **Log in with PIV/CAC card** after they select a registered client certificate and enter their PIN.Default: false\n\n</td></tr></tbody>\n</table>\n"}}