Integrations

Enterprise SSO

Set up Enterprise SSO end to end: register DevStride in your identity provider, add the provider in DevStride, verify your email domain by DNS, turn on automatic member provisioning, sign in, and remove a provider.

Enterprise SSO lets your team sign in to DevStride through your organization's own identity provider — Microsoft Entra ID, Okta, Google Workspace, or anything that speaks OIDC or SAML 2.0.

This page is the full setup path, in the order you actually have to do it:

  1. Register DevStride in your identity provider
  2. Add the provider in DevStride
  3. Verify your email domain
  4. Confirm SSO works
  5. Turn on automatic member provisioning (optional)

Before you start

Permission. Managing identity providers requires the Manage Identity Providers permission, which Owner and Admin both have by default. You can also grant it to a custom role.

Where to find it. In the left sidebar, select Configure Settings, open the Integrations section, and choose Identity Providers.

What you'll need:

  • Owner or Admin in DevStride, or a custom role with Manage Identity Providers.
  • Administrative access to your identity provider, so you can create an app registration.
  • Access to your domain's DNS, so you can publish a TXT record.
  • Your organization's email domain (for example acme.com).

Step 1: Register DevStride in your identity provider

Registering is a two-way exchange: DevStride needs credentials that only exist once you've created the app registration, and your identity provider needs one or two values that only DevStride can give you. So both paths below start in DevStride, collect what you need, and return there to finish.

If you're using OIDC

DevStride gives you one value, from the Give these to your provider panel on the Identity Providers page; you bring back three.

DevStride showsWhat it's forYour provider may call it
Redirect URIWhere your provider sends people back to after they sign in.Redirect URI, Reply URL, or Callback URL

Next, go and create the application. Microsoft Entra and Okta: exact steps — which screen to open, what to paste, and where each value below is found. Using a different provider? Create a web/OIDC application, set the Redirect URI above on it, and collect these three:

ValueNotes
Issuer URLMust be your organization's own single-tenant issuer.
Client IDFrom the app registration.
Client secretMaximum 200 characters.

For Microsoft Entra, the issuer must name your tenant by GUID:

https://login.microsoftonline.com/<your-tenant-guid>/v2.0

If you're using SAML 2.0

DevStride gives you two values, from the Give these to your provider panel on the Identity Providers page; you bring back your provider's metadata.

DevStride showsWhat it's forYour provider may call it
ACS URLWhere your provider posts the signed sign-in response.Assertion Consumer Service URL, Reply URL, or Single sign-on URL
SP Entity IDHow your provider names DevStride, so it knows the response is meant for us.Audience URI, Entity ID, or Identifier

Next, go and create the application. Microsoft Entra and Okta: exact steps — which screen to open, where to paste the two values above, and where to find the metadata.

Using a different provider? Create a SAML 2.0 application, paste both values above into it, then export its metadata — either a metadata URL or the metadata XML document — to bring back to DevStride.

Where these values live in your identity provider

This is the step-by-step for creating the application — which screen to open, what to paste where, and where to find every value DevStride asks for. DevStride can't show you these: they belong to your tenant.

Find your provider below, work through it, then return to Step 2.

Microsoft Entra ID

OIDC — in the Entra admin center, open Entra ID → App registrations in the left sidebar, then select New registration. Microsoft's own walkthrough: Register an application.

DevStride asks forExactly where it is in Entra
Redirect URI (you paste ours in)During New registration, under Redirect URI (optional), set the platform dropdown to Web and paste DevStride's Redirect URI. Already created the app? Authentication → Add a platform → Web, then paste it there.
Client IDThe app's Overview page, field Application (client) ID. It's a GUID. Not the Object ID directly beneath it.
Issuer URLAlso on Overview: copy Directory (tenant) ID, then build https://login.microsoftonline.com/<that-guid>/v2.0. Entra never displays this URL assembled — you have to compose it.
Client secretCertificates & secrets → Client secrets → + New client secret. Give it a description and expiry, then Add. See Add credentials.

SAML — in the Entra admin center, open Entra ID → Enterprise apps in the left sidebar, then:

  1. New application → Create your own application.
  2. Name it — this is Entra's own label for the app, so anything you'll recognize works. DevStride is a good default. Entra may suggest similar-looking gallery apps as you type; ignore them, none of them are DevStride.
  3. Leave Integrate any other application you don't find in the gallery (Non-gallery) selected — it already is — and select Create.
  4. In the app that opens, go to Single sign-on and choose SAML. Microsoft's walkthrough: Set up SSO for an application.
DevStride asks forExactly where it is in Entra
Identifier (Entity ID) (you paste ours in)Section 1, Basic SAML ConfigurationEdit. There's no text box at first — select Add identifier to create one, then paste DevStride's SP Entity ID.
Reply URL (you paste ours in)Same Edit panel → select Add reply URL, then paste DevStride's ACS URL — see the caution above about Entra reusing this label.
Metadata URLSection 3, SAML CertificatesApp Federation Metadata Url. Copy the whole URL — this is what DevStride's Metadata URL field wants.

Both fields show a green tick when the value is accepted, and Save stays greyed out until then. Select Save before closing the panel — you should see "Single sign-on configuration was saved successfully."

Okta

OIDCApplications → Create App Integration → OIDC / Web Application.

DevStride asks forWhere it is in Okta
Sign-in redirect URI (you paste ours in)In the app wizard. Use DevStride's Redirect URI.
Client ID and Client secretThe app's General tab, under Client Credentials.
Issuer URLSecurity → API → Authorization Servers — the Issuer URI of the server you're using.

SAMLApplications → Create App Integration → SAML 2.0.

DevStride asks forWhere it is in Okta
Single sign-on URL (you paste ours in)Step 2 of the wizard. Use DevStride's ACS URL.
Audience URI (SP Entity ID) (you paste ours in)Step 2 of the wizard. Use DevStride's SP Entity ID.
Metadata URLAfter saving: Sign On tab → Identity Provider metadata link.

Step 2: Add the provider in DevStride

  1. Go to Configure Settings → Integrations → Identity Providers.
  2. Select Add Identity Provider.
  3. Fill in the dialog:
FieldWhat to enter
Display NameA name you'll recognize, for example Acme Corp Okta. Required.
ProtocolSAML 2.0 or OIDC. SAML 2.0 is selected by default — switch it if you're using OIDC. Permanent once created.
Metadata Source (SAML)Choose Metadata URL or Metadata XML, then paste the one you exported in Step 1.
Issuer URL, Client ID, Client Secret (OIDC)The three values from Step 1. Each field has a Where do I find these? link back to this page.
Attribute MappingPrefilled — leave it alone unless your IdP uses non-standard claim names. See the note below.
Claimed Email DomainsAlready filled in with your organization's domain, if your org profile has one. Add others by typing a domain and pressing Enter.
  1. Select Create.

The provider is created and registered with the sign-in platform immediately — there's no waiting period. When the Status column reads active, the configuration is live.

If the status comes back failed, waiting won't help — the configuration was rejected. Fix the details with Edit, then select Resync.

Step 3: Verify your email domain

DevStride requires proof that your organization controls a domain before it will route that domain's sign-ins to you.

  1. Next to the unverified domain, select Verify.
  2. DevStride shows the Name and Value for a DNS TXT record. Copy both from that panel — the value is unique to this claim, and it changes if you ever delete and re-create the provider.
    For acme.com the name is _devstride-challenge.acme.com, and the value looks like devstride-domain-verification= followed by a 64-character token.
  3. Add that TXT record with your DNS provider — see below.
  4. Come back to DevStride and select Check DNS.

The dedicated _devstride-challenge name keeps the record clear of your SPF, DMARC, and other TXT records at the domain root, so you can add and remove it without touching mail configuration. Other TXT records at the same name are ignored — so if an older DevStride token is still published, you can safely leave it while adding the new one.

When the record is found, the domain is marked verified and starts routing sign-ins immediately.

A few things worth knowing about domains:

  • You can remove the TXT record once the domain is verified. DevStride never re-reads it, and a verified domain can't be lost to a later DNS blip. Keep it only if you'd rather not think about it.
  • Verification is what claims a domain. Several organizations may hold an unverified claim on the same domain, but only one can hold a verified one — the first to prove control takes it, and nobody can lock you out of your own domain by claiming it first.
  • Subdomains are separate. A claim on acme.com does not cover mail.acme.com. Each needs its own claim and its own TXT record.
  • Verified domains can't be removed by editing the provider. Releasing one means deleting the provider.

Confirm SSO works before you tell your team

Do this yourself, first, on your own account. It takes a minute and it is the difference between "I think it's configured" and "I know it works".

  1. Go to your DevStride sign-in page in a private window.
  2. Type your work email address in the Username or Email field.
  3. Select Sign in with SSO.

What should happen: you're sent to your identity provider, sign in there, and land back in DevStride. If your provider already has a live session you may not be prompted for anything — that's normal, not a bypass.

If it fails, the message tells you where to look:

What you seeWhat it means
We could not start single sign-on for that email addressDevStride has no verified provider for your email's domain. Re-check Step 3 — a claimed domain that is still unverified routes nothing.
An error at your identity provider, before returning to DevStrideThe values your IdP holds don't match. Re-check them against the Give these to your provider panel, and confirm your account is assigned to the application.
Your organization doesn't allow signing in with your identity providerMost often Require multi-factor authentication is on. See SSO and multi-factor authentication.

Only once your own sign-in works should you point the rest of your team at it — see How your team signs in.

Step 4 (optional): Turn on automatic member provisioning

Automatic provisioning — sometimes called JIT — lets someone from your company who was never invited sign in through SSO and get a DevStride account created on the spot.

  1. Select Edit on the provider.
  2. Under Member Provisioning, turn on Automatically create members on first sign-in.
  3. Choose a Role for new members.
  4. Select Save.

If you leave the role blank, DevStride uses your organization's default invite role. If you have no default invite role either, you must pick a role here — provisioning refuses to guess rather than create a member with no permissions.

The Owner role is never offered as a provisioning role.

Provisioning is bound to your verified domains: an account is only ever created for an email address on a domain this provider has proven it controls. It can never create accounts on another organization's domain.

How your team signs in

The DevStride login page always shows a Sign in with SSO button, below the password field and the Google and Microsoft buttons. It's always there — it doesn't appear or disappear as you type, and it looks the same for everyone.

For a member signing in:

  1. Type your work email address in the Username or Email field.
  2. Select Sign in with SSO.
  3. DevStride looks up your email domain, sends you to your company's login, and brings you back signed in.

Messages a member might see on the login page:

What happenedWhat they see
Selected Sign in with SSO with no email typed, or a malformed addressEnter your work email address first — single sign-on uses it to find your organization.
Their domain has no verified provider, or something went wrong on our sideWe could not start single sign-on for that email address. Sign in with your password, or check with your administrator that single sign-on is set up for your organization.

Messages after being sent back from your identity provider:

What happenedWhat they see
No DevStride account matches, and provisioning is offThis account isn't linked to a DevStride account — ask your administrator for an invitation.
They have an unaccepted invitationYou have a pending invitation to this organization. Sign in with your existing method to accept it, then try single sign-on again.
Their account is deactivatedThis account isn't active yet. Confirm your email address, or contact your administrator if it was deactivated.
SSO is blocked for the organizationYour organization doesn't allow signing in with your identity provider. Use your DevStride password or contact your administrator.

Requiring single sign-on

By default SSO is an additional sign-in method. You can also make it the only one: turn on Login policy → Require single sign-on on the same Identity Providers page.

Once it's on, password and social sign-in are refused for everyone in your organization. Members see a plain message telling them to use SSO — not a generic error.

What to expect when you turn it on:

  • It is not an immediate sign-out. Members who are already signed in stay signed in until their next token refresh, then come back through SSO.
  • You need a working provider first. The toggle stays disabled until you have an active identity provider with a verified domain. This is deliberate — it's what stops you switching off every other way in before the replacement works.
  • DevStride confirms before applying it, because the blast radius is the whole organization.

Guardrails DevStride enforces for you:

  • You cannot require SSO without a ready provider (the toggle is disabled).
  • You cannot delete your last working identity provider while SSO is required — the deletion is refused, not merely discouraged. See Removing an identity provider.

SSO and multi-factor authentication

If your organization has Require multi-factor authentication turned on, SSO sign-in is refused for that organization. It isn't bypassed and it isn't satisfied — it's blocked.

The reason is that federated sign-ins don't pass through DevStride's MFA challenge. An organization that mandates MFA and also permits federated sign-in would have that guarantee quietly voided, so DevStride refuses the combination outright.

If you want SSO, enforce multi-factor authentication at your identity provider instead — which is generally where enterprises want it anyway, since it applies across every application your team signs in to, not just DevStride.

Keeping a provider working

The Identity Providers list shows each provider's Status, Claimed Domains, and Last Synced time.

Status values:

StatusMeaning
activeWorking. Routes sign-ins for verified domains.
pendingMid-update.
failedThe configuration was rejected. Fix it with Edit, then Resync.

Resync re-registers the provider with the sign-in platform using its current configuration. Use it when a provider shows failed, or after you've corrected settings on the IdP side. It's safe to run at any time.

Removing an identity provider

There's no disable switch — Delete is the only way to stop a provider.

  1. Select Delete on the provider row.
  2. Confirm: Delete name and release its claimed email domains? This cannot be undone.

What happens:

  • SSO stops immediately. The next attempt to sign in through it fails.
  • Claimed domains are released, including verified ones. Another organization can then claim and verify them.
  • Member accounts are not touched. Nobody is deleted or deactivated, and everyone keeps their work, roles, and memberships.
  • Members fall back to other sign-in methods. Anyone whose account was created through SSO has no password yet, so they'll need to use I forgot my password to set one.

What Enterprise SSO does not do

  • It does not deprovision members. When someone is removed from your identity provider, they can no longer complete an SSO sign-in — but their DevStride account and membership remain active. There is no SCIM or directory sync. Remove departing members from DevStride yourself, under Settings → Organization → Users.
  • It does not force SSO by default. Out of the box, members with a password can still use it. If you want SSO to be mandatory, turn on Require single sign-on — it is opt-in, and off until you choose it.
  • It does not replace personal Microsoft or Google sign-in. The Sign in with Microsoft button serves personal accounts (outlook.com, hotmail.com, live.com). Company work accounts in your Entra tenant go through Enterprise SSO. See Users, Roles & MFA.

Troubleshooting

SymptomCause and fix
That email domain is already claimed by another identity provider.Another organization has verified that domain. If it's genuinely yours, contact DevStride support.
A Microsoft Entra issuer must name YOUR tenant by GUID…You used a multi-tenant issuer. Replace /common, /organizations, or /consumers with your tenant GUID.
Provider status is failedThe configuration was rejected. Edit to correct it, then Resync. Waiting won't help.
Check DNS finds nothingThe record hasn't propagated, or the name is wrong. It must be at _devstride-challenge.<your-domain>, not at the domain root.
Automatic provisioning can't be turned onThe provider has no verified domain yet. Finish Step 3 first.
Members see "Your organization doesn't allow signing in with your identity provider"Most often Require multi-factor authentication is on. See SSO and multi-factor authentication.
Sign-in fails at your identity provider, before ever reaching DevStrideRe-check the values your provider holds against the Give these to your provider panel on the Identity Providers page — the Redirect URI for OIDC, the ACS URL and SP Entity ID for SAML. These fail on your provider's side, so DevStride records nothing to help diagnose them. Copy rather than retype, and beware Entra labelling two different values Reply URL.
OIDC provider saves fine but sign-in failsThe most likely cause is the client secret: Entra's Secret ID is easy to copy instead of the Value, and the Value is shown only once. Create a new secret and paste its Value.
A member can't sign in after you re-created a providerRe-creating a provider does not normally break existing members — the old link is ignored and a new one is added on their next sign-in. So check the ordinary causes first: is the domain verified again (Step 3), and is the member assigned to the application at your identity provider? If both are right and they still can't get in, contact DevStride support.