Setup Okta SSO
This integration enables authentication via OpenID Connect (OIDC) and automated user provisioning through System for Cross-domain Identity Management (SCIM).
Overview
Seemore integrates with Okta using:
OIDC (OpenID Connect) — user authentication
SCIM (System for Cross-domain Identity Management) — automated user and role provisioning
This setup allows Okta administrators to:
Manage Seemore users directly in Okta
Assign and sync roles (owner, admin, editor, viewer)
Map Okta groups to Seemore roles and sync them automatically
Map Okta groups to Seemore teams, which is what grants access to your accounts
Automatically create or deactivate users
Prerequisites
Before you start:
Ensure you have Admin rights in both Okta and Seemore.
Obtain from Seemore:
SCIM base URL
Bearer token (from Integrations → SCIM Tokens)
Ensure each Okta user has a unique External ID for matching.
Enable SCIM provisioning in your Seemore tenant.
Setup Steps
Step 1 — Create the Seemore App in Okta
In the Okta Admin Console, go to
Applications → Applications → Create App Integration.Select:
Sign-in method: OIDC – OpenID Connect
Application type: Web Application
Configure:
App name:
SeemoreLogin redirect URI:
Assign test users or groups to the app.
Step 2 — Configure OIDC in Seemore
In Seemore, open
Settings → Preferences → Authentication → Okta.
Enter:
Okta domain (from Okta)
Client ID / Secret (from the Okta app)

Save and test. You should be redirected to Okta for sign-in and back to Seemore upon success.
Step 3 — Enable SCIM Provisioning in Seemore
Check the box to Enable SCIM Provisioning and save.

Click
Create Token, thenSavethe generated token. You won’t be able to view it again later.


Step 4 — Enable SCIM Provisioning in Okta
Confirm that an OpenID Connect application has already been registered in the Okta Workforce tenant for OIDC-based authentication.
Confirm that your OpenID Connect application has disabled Federation Broker Mode.
Register a second application in Okta:
Go to
Applications → Applications → Create App IntegrationChoose Secure Web Authentication, then
Next
On the General App Settings page:
Set a name and a URL
Select
Do not display application icon to usersThe URL entered is not used in the SCIM integration
Select
Finish.Navigate to the General tab →
Edit→ Provisioning section.Choose
SCIM, thenSave.Navigate to
Provisioning → Integration → Edit, and configure the following:SCIM connector base URL: SCIM Endpoint URL copied earlier
Unique identifier field for users:
userNameUnder Supported provisioning actions, enable:
Push New Users
Push Profile Updates
Authentication Mode: HTTP Header
Paste the token value into the
Authorizationfield(Optional) Test the connection, then choose
Save.
Go to
Provisioning → Settings → To App → Edit, then:Enable
Create Users,Update User Attributes, andDeactivate UsersChoose
Save.
Under Attribute Mappings, se the X button to delete the following lines, which are not needed and may cause issues during PUT operations:
AttributeValuePrimary email type
(user.email != null && user.email != '') ? 'work' : ‘'Primary phone type
(user.primaryPhone != null && user.primaryPhone != '') ? 'work' : ‘'Address type
(user.streetAddress != null && user.streetAddress != '') ? 'work' : ‘'Use the Attribute Mappings section to configure any additional SCIM attributes you want Okta WIC to send to your SCIM endpoint. If you add custom attributes, they must include a valid SCIM 2.0 external namespace property. For more information on external namespaces, read Okta's help section.
Step 5 — Map User Attributes
Go to Provisioning → To App → Mappings and configure the below fields:
Add a custom property named externalId to link Okta users with Seemore users.
External name
externalId
External namespace
urn:ietf:params:scim:schemas:core:2.0:User
Data type
string
user.getInternalProperty("id")
user:external_id
Correlation ID between Okta and Seemore
user.email
user:email
Primary email address
Step 6 — Push Okta groups to Seemore
Seemore can assign roles based on the Okta groups a user belongs to. First, tell Okta which groups to send:
In the Okta Seemore (SCIM) application, open the Push Groups tab.
Choose Push Groups → Find groups by name (or by rule) and add the groups whose members should receive Seemore roles.
Save. Okta pushes the selected group definitions — and their memberships — to Seemore.
Step 7 — Assign Seemore roles to your groups
Once your groups are pushed, map each one to the Seemore roles its members should receive.
In Seemore, open
Settings → Preferences → Authentication → Oktaand make sure Enable SCIM Provisioning is on.Find the Group → role assignment section. The groups you pushed from Okta appear here. If a group is missing, confirm it is selected under Push Groups in Okta, then refresh the page.
For each group, select one or more roles:
owner,admin,editor, orviewer.Click Save roles.

How role resolution works
A user receives the combined roles of every group they belong to.
Roles are applied on the user's next login — assign or change them before the user signs in again.
Group membership is authoritative: on each login, a user's
owner/admin/editor/viewerroles are reconciled to match the roles their groups grant. Removing a role from a group — or removing the user from the group — revokes that role on the user's next login.
Step 8 — Assign Seemore teams to your groups
Groups can also drive team membership, which is what grants access to your accounts. Create the teams in Seemore first, then map each group to the teams its members should join.
In the same SCIM step, find the Group → team assignment section, just below Group → role assignment.
For each group, select one or more Seemore teams.
Click Save teams.

How team membership works
Members join and leave the mapped teams as their Okta group membership changes, applied on their next login.
Only mapped teams are managed. A Seemore team that no group points at keeps the membership you manage manually.
Because a team carries asset groups, mapping a group to a team is what actually grants data access — set the team's access up before mapping to it.
See Identity Provider Sync for the full behavior, including a worked example.
Step 9 — Provision and Test
Assign a test user in Okta to the Seemore app and to at least one pushed group.
Verify in Seemore:
User appears under Settings → Access control → Users
External ID and email are correct
Role and team membership sync upon the user's first login (session-level binding)
Troubleshooting
User not created
Invalid SCIM credentials
Check API token and Base URL
Duplicate users
external_id mismatch
Ensure user:external_id is unique
Roles missing
Sent as string
Change to array type
Role not visible post-provision
Role applies at session level
User must re-login
Group not listed in Seemore
Group not pushed from Okta
Add the group under Push Groups in Okta, then refresh the settings page
Group roles not applied
User has not logged in since the change
Group roles apply on the next login — have the user sign in again
Group teams not applied
User has not logged in since the change, or the team was not mapped
Team membership applies on the next login; confirm the mapping under Group → team assignment
Team missing from the team list
The team does not exist in Seemore yet
Create it under Settings → Access control → Teams, then reopen the connection
Validation Checklist
✅ SCIM connection tested successfully ✅ User created in Seemore after Okta push ✅ Pushed Okta groups appear in the Group → role assignment section ✅ Each group is mapped to the intended Seemore role(s) ✅ Each group is mapped to the intended Seemore team(s) ✅ Role appears correctly after login ✅ External ID matches Seemore internal ID
Related Resources
Identity Provider Sync — how group-to-role and group-to-team mappings behave day to day
Access Control — users, teams, and asset groups in Seemore
Last updated
