Okta
Set up single sign-on and SCIM provisioning with Okta.
Before you start
- You need Okta admin access.
- Vectis support completes the configuration on the Vectis side, so be ready to send them the details below.
Step 1: Create an OIDC application
Create an app integration
In the Okta Admin Console, go to Applications → Create App Integration, and select OIDC - OpenID Connect and Web Application.
Configure it
Set:
- App integration name:
Vectis - Grant type: Authorization Code
- Sign-in redirect URIs:
https://<your Vectis address>/sso/callback - Sign-out redirect URIs:
https://<your Vectis address>/login - Controlled access: limit to assigned groups, or allow everyone
- App integration name:
Save
Select Save, then note the Client ID and Client Secret.
Step 2: Configure group claims
- Go to Security → API → Authorization Servers → default.
- Go to Claims → Add Claim and set:
- Name:
groups - Include in token type: ID Token, Always
- Value type: Groups
- Filter: Matches regex
.*, or filter to specific groups
- Name:
- Select Create.
Step 3: Send the details to Vectis
Send Vectis support:
- Client ID and Client Secret from step 1.
- Issuer URL:
https://your-okta-domain.okta.com, or your custom domain. - Domain: your organisation's email domain.
Step 4: SCIM provisioning
Ask Vectis support for a SCIM token and the SCIM base URL (it ends in /scim/v2), then:
- In Okta, go to Applications → Vectis → Provisioning.
- Select Configure API Integration and enable API integration.
- Enter:
- SCIM connector base URL: the SCIM base URL from Vectis
- Authentication Mode: HTTP Header
- Authorization: the SCIM bearer token from Vectis
- Select Test API Credentials, then Save.
- Turn on Create Users, Update User Attributes and Deactivate Users.
See SCIM provisioning for the attributes Vectis uses.
Troubleshooting
| Issue | Solution |
|---|---|
| "Invalid issuer" | Make sure the issuer URL you sent to Vectis matches your Okta domain exactly. |
| Groups not mapping | Check the groups claim is configured on the authorisation server. |
| SCIM sync fails | Check the SCIM token hasn't expired and the base URL is correct. |