Okta Integration Setup
This guide walks you through connecting your Okta org to RAD Security so it can import user and group data and read the Okta System Log for identity visibility.Choose a setup path
Okta offers two ways to authorize a machine-to-machine application, and the choice determines whether the integration can be read-only.Prerequisites
Before you begin, ensure you have:- Super Administrator access to your Okta org - only a Super Admin can grant API scopes
- Your Okta org URL (e.g.
https://your-org.okta.com) - Access to a RAD Security workspace with integration permissions
Option 1: OIN API Service Integration
The quickest path. Okta issues a client ID and client secret, and the scopes come pre-configured with the listing.Step 1: Install the Synqly Identity Connector
Access the Okta Admin Console
Navigate to API Service Integrations
Add the Integration
- Click Add Integration
- Search for and select Synqly Identity Connector
- Click Next
Install and Authorize
Save the Credentials
Step 2: Configure in RAD Security
Navigate to Data Sources > Integrations > IAM in your RAD Security workspace and enter:Option 2: Custom API Services App (Read-Only)
Create the application yourself and grant only the scopes you need. This is the only way to run the Okta integration read-only.Step 1: Pre-flight - check the public client app admin setting
Open Account Settings
Confirm Public client app admins is DISABLED
Step 2: Create the API Services app
Create the App Integration
Note the Client ID
Step 3: Configure client authentication and generate a key
Set Client authentication to Public key / Private key
Add a key
Copy the PEM private key
-----BEGIN and -----END lines.Save
Step 4: Confirm DPoP is not required
Check Proof of possession
400 invalid_dpop_proof - never 401 invalid_client. Use that distinction to tell the two failure modes apart.Step 5: Grant API scopes
Open the Okta API Scopes tab
Grant each scope
okta.users.read- list and read usersokta.groups.read- list groups and group membersokta.logs.read- read the Okta System Log
okta.users.manage off for a read-only integration.Step 6: Assign an admin role
Open the Admin roles tab
Assign Read-only Administrator
Step 7: Configure in RAD Security
Navigate to Data Sources > Integrations > IAM in your RAD Security workspace and enter:Read-only trade-off
Omittingokta.users.manage makes the integration read-only and disables the connector’s user-management actions:
- Disable and enable a user
- Force a password reset
- Expire a user’s sessions
okta.users.manage and assign an admin role that permits them.
Operational limits
System Log retention
System Log retention
System Log rate limits
System Log rate limits
/api/v1/logs rate-limit bucket. If other applications are also polling the System Log, plan capacity accordingly.Verify Integration
After completing the setup, verify your integration is working:- Navigate to Data Sources > Integrations > IAM in RAD Security
- Locate your Okta integration
- Check the connection status shows as Connected
- Confirm users and groups are syncing
Troubleshooting
401 invalid_client
401 invalid_client
- For a custom API Services app, put the PEM private key in Client Secret or Private Key (PEM) - a client secret can never work on this path
- Confirm the app’s Client authentication is set to Public key / Private key
- Verify the Client ID matches the app that owns the key pair
- Check the PEM was pasted whole, including the
-----BEGINand-----ENDlines - If you want to use a client secret, install the OIN listing instead (Option 1)
400 invalid_dpop_proof
400 invalid_dpop_proof
401 invalid_client. If you see 401 invalid_client, DPoP is not the problem.Insufficient permissions or empty results
Insufficient permissions or empty results
- Confirm each scope shows as Granted on the Okta API Scopes tab - selecting is not granting
- Confirm scopes were granted by a Super Administrator
- Confirm the app has the Read-only Administrator role on the Admin roles tab
- Replace any custom admin role with a standard one - custom roles cannot read the System Log
App unexpectedly has Super Administrator
App unexpectedly has Super Administrator
- Disable Public client app admins in Settings > Account
- Remove the Super Administrator assignment on the app’s Admin roles tab and assign Read-only Administrator
Historical events are missing
Historical events are missing
okta.logs.read scope is granted and the app holds a standard admin role with View System Log (system events) permission.