Proveedores de identidad
Open Payments exige que cualquier servidor de autorización que emita concesiones interactivas se integre en un IdP.
Una concesión interactiva es aquella que requiere la interacción o el consentimiento explícito del propietario de recursos antes de que se pueda emitir un token de acceso. En Open Payments, debe emitirse una concesión interactiva antes de poder crear un recurso de pago saliente.
Después de que se inicia la solicitud de concesión interactiva y el servidor de autorización establece la sesión, el servidor proporciona al cliente el URI del IdP al que debe redirigir al usuario.
El siguiente diagrama ilustra el flujo de una concesión interactiva.
sequenceDiagram autonumber
Cliente->>Servidor de autorización (Authorization server AS): solicitud POST de concesión de autorización (con objeto de interacción)
Servidor de autorización (Authorization server AS)-->>Cliente: 200 OK, devuelve el URI de redirección para la interacción y el URI de continuación
Cliente->>Servidor de autorización (Authorization server AS): navega al URI de redirección para la interacción
Servidor de autorización (Authorization server AS)->>Servidor de autorización (Authorization server AS): comienza la interacción y configura la sesión
Servidor de autorización (Authorization server AS)-->>Cliente: redirección temporal 302 hacia el URI del proveedor de identidad
con concesión de autorización de información en la cadena de consulta
Cliente->>Proveedor de identidad (Identity provider IdP): redirige hacia el proveedor de identidad
Proveedor de identidad (Identity provider IdP)->>Proveedor de identidad (Identity provider IdP): el propietario de recursos (p. ej., el usuario cliente)
acepta la interacción
Proveedor de identidad (Identity provider IdP)->>Servidor de autorización (Authorization server AS): transmite la decisión de interacción
Servidor de autorización (Authorization server AS)-->>Proveedor de identidad (Identity provider IdP): decisión 202 aceptada
Proveedor de identidad (Identity provider IdP)->>Servidor de autorización (Authorization server AS): solicita finalizar la interacción
Servidor de autorización (Authorization server AS)->>Servidor de autorización (Authorization server AS): finaliza la sesión
Servidor de autorización (Authorization server AS)-->>Proveedor de identidad (Identity provider IdP): redirección temporal 302 para finalizar el URI
(definida en la solicitud de concesión de autorización inicial)
protegida con un hash único y
interact_ref en la cadena de consulta
Proveedor de identidad (Identity provider IdP)->>Cliente: sigue la redirección
Cliente->>Cliente: verifica el hash
Cliente->>Servidor de autorización (Authorization server AS): solicitud POST de continuación de concesión de autorización con
interact_ref en el cuerpo para continuar con el URI
Servidor de autorización (Authorization server AS)-->>Cliente: 200 OK, devuelve el token de concesión de autorización de acceso