Single sign-on (SSO) is an authentication method that lets users access multiple applications with one login and one set of credentials. Yext supports two types of SSO: SAML SSO and Signed Link SSO.
SAML (Security Assertion Markup Language) is the industry-standard SSO solution. If your organization already uses a SAML identity provider such as Okta or Active Directory Federation Services, authenticate via SAML rather than Signed Link. This article walks through how to set up and configure SAML SSO.
Note: If you use Signed Link SSO instead (primarily for partners who want to enable SSO for their customers and iframe the Yext platform), see Configure Signed Link SSO.
SAML configuration happens in two places: the identity provider (IDP), which is the tool that stores users and performs authentication, and the service provider (SP), which is Yext in this case.
Before You Begin
Confirm you can access the SAML configuration settings before configuring the IDP and SP.
Confirm your Yext account is configured to use SAML SSO:
- Go to Account Settings.
- Check whether the SAML Configuration tile appears under User Access Management.
- If it appears, your account is already configured for SAML SSO. Continue to the identity provider configuration below.
- If it doesn't appear, continue with the steps below.
Confirm your Yext user can manage and view users:
- Go to Account Settings > User Access Management > Users and find your user in the table to check your assigned role.
- If you can't see these pages, assign a role with permission to manage and view users to your user. See Overview of Users, Roles, and Permissions for instructions.
- If your role is Account Manager or Full Control, you already have this permission by default.
- Go to Account Settings > User Access Management > Roles, select your assigned role, and go to the Platform tab. Under Account Management, check whether Users has Manage and View selected.
- Go to Account Settings to check whether the SAML Configuration tile is available.
- If it's available, SAML SSO is already enabled for your account.
- If it isn't, contact your Yext Account Manager to enable it.
Configure the Identity Provider
The steps to configure an IDP vary by provider. Yext has dedicated guides for these common providers:
Find your IDP configuration values in Yext:
- Go to Account Settings > User Access Management > SAML Configuration.
- Note the Assertion Consumer Service URL and Audience URL (SP Entity ID) at the top of the page. These two values are the same.
- If you don't see the SAML Configuration page, confirm your user has the Account Manager role assigned.
Configure a SAML application for Yext within your IDP:
- Log in to your IDP.
- Create a new SAML 2.0 application for Yext.
- Enter the configuration information. Field names and requirements vary by IDP, but the fields below are common:
| Field | Usually Required? | Description |
|---|---|---|
| Assertion Consumer Service (ACS) URL | Yes | The location where the SAML assertion is sent with an HTTP POST. Use the value from Yext's SAML Configuration page. |
| Audience URL (SP Entity ID) | Yes | The unique identifier for the intended audience of the SAML assertion. Use the value from Yext's SAML Configuration page. |
| Recipient URL | Yes | The location where the application may present the SAML assertion. Use the ACS URL. |
| Destination URL | Yes | The location where the SAML response is sent inside the SAML assertion. Use the ACS URL. |
Configure Yext as the Service Provider
After the IDP is configured, create the SAML configuration in Yext. You can enter settings manually, or import them from a metadata XML file or metadata URL from your IDP. If you import a file or URL, Yext parses it and autofills as many settings as possible; fill in any remaining fields manually. If an uploaded XML file contains multiple configurations, Yext only reads the first one.
- Go to Account Settings > User Access Management > SAML Configuration.
- Select your Allowed Login Type. Yext supports both SP-initiated and IDP-initiated login.
- Enter your SAML configuration:
- To import it, click Import SAML Configuration, click Select Source, and choose Upload XML File or Input URL.
- For a file, select it and click Open, then click Import.
- For a URL, enter it in the text box and click Import.
- To enter it manually, fill in each field using the table below.
- To import it, click Import SAML Configuration, click Select Source, and choose Upload XML File or Input URL.
- Confirm that imported fields contain the correct information, and manually enter any additional settings.
- If you don't have all the required information yet, click Save Progress and return later.
- Click Confirm to save your settings.
| Field | Required | Read from Metadata? | Description |
|---|---|---|---|
| Allowed Login Type | Yes | No | IDP-Initiated and SP-Initiated are selected by default. |
| IDP Issuer | Yes | Yes | The unique URL that identifies your identity provider in SAML assertions sent to Yext. |
| IDP Certificate | Yes | Yes | The public key Yext uses to verify that SAML authentication requests come from your IDP. |
| IDP SSO URL | Required for SP-initiated logins | Yes | The URL unauthenticated users are redirected to for login. |
| SP-Initiated Request Binding | Required for SP-initiated logins | Yes | The binding used for authentication requests to the IDP. |
| SSO Logout URL | No | Yes | The URL users are directed to when they log out. |
| Signature Requirement | Yes | No | Whether the assertion, the response, or both must be signed. |
| Assertion Encryption | No | No | Whether the assertion should be encrypted. Selecting Yes generates a certificate that's valid for one year. |
| Just-in-Time (JIT) Provisioning | No | No | Whether to enable Just in Time Provisioning. |
Configure Users
After the IDP and Yext SAML configurations are set up, confirm that users are properly configured on both sides.
- In your IDP, assign the Yext application to every user who needs access to the Yext platform.
- Create corresponding users in Yext, unless you're using Just in Time Provisioning (see Just in Time Provisioning).
- See Add a New User for steps to add new users.
- Most clients use role ID 9 or 20 (Account Manager). To create a custom role instead, see Create a Custom User Role.
- Confirm each Yext user is configured for SAML: set Is SAML User to Yes for the user in the platform, or set the
ssofield totruevia the API. - Confirm that each user's username in Yext matches their username in the identity provider. The username must match the
NameIDpassed in the SAML assertion.
Your users should now be able to log in to Yext through your identity provider. If login isn't working, see Troubleshooting SSO Errors and Managing Users.