Other standards-compliant SAML 2.0 and OIDC providers work with the generic requirements. Google Workspace and OneLogin guides will follow.
Okta
SAML
1
Create the app
In the Okta Admin Console, go to Applications → Applications → Create App Integration and choose SAML 2.0.
2
Configure SAML
- Single sign-on URL: the Odin ACS (Single Sign-On) URL. Keep Use this for Recipient URL and Destination URL ticked.
- Audience URI (SP Entity ID): the Odin SP Entity ID / Audience.
- Name ID format:
EmailAddress. Application username:Email. - Attribute statements:
email=user.email,firstName=user.firstName,lastName=user.lastName.
3
Assign people
On the Assignments tab, assign the people or groups who should use Odin.
4
Connect Odin
On the Sign On tab, copy the Metadata URL into Odin’s IdP metadata URL.
Okta’s attribute preview shows placeholders such as
user.email, not real values. Test with a real assigned user.Single logout
Okta supports SAML single logout with Odin over the HTTP-POST binding.- In the app’s SAML settings, open Show Advanced Settings, tick Enable Single Logout and Allow application to initiate Single Logout.
- Set Single Logout URL to the ACS host followed by
/api/logout/callback. For example, if the ACS URL ishttps://sso.borghq.io/api/oauth/saml, usehttps://sso.borghq.io/api/logout/callback. - Set SP Issuer to the Odin SP Entity ID / Audience.
- Upload the Signature Certificate from the ACS host’s
/.well-known/saml.cer, for examplehttps://sso.borghq.io/.well-known/saml.cer. - Download the app’s metadata XML, delete the
SingleLogoutServiceelement whose binding isHTTP-Redirect, and paste the XML into Odin under …or paste metadata XML.
Odin’s SSO service currently sends logout requests over HTTP-POST only, so the metadata must not offer the HTTP-Redirect logout endpoint. Integrations built with Okta’s OIN Wizard do not expose single logout settings; use an app created with Create App Integration.
OIDC
- Create App Integration → OIDC - OpenID Connect → Web Application.
- Sign-in redirect URIs: the Odin Redirect URL. Grant type: Authorization Code.
- Assign people on the Assignments tab.
- In Odin, use the discovery URL
https://<your-okta-domain>/.well-known/openid-configuration, with the app’s Client ID and Client secret.
Directory sync
- In Odin, create a directory with provider Okta SCIM 2.0.
- In Okta, add a SCIM-capable app such as SCIM 2.0 Test App (OAuth Bearer Token) from the catalogue, or enable SCIM provisioning on your Odin app.
- On Provisioning → Integration, enable the API integration. Set the SCIM 2.0 Base Url to the Odin SCIM endpoint and the OAuth Bearer Token to the Odin SCIM bearer token, then select Test API Credentials and save.
- On Provisioning → To App, enable Create Users, Update User Attributes and Deactivate Users. Leave Sync Password off.
- Assign people or groups. For role mapping, add the mapped groups on Push Groups.
Microsoft Entra ID
SAML
1
Create the enterprise application
In the Microsoft Entra admin centre, go to Enterprise applications → New application → Create your own application, name it and choose Integrate any other application you don’t find in the gallery (Non-gallery).
2
Basic SAML configuration
Open Single sign-on → SAML and edit Basic SAML Configuration:
- Identifier (Entity ID): the Odin SP Entity ID / Audience
- Reply URL (Assertion Consumer Service URL): the Odin ACS (Single Sign-On) URL
- Logout Url: leave empty. See the note below.
3
Add an email claim
Under Attributes & Claims, add a claim named
email whose source attribute is user.mail, or another attribute that holds the person’s work email. Optionally add firstName (user.givenname) and lastName (user.surname).4
Restrict and assign
Under Properties, set Assignment required? to Yes. Under Users and groups, assign the people who should use Odin.
5
Connect Odin
Copy the App Federation Metadata Url from the SAML Certificates section into Odin’s IdP metadata URL.
Signing out: with Logout Url empty, signing out of Odin ends the Odin session, then signs the person out of Entra and shows Microsoft’s “You signed out of your account” page. If you set a Logout Url, Entra replies in a format Odin’s SSO service cannot read yet, and people see an error after signing out.
OIDC
- Go to App registrations → New registration. Choose Accounts in this organizational directory only and add a Web redirect URI set to the Odin Redirect URL.
- Under Certificates & secrets, create a client secret.
- Under Token configuration, add the optional ID-token claims
email,given_nameandfamily_name. - Under API permissions, make sure
openid,profileandemailare granted, and grant admin consent. - To restrict access, open the matching Enterprise application, set Assignment required? to Yes, and assign people.
- In Odin, use
https://login.microsoftonline.com/<tenant-id>/v2.0/.well-known/openid-configurationwith the Application (client) ID and the client secret.
Directory sync
- In Odin, create a directory with provider Microsoft Entra ID SCIM 2.0.
- In your Entra Enterprise application, open Provisioning, set Provisioning Mode to Automatic, and enter the Odin SCIM endpoint as Tenant URL and the SCIM bearer token as Secret Token. Select Test Connection, save, and start provisioning.
- Entra sends each person’s
mailas their work email. People without amailvalue are sent with their sign-in name, and Odin ignores them unless that name is on a verified domain. - Entra provisions everyone assigned to the application. Assigning groups, which role mapping needs, requires Microsoft Entra ID P1 or higher. On Entra ID Free, leave Directory manages roles off and manage roles in Odin.
Auth0
SAML
- Applications → Create Application → Regular Web Applications.
- On Addons, enable SAML2 Web App. Set Application Callback URL to the Odin ACS (Single Sign-On) URL.
-
In Settings, set:
Do not add a
logoutblock: single logout with Auth0 is not supported yet. - Enable your user connection for the application on its Connections tab.
-
In Odin, use the metadata URL
https://<your-tenant>/samlp/metadata/<client-id>.
OIDC
- Applications → Create Application → Regular Web Applications.
- Allowed Callback URLs: the Odin Redirect URL.
- Credentials → Authentication Method: Client Secret (Basic).
- In Odin, use
https://<your-tenant>/.well-known/openid-configurationwith the Client ID and Client Secret.
JumpCloud
SAML
- Go to SSO Applications → Add New Application → Custom Application.
- Select Manage Single Sign-On (SSO) with Configure SSO with SAML. Also select Export users to this app (Provisioning) if you want directory sync.
- On the SSO tab, set:
- IdP Entity ID: any unique value, for example your console URL followed by
/odin - SP Entity ID: the Odin SP Entity ID / Audience
- ACS URL: the Odin ACS (Single Sign-On) URL
- SAMLSubject NameID:
email, with formaturn:oasis:names:tc:SAML:1.1:nameid-format:emailAddress - Attributes:
email→email,firstName→firstname,lastName→lastname
- IdP Entity ID: any unique value, for example your console URL followed by
- Grant access by binding User Groups to the application.
- Select Export Metadata and paste the XML into Odin. JumpCloud does not publish a metadata URL.
Directory sync
- In Odin, create a directory with provider JumpCloud SCIM 2.0.
- On the application’s Provisioning tab, choose SCIM API with Bearer token. Enter the Odin SCIM endpoint as Base URL and the SCIM bearer token as Token Key.
- Enter an unused Test User Email and Test User Group Name, pick a Source User and Source User Group, then select Test Connection and Activate.
- User groups bound to the application are pushed to Odin. Name them to match your role mapping, for example
Odin-Admins.
Users created through the JumpCloud API start as staged and cannot sign in until they are activated.
Keycloak
SAML
- In your realm, go to Clients → Create client. Choose SAML and set Client ID to the Odin SP Entity ID / Audience.
- Set Valid redirect URIs and Assertion Consumer Service POST Binding URL to the Odin ACS (Single Sign-On) URL.
- Set Name ID format to
emailand turn on Force name ID format. - On the Keys tab, turn Client signature required off. Odin’s SSO service does not sign authentication requests yet, so Keycloak otherwise answers “Invalid requester”.
- On Client scopes → Mappers, add User Property mappers for
email,firstNameandlastName, with SAML attribute names matching those properties. - In Odin, use the metadata URL
https://<keycloak-host>/realms/<realm>/protocol/saml/descriptor.