Skip to content
Agent Identity

Flow · consent

Human-in-the-loop via CIBA

The agent is unattended. It needs a specific approval on the user's phone before a sensitive tool runs.

Actors

Agent · OpenID provider · User (authentication device)

Sequence

  1. 1

    AgentOpenID provider

    Backchannel authorize: login_hint, scope, binding_message describing the action

  2. 2

    OpenID providerUser

    Push / app notification with the binding message

  3. 3

    UserOpenID provider

    Approve or deny

  4. 4

    AgentOpenID provider

    Poll token endpoint with grant_type CIBA + auth_req_id

Caveats

CIBA authenticates/consents a grant; it does not replace resource-server policy. For enterprise pre-approved app connections, XAA may avoid a prompt entirely — that is a different control.

Specs in play