Revocar los tokens de una aplicación
POST /v1/applications/{application_id}/tokens:revoke · permiso sessions:write
Revoca cada familia de refresh tokens activa emitida a la aplicación, para todos los usuarios. Los access tokens emitidos a la aplicación antes de la llamada dejan de aceptarse en la introspección y en la comprobación de revocación. Úselo cuando sospeche que los tokens emitidos a la aplicación pueden haberse filtrado: la aplicación debe obtener tokens nuevos mediante una nueva solicitud de autorización.
Las sesiones, los consentimientos de los usuarios y las credenciales de la aplicación no cambian: las sesiones de inicio de sesión de los usuarios permanecen abiertas, así que una nueva solicitud de autorización puede tener éxito sin volver a iniciar sesión, y no se vuelve a pedir el consentimiento. Para impedir que un secreto de cliente filtrado siga emitiendo tokens nuevos, rote también las credenciales de la aplicación. La solicitud no tiene cuerpo. Una llamada repetida tiene éxito con un recuento en cero. La revocación se escribe en el registro de auditoría de gestión. Envíe una cabecera Idempotency-Key para que los reintentos sean seguros.
Solicitud
| Parámetro | En | Obligatorio | Descripción |
|---|---|---|---|
application_id |
path | sí | Id de aplicación, con el prefijo app_. |
Respuesta
200 OK.
{
"revoked_token_families": 318
}
revoked_token_families es el número de familias de refresh tokens revocadas por esta llamada.
Errores
Cada error es un cuerpo application/problem+json con un code estable.
| HTTP | code |
Cuándo |
|---|---|---|
| 400 | malformed_request, unknown_field |
Se envió un cuerpo que no es un objeto JSON vacío. |
| 404 | not_found |
La aplicación no existe en este entorno. |
| 401 | unauthenticated |
Falta la clave de API, no es válida o está revocada. |
| 403 | insufficient_permissions |
La clave no tiene el permiso sessions:write. |
| 429 | rate_limited |
Se superó el límite de frecuencia; respete Retry-After. |
| 503 | service_unavailable |
Una dependencia no está disponible temporalmente; reintente más tarde. |
Ejemplo
curl -X POST https://api.eu.keenauth.com/v1/applications/app_0a1b2c3d4e5f6g7h8j9k0m1n2p/tokens:revoke \
-H "Authorization: Bearer $KEENAUTH_SECRET_KEY" \
-H "Idempotency-Key: $(uuidgen)"
CLI: keenauth applications tokens revoke app_0a1b2c3d4e5f6g7h8j9k0m1n2p --yes