Configure Okta with Socure Custom IDV

Set up a Custom Identity Verification (IDV) provider in Okta that uses Socure as the identity-proofing vendor, so Okta can route users through a Socure verification flow.

Okta supports Custom Identity Verification (IDV) providers that call an external identity-proofing vendor over OAuth 2.0 / OpenID Connect. This guide shows you how to configure Socure as that vendor. Once configured, Okta can route users through a Socure verification flow — for example, during authenticator enrollment or password recovery.

📘

Note:

The URLs in this guide use the placeholder <your-okta-domain>. Replace it with your own Okta org subdomain everywhere it appears (for example, https://<your-okta-domain>-admin.okta.com/...). If you use a custom Okta domain such as login.yourcompany.com, use that instead. Always point to your own Okta environment, not any sample domain shown in a screenshot.


How it works

  1. Okta starts a verification when a policy rule requires it (for example, authenticator enrollment or password recovery).
  2. Okta redirects the user to Socure using the OAuth 2.0 / OIDC endpoints you configure.
  3. Socure runs the workflow you scoped the integration to and returns the result to Okta's callback URI.
  4. Okta continues or blocks the action based on the verification result.

Prerequisites

  • Okta administrator access — a role that can manage identity providers and authentication policies.
  • A Socure account with at least one LIVE workflow. You grant the integration access to specific workflows in the Socure dashboard.
  • A test user and a test user group to scope the policy during validation.
  • A Client ID and Client Secret issued by Socure. You create these in the next step.

Step 1: Note your Okta redirect URI

Okta uses a fixed callback URI for identity-verification providers. You need this URI to create the Socure credentials in the next step.

Standard Okta domain:

https://<your-okta-domain>.okta.com/idp/identity-verification/callback

Custom Okta domain:

https://login.yourcompany.com/idp/identity-verification/callback

Step 2: Create Socure credentials

Each integration uses a Client ID and Client Secret scoped to one or more of your Socure workflows.

  1. In the Socure dashboard, go to Accounts > Developers > Key Management.
  2. In the Okta Keys section, click Create Okta Key.
  3. Under Workflows, select one or more LIVE workflows to grant the integration access to. Each selected workflow is mapped to an idv_flow_<workflow_name> scope.
  4. Under Redirect URIs, enter your Okta redirect URI from Step 1 (one redirect URI per line).
  5. Click Create.

Socure generates the key and displays its Client ID, Client Secret, and associated Workflow. Copy both values — you enter them in Okta in the next step.

📘

Note:

The Client Secret is shown so you can copy it. Store it securely and treat it like a password. If you lose it, delete the Okta Key and create a new one.

Socure dashboard Key Management showing a created Okta Key with its Client ID, Client Secret, and workflow

Step 3: Create the custom IDV in Okta

  1. Sign in to the Okta Admin Console.
  2. Go to Security > Identity Providers, or open:
    https://<your-okta-domain>-admin.okta.com/admin/access/identity-providers/add
  3. Click Add identity provider and choose Identity Verification (Custom IDV).
Okta Admin Console Add identity provider dialog with Identity Verification (Custom IDV) selected

General settings

FieldValue
TypeIDV_STANDARD
ProtocolID_PROOFING
Label / NameA display name, for example "Socure IDV"
User Sign-in ExperienceThe name end users see (for example, "Socure IDV")
Agreement / Terms of Use URLhttps://authz.socure.com/agreement
Privacy Policy URLhttps://authz.socure.com/privacy
Okta Custom IDV general settings showing type IDV_STANDARD and protocol ID_PROOFING

Credentials

FieldValue
Client IDThe Client ID from Socure
Client SecretThe Client Secret from Socure

Scopes

Enable these scopes. Replace <workflow_name> with your Socure workflow name:

  • openid
  • profile
  • identity_assurance
  • idv_flow_<workflow_name>[:<workflow_version>]
📘

Note:

The :<workflow_version> suffix is optional. The workflow name must match the workflow you granted access to when you created the Okta Key.


Endpoints

FieldValue
Issuerhttps://authz.socure.com
PAR Request URLhttps://authz.socure.com/oauth2/v2/par
Authorize URLhttps://authz.socure.com/oauth2/v2/authorize
Token URLhttps://authz.socure.com/oauth2/v2/token
JWKS URLhttps://authz.socure.com/.well-known/v2/jwks.json

Additional settings

SettingValue
Provisioning PolicyDISABLED
Account Link: ActionAUTO
Account Link: Match TypeUSERNAME

Click Save to create the custom IDV.


Step 4: Map profile attributes

Okta sends user profile attributes to Socure during verification.

  1. Open the custom IDV you created.
  2. Go to the Attribute Mapping section.
  3. Confirm the default attributes are mapped — typically given name (givenName) and family name (familyName).
  4. Add any additional attributes your Socure workflow requires.

Step 5: Add an authentication policy

Attach Socure verification to a policy rule to control when Okta requires it.

  1. Go to Security > Authentication Policies, or open:
    https://<your-okta-domain>-admin.okta.com/admin/authn/authentication-policies
  2. Open the relevant policy — or create one — then click Add a rule.
Okta authentication policy Add a rule screen

Rule settings

SettingValue
Rule NameA descriptive name, for example "Require Socure IDV on enrollment"
PrioritySet relative to your existing rules
StatusACTIVE

Conditions

ConditionValue
GroupYour test user group — expand to production groups after validation
NetworkANYWHERE — adjust to your requirements
Risk ScoreANY
ExpressionaccessRequest.operation == 'enroll'

Alternate expressions:

  • Password reset only: accessRequest.authenticator.key == 'okta_password' && accessRequest.operation == 'recover'
  • Phishing-resistant authenticator enrollment: combine the authenticator-key check with accessRequest.operation == 'enroll'.

Actions

ActionValue
Verification MethodThe Socure custom IDV you created
AccessALLOW

Click Save.


Step 6: Test the integration

  1. Sign in as your test user — a member of the scoped group.
  2. Trigger the action that matches your expression, for example enrolling a new authenticator.
  3. Confirm the user is redirected into the Socure verification flow.
  4. Complete the flow and confirm the user returns to Okta.
  5. If anything fails, open Reports > System Log and review identity-verification events.
Okta redirecting the user into the Socure verification flow

Troubleshooting

SymptomWhat to check
Verification never triggersThe rule is ACTIVE, the test user is in the scoped group, and the expression matches the action.
User can't complete verificationThe Client ID and Client Secret are correct, and the redirect URI is allowed on the Socure Okta Key.
Wrong verification method runsThe rule's Verification Method points to the Socure custom IDV (protocol ID_PROOFING).
Scope or authorization errorsAll four scopes are present, including idv_flow_<workflow_name> with the exact workflow name you granted.
Errors in the flowReview Reports > System Log for identity-verification events.

Settings summary

Admin Console URLs (replace <your-okta-domain>):

  • Add identity provider: https://<your-okta-domain>-admin.okta.com/admin/access/identity-providers/add
  • Authentication policies: https://<your-okta-domain>-admin.okta.com/admin/authn/authentication-policies

General settings

FieldValue
TypeIDV_STANDARD
ProtocolID_PROOFING
Agreement URLhttps://authz.socure.com/agreement
Privacy URLhttps://authz.socure.com/privacy

Scopes

openid, profile, identity_assurance, idv_flow_<workflow_name>[:<workflow_version>]


Endpoints

FieldValue
Issuerhttps://authz.socure.com
PAR Request URLhttps://authz.socure.com/oauth2/v2/par
Authorize URLhttps://authz.socure.com/oauth2/v2/authorize
Token URLhttps://authz.socure.com/oauth2/v2/token
JWKS URLhttps://authz.socure.com/.well-known/v2/jwks.json

For questions about credentials or workflow configuration, contact your Socure representative.


Related



Did this page help you?