Summary
The steps
Choose your SSO provider
DAVE supports five SSO/OIDC providers. Before opening any configuration screen, identify which provider your organisation uses and confirm you have the credentials or access needed to register a new OAuth application with that provider.
The five supported providers are:
- Googlesuitable for organisations using Google Workspace. Requires a Google Cloud project with an OAuth 2.0 client ID configured.
- Microsoftsuitable for organisations using Microsoft Entra ID (formerly Azure Active Directory). Requires an app registration in your Entra ID tenant.
- GitHubsuitable for engineering teams using GitHub organisations. Requires a GitHub OAuth App registered under your organisation.
- Oktasuitable for organisations using Okta as their identity platform. Requires an OIDC application configured in your Okta tenant.
- Custom OIDCsuitable for any identity provider that supports the OpenID Connect standard, including Auth0, Keycloak, PingIdentity, and others. Requires the provider's OIDC discovery URL or manual endpoint configuration.
SSO is a separate feature from MFA (multi-factor authentication). DAVE supports eight MFA provider types independently of SSO. Enabling SSO does not configure MFA, and enabling MFA does not configure SSO. If your organisation requires both, each must be configured separately.
Do this- Identify which of the five supported providers your organisation uses.
- Confirm you have admin access to that identity provider's management console.
- Gather the credentials you will need: for most providers this means a client ID and client secret from a registered OAuth application. For custom OIDC, also gather the issuer URL or discovery endpoint.
- Note the callback URL that DAVE will require: you will need to register this in your identity provider before the connection can complete. The exact callback URL format is documented in the SSO configuration screen in DAVE.
ExampleYour organisation uses Google Workspace. You open the Google Cloud Console, navigate to APIs and Services, then Credentials, and create a new OAuth 2.0 Client ID of type Web Application. You note the Client ID and Client Secret. You will paste these into DAVE's SSO configuration in a later step.
Best practiceRegister a dedicated OAuth application for DAVE in your identity provider rather than reusing an application created for another service. A dedicated application gives you clean audit logs in your identity provider, makes it straightforward to rotate credentials without affecting other services, and lets you apply provider-specific access policies (such as restricting which users or groups can authenticate) to DAVE independently.
Navigate to the SSO configuration screen in DAVE
SSO configuration is an Admin-only function in DAVE. You must hold the Admin role to access the SSO settings screen. If you do not have the Admin role, ask an existing Admin to assign it to your account under Admin, then User Management, then log out and back in for the role change to take effect.
Note: the exact menu path to the SSO configuration screen is not documented in the current help documentation available to this guide. The gap is noted at the end of this guide and reported to the content team. Based on DAVE's navigation conventions, SSO configuration is expected to be located within the Admin settings area. Navigate to Admin, then Settings and look for an Authentication or SSO section. If you cannot locate it, contact DAVE support at hellodave.ai for the current path.
Do this- Confirm your account holds the Admin role. Navigate to Admin, then User Management and verify your role badges include Admin.
- Navigate to Admin, then Settings.
- Look for an Authentication, SSO, or Identity Provider section within Settings.
- Select the SSO provider you identified in Step 1.
ExampleYou navigate to Admin, then Settings. You locate the SSO section and see five provider options: Google, Microsoft, GitHub, Okta, and Custom OIDC. You select Google, and a configuration form appears with fields for Client ID, Client Secret, and the callback URL that you need to register in Google Cloud Console.
Best practiceBefore making any changes to SSO configuration in a production tenant, test the configuration in a staging or development tenant first if one is available. An SSO misconfiguration that locks out all users from a production tenant requires direct admin intervention to resolve. Testing in a non-production environment first eliminates this risk.
Register the DAVE callback URL in your identity provider
Every OAuth and OIDC flow requires a registered redirect URI (also called a callback URL) in the identity provider. This is the URL that your identity provider will redirect users back to after successful authentication. DAVE's callback URL must be registered in your identity provider before the SSO connection can complete: an unregistered redirect URI will cause the authentication flow to fail with an error from the identity provider.
The exact callback URL is displayed in DAVE's SSO configuration screen for the selected provider. Copy it exactly, including the protocol, domain, and path, and paste it into the appropriate field in your identity provider's application settings.
- Google: add the callback URL to the Authorised Redirect URIs list in your OAuth 2.0 Client ID settings in Google Cloud Console.
- Microsoft: add the callback URL to the Redirect URIs list in your app registration in Microsoft Entra ID.
- GitHub: add the callback URL to the Authorization callback URL field in your GitHub OAuth App settings.
- Okta: add the callback URL to the Sign-in redirect URIs list in your OIDC application settings in Okta.
- Custom OIDC: add the callback URL to the allowed redirect URIs in your identity provider's application configuration.
Do this- In DAVE's SSO configuration screen, locate and copy the callback URL displayed for your selected provider.
- Open your identity provider's management console in a separate browser tab.
- Navigate to the application or OAuth client you registered in Step 1.
- Add the DAVE callback URL to the list of allowed redirect URIs.
- Save the change in your identity provider before returning to DAVE.
ExampleDAVE's SSO configuration screen shows a callback URL. You copy it, switch to the Google Cloud Console tab, open your OAuth 2.0 Client ID, click Edit, paste the URL into the Authorised Redirect URIs field, and click Save. You return to DAVE to continue the configuration.
Best practiceCopy the callback URL directly from DAVE's configuration screen rather than constructing it manually. Even a single character difference, such as a trailing slash or a different path segment, will cause the redirect to fail. Identity providers perform an exact string match on redirect URIs: there is no fuzzy matching.
Enter your identity provider credentials in DAVE
With the callback URL registered in your identity provider, return to DAVE's SSO configuration screen and enter the credentials from your identity provider application. For most providers this means a Client ID and a Client Secret. For custom OIDC, you will also need the issuer URL or OIDC discovery endpoint.
The Client Secret is a sensitive credential. DAVE stores it encrypted using AES-256-GCM authenticated encryption in the per-tenant credential vault. Once saved, the secret is never returned through the API or displayed in the UI: it is write-only from the moment it is stored. If you need to rotate the secret, you will enter a new value, which overwrites the stored one.
For custom OIDC providers, the issuer URL is used to fetch the provider's OIDC discovery document, which tells DAVE the locations of the authorisation endpoint, token endpoint, and JWKS endpoint automatically. If your provider does not support OIDC discovery, you may need to enter these endpoints manually: refer to your identity provider's documentation for the correct values.
Do this- In DAVE's SSO configuration screen, paste your Client ID into the Client ID field.
- Paste your Client Secret into the Client Secret field.
- For custom OIDC: enter the issuer URL or discovery endpoint in the appropriate field.
- Review any additional fields shown for your selected provider and complete them as required.
- Do not save yet: proceed to Step 5 to test the connection before committing the configuration.
ExampleYou paste the Client ID and Client Secret from your Google Cloud Console OAuth client into the corresponding fields in DAVE's SSO configuration screen. The form shows a Test Connection button alongside the Save button. You will use Test Connection in the next step before saving.
Best practiceTreat the Client Secret with the same care as a production API key. Do not paste it into a chat message, a shared document, or an email to confirm it. Copy it directly from your identity provider's console into DAVE's configuration field in a single operation. If the secret is exposed, rotate it immediately in your identity provider and update the DAVE configuration with the new value.
Test the connection and save
Before saving the SSO configuration, test the connection to confirm that DAVE can reach your identity provider and that the credentials are valid. A successful test confirms that the client ID and secret are correct, the callback URL is registered, and the identity provider's endpoints are reachable from DAVE's servers.
If the test fails, the error message will indicate the cause. Common causes include: the callback URL not yet saved in the identity provider (allow a few seconds for propagation after saving in the identity provider console), an incorrect client secret, or an issuer URL that does not resolve to a valid OIDC discovery document for custom OIDC providers.
Once the test succeeds, save the configuration. SSO becomes available to users in your tenant immediately after saving. Users can then choose to sign in with the configured provider on the DAVE login screen, in addition to their existing email and password credentials.
Do this- Click the Test Connection button (or equivalent) in DAVE's SSO configuration screen.
- If the test succeeds, click Save to activate SSO for your tenant.
- If the test fails, read the error message, correct the identified issue (callback URL registration, client secret, or issuer URL), and test again before saving.
- After saving, log out of DAVE and return to the login screen to confirm the SSO provider option appears.
- Test a sign-in using the SSO provider with a non-Admin account to confirm the full authentication flow works end to end.
ExampleYou click Test Connection. After a moment, a green success indicator appears. You click Save. You open a private browsing window, navigate to the DAVE login screen, and see a 'Sign in with Google' button alongside the email and password form. You sign in with a team member's Google Workspace account and confirm they land on the DAVE dashboard with their correct roles applied.
Best practiceTest the end-to-end SSO flow with a non-Admin account before announcing the change to your team. This confirms that role assignment works correctly for SSO-authenticated users and that the login experience is as expected. An Admin account has elevated permissions that can mask configuration issues that would affect regular users.
What SSO does, and what it does not do
Single sign-on changes how users authenticate to DAVE. Instead of maintaining a separate DAVE-specific password, users authenticate through an identity provider your organisation already manages. After a successful authentication with the identity provider, the user is signed into DAVE without entering a DAVE password.
SSO in DAVE does three things:
- It allows users to sign in to DAVE using credentials managed by your identity provider.
- It centralises authentication control: disabling a user in your identity provider prevents them from signing in to DAVE via SSO, even if their DAVE account remains active.
- It reduces password fatigue and the risk of weak or reused DAVE-specific passwords across your team.
SSO does not do these things:
- It does not provision DAVE user accounts automatically. A user who authenticates successfully via SSO still needs an active DAVE account with the appropriate roles assigned. Account provisioning and role assignment remain in Admin, then User Management.
- It does not replace MFA. DAVE supports eight MFA provider types as a separate feature. SSO and MFA are independent controls: you can run SSO without MFA, MFA without SSO, both together, or neither. If your security policy requires MFA, configure it separately.
- It does not change what a user can do inside DAVE. Permissions are still governed by the roles assigned to the user's DAVE account, regardless of how they authenticated.
Understanding this boundary matters for governance: SSO handles the front door (authentication), while DAVE's role model handles what users can do once inside (authorisation). Both need to be configured correctly for a complete access control posture.
The five supported SSO providers
DAVE supports five SSO/OIDC providers. Each is a first-class option in the configuration screen, not a workaround or an unsupported extension.
Google. The natural choice for organisations running Google Workspace. Authentication flows through Google's OAuth 2.0 infrastructure. Users sign in with their Google Workspace account, and Google enforces any domain restrictions, group memberships, or additional security policies you have configured in Google Workspace admin.
Microsoft. The natural choice for organisations using Microsoft Entra ID (formerly Azure Active Directory). Authentication flows through Microsoft's identity platform. Conditional access policies, MFA requirements, and group-based access controls configured in Entra ID apply to the DAVE sign-in flow.
GitHub. Well suited to engineering teams where GitHub is already the authoritative identity for developers. Authentication flows through GitHub's OAuth infrastructure. You can restrict access to members of a specific GitHub organisation if your GitHub OAuth App is configured to do so.
Okta. The natural choice for organisations using Okta as their identity platform. Authentication flows through Okta's OIDC infrastructure. Okta's access policies, group assignments, and lifecycle management apply to the DAVE sign-in flow.
Custom OIDC. Covers any identity provider that implements the OpenID Connect standard. This includes Auth0, Keycloak, PingIdentity, AWS Cognito, and many others. Configuration requires the provider's issuer URL or OIDC discovery endpoint, a client ID, and a client secret. If your provider does not publish an OIDC discovery document, you will need to enter the authorisation, token, and JWKS endpoints manually.
SSO/OIDC is a distinct feature from MFA. DAVE's eight MFA provider types are configured separately and operate independently of which SSO provider is in use.
Before you start: what you need
Before beginning SSO configuration, confirm you have the following in place.
Admin role in DAVE. Only Admin users can configure SSO. Confirm your account holds the Admin role at Admin, then User Management. If it does not, ask an existing Admin to assign it, then log out and back in for the change to take effect.
Admin access to your identity provider. You need sufficient permissions in your identity provider's management console to register a new OAuth application (or OIDC client) and configure its redirect URIs. For Google this means access to a Google Cloud project. For Microsoft this means access to Microsoft Entra ID. For GitHub this means owner access to a GitHub organisation or the ability to create OAuth Apps. For Okta this means admin access to your Okta tenant. For custom OIDC this means admin access to your identity provider's management console.
Existing DAVE user accounts for your team. SSO does not provision DAVE accounts automatically. Every user who will sign in via SSO needs an active DAVE account with the correct roles assigned. Provision accounts at Admin, then User Management before enabling SSO, so users can authenticate immediately after the configuration is complete.
A test account that is not your Admin account. You will use this to verify the end-to-end SSO flow after configuration. Testing with your Admin account can mask issues that affect regular users.
Account provisioning and role assignment after SSO is enabled
A common point of confusion when enabling SSO is the relationship between identity provider authentication and DAVE account provisioning. DAVE does not automatically create user accounts when someone authenticates via SSO for the first time. A user who signs in successfully via Google, Microsoft, GitHub, Okta, or a custom OIDC provider will be authenticated by the identity provider, but if no active DAVE account exists for that email address, they will not be able to access the tenant.
The correct provisioning sequence is:
- Create the user account in DAVE at Admin, then User Management, using the same email address the user will authenticate with via the identity provider.
- Assign the appropriate roles to the account (Admin, Create, Curate, Use, Reporting, or Financial as needed).
- Inform the user that SSO is available and that they should use the SSO sign-in option on the DAVE login screen.
This sequence ensures that when the user authenticates via SSO, DAVE can match their identity provider identity to an existing account and apply the correct roles. The roles assigned to the DAVE account govern what the user can do inside DAVE, regardless of any group memberships or roles defined in the identity provider.
When a team member leaves the organisation, the correct offboarding sequence is to disable their account in the identity provider (which prevents SSO authentication) and to set their DAVE account status to inactive at Admin, then User Management (which prevents any residual session or direct login). Both steps are needed for a complete offboarding: disabling the identity provider account alone does not invalidate an existing DAVE session.
Frequently asked questions
Is SSO the same as MFA in DAVE?
No. SSO (single sign-on) and MFA (multi-factor authentication) are separate features in DAVE. SSO controls which identity provider users authenticate through. MFA adds a second factor to the authentication process. DAVE supports five SSO providers and eight MFA provider types, each configured independently. Enabling SSO does not enable MFA, and vice versa.
Can I have more than one SSO provider active at the same time?
The help documentation available at the time of writing does not specify whether multiple SSO providers can be active simultaneously. If your organisation requires multiple providers, contact DAVE support at hellodave.ai to confirm the current behaviour.
Does SSO replace email and password login?
The help documentation available at the time of writing does not specify whether SSO replaces or supplements email and password login. In most OIDC implementations, both options remain available unless the administrator explicitly disables direct login. Contact DAVE support at hellodave.ai to confirm the current behaviour for your tenant.
What happens if my identity provider is unavailable?
If your identity provider is unavailable, users who rely on SSO will not be able to complete the SSO authentication flow. Whether direct email and password login remains available as a fallback depends on your tenant configuration. Ensure at least one Admin account can authenticate without SSO so that you can access the tenant to reconfigure SSO if the identity provider has an outage.
Does DAVE support SCIM for automatic user provisioning?
The help documentation available at the time of writing does not describe SCIM support. Contact DAVE support at hellodave.ai to confirm the current provisioning options.
Where is the SSO configuration screen in DAVE?
The exact menu path to the SSO configuration screen is not documented in the help documentation available at the time of writing. Navigate to Admin, then Settings and look for an Authentication or SSO section. If you cannot locate it, contact DAVE support at hellodave.ai for the current path.