All developer docs

Proof-of-Life ยท Integration guide

PoL Step-up with identity providers (Okta, Auth0, Microsoft Entra)

These are integration patterns, not certified integrations. Each identity provider offers an extension point that can redirect a user to an external check during sign-in and then continue. PoL Step-up fits that model: your extension starts a step-up, the user completes a PoL ceremony, and your extension verifies the result with siteverify before letting sign-in continue.

Common building block: a small PoL bridge web app you host (for example with the Node example in this folder) that:

  1. Receives the user from the identity provider with a signed state.
  2. Calls POST /v1/stepup/start with action (for example login-high-risk) and an account_hint_hash derived from the user id.
  3. Shows a page that runs PoL.execute(sitekey, { action, stepup: client_token }).
  4. Verifies the token with siteverify (expected action, account hint hash and, ideally, expected_subject).
  5. Returns the user to the identity provider with a signed result.

Auth0

Use a post-login Action with a redirect:

Okta

Options depend on your Okta product:

Microsoft Entra ID / Entra External ID

Binding the person to the account

A step-up token proves a live person completed the check. The verifier also makes sure it is the same person each time:

Important

PoL Recovery

Use the same bridge pattern on your account recovery flow: require a recovery level check (Enterprise plan) before allowing a reset, in addition to your existing recovery controls. Recovery proves a live, present person holding a device-bound key. Because Proof-of-Life keeps no biometric or identity link between devices, it cannot by itself prove that the person on a new device is the original account holder. A recovery completed on a new phone is therefore refused at siteverify (account-mismatch) until your bridge, after its own recovery checks, verifies again with allow_new_device: true; the account is then bound to the new phone's person. Combine it with your existing recovery checks, or require a co-verification vouch from a person already linked to the account.

Proof-of-Life is in early access. Request keys, read the API reference or the privacy notice.