- You have Okta admin access on the tenant where you want to enable aidnn SSO.
- You have aidnn admin access on the account you’re configuring (the Enterprise SSO page in the admin panel sidebar is admin-only).
- DNS access to the email domain you’ll be claiming, so you can add a verification TXT record.
Step 1 — Claim and verify your email domain in aidnn
aidnn’s SAML resolver routes sign-in attempts based on the email’s domain. Before you wire Okta up, you have to claim the domain in aidnn:- Sign in to aidnn as an admin.
- Open Admin panel → Enterprise SSO → Single sign-on tab → Domains.
- Click Add domain and enter the email domain your employees use (
acme.com, notmail.acme.com). - aidnn returns a TXT record (
aidnn-verify=<token>). Add it as a TXT record on the apex ofacme.com. - Wait ~5 minutes for DNS propagation, then click Recheck DNS on the domain’s row in the aidnn UI.
gmail.com, outlook.com, etc.) are rejected — the resolver only routes based on domains you control. If verification fails, the UI surfaces the exact DNS lookup result so you can compare it to your provider’s record.
You can claim multiple domains for one account (subsidiaries, acquired companies). Each one needs its own TXT record and verification.
Step 2 — Create the SAML app in Okta
In your Okta admin console:- Go to Applications → Applications → Create App Integration.
- Choose SAML 2.0, then click Next.
- App name:
Isotopes AI(or whatever your internal convention is). Optional app logo: upload the Isotopes AI brand mark from your marketing asset library. - Click Next to the SAML configuration screen and use the following values:
For the Single sign-on URL, your
<account-slug> is the per-account string embedded in the ACS URL shown in aidnn’s admin panel SSO settings under Service provider details — copy that ACS URL verbatim rather than hand-assembling it.
For the Audience URI (SP Entity ID), copy the SP entity ID value verbatim from that same Service provider details card. This value is deployment-wide — it is identical for every account on this aidnn deployment and does not contain your account slug. Do not set it to https://<your-aidnn-host>/<account-slug>; an Audience that doesn’t match the SP entity ID exactly causes an audience mismatch rejection at sign-in.
- Scroll to Attribute Statements and add at least:
The
email claim is required — aidnn uses it as the user’s unique identifier. The name claim is optional (admin display only). The groups claim is required only if you plan to map Okta groups to aidnn roles via the group-claim mapping (see Step 5 below).
- Finish the wizard. On the resulting app page, open the Sign On tab and click View SAML setup instructions — copy:
- The Identity Provider Single Sign-On URL
- The Identity Provider Issuer
- The X.509 Certificate (PEM-encoded)
Step 3 — Wire Okta into aidnn
Back in aidnn:- Open Admin panel → Enterprise SSO → Single sign-on tab and go to the Identity provider card.
- Paste the three values from Okta:
- Identity Provider Issuer → aidnn’s IdP entity ID field
- Identity Provider Single Sign-On URL → aidnn’s IdP SSO URL field
- X.509 Certificate → aidnn’s IdP signing certificate (PEM) field
- Click Save and enable SAML in the action bar at the bottom of the page. The form runs a structural validation of the certificate; a misformatted PEM is rejected with a specific error.
Step 4 — Assign a test user in Okta and round-trip
- In Okta, open the SAML app you created and go to Assignments.
- Click Assign → Assign to People and add one test user (typically yourself).
- In aidnn, open a fresh incognito window. Navigate to your aidnn host. Enter the test user’s email. The resolver routes you to Okta. Authenticate via Okta. You should land back in aidnn signed in.
Step 5 — (Optional) Map Okta groups to aidnn roles
aidnn assigns each user a role from their SAML assertion. The Role mapping card on the Enterprise SSO page’s Single sign-on tab has two sections; configure either, both, or neither. A role pinned in the Members panel via Take over role assignment, or set by SCIM group provisioning, takes precedence over the assertion — see role precedence.- Role from a SAML attribute. Pick this when your Okta app emits a single string claim per user (e.g.
aidnn_role=admin). Use Okta’s expression-based claim values: under the SAML app’s Sign On tab → Attributes → add a claim namedaidnn_rolewith a value expression likeisMemberOfAnyGroup("00g…aidnn_admins") ? "admin" : "viewer". Then in aidnn, set the attribute name toaidnn_roleand map each value to a role. - Role from a SAML group claim. Pick this when you want aidnn to consume Okta’s multi-value
groupsclaim directly (the one you configured in Step 2 with the group filter). Set the group attribute name in aidnn togroups, then add priority-ordered rows mapping each Okta group display name to a role (e.g.aidnn-admins → ADMIN). Okta emits group display names, not GUIDs — so the rows read cleanly.
Troubleshooting
“This account uses SAML SSO” banner appears for a user who shouldn’t see it. The user’s email domain is verified for SSO. Remove the domain claim if that domain should not route through your IdP. SAML round-trip works but the user’s role is wrong. Check the role-mapping rules on the Enterprise SSO page’s Single sign-on tab. Confirm thegroups claim is being sent — the Okta SAML response viewer browser extension is the fastest way to see what’s actually arriving — and that a rule maps the group to the role.
Provisioning users automatically (SCIM). Okta can create, update, and deactivate aidnn users over SCIM 2.0 in addition to SAML sign-in. The setup is provider-neutral — follow Steps 6–9 of the Entra guide, substituting Okta’s provisioning UI. Before you enable it, read role precedence and the last-administrator rule.
Need to turn SAML off entirely? Use the Admin panel Disable SSO action. It flips SSO off and writes an audit-log row so you can leave the IdP config in place. Re-saving the config later re-enables it. Note that it does not sign anyone out — existing sessions stay valid until they expire. To end a specific person’s access immediately, deprovision them in your IdP.
For how SSO works in aidnn, see the Enterprise SSO overview.