POST /oauth/token de la API de autenticación mediante el flujo de credenciales de cliente. Por ejemplo, puede impedir que se emita el token, agregar claims personalizados al token de acceso o modificar sus alcances. Para obtener más información, lea Client Credentials Flow.
Los Hooks en este punto de extensibilidad son bloqueantes (sincrónicos), lo que significa que se ejecutan como parte del proceso del activador e impiden que el resto del flujo de Auth0 continúe hasta que el Hook se complete.
El
triggerId del punto de extensibilidad Client Credentials Exchange es credentials-exchange. Para aprender a crear Hooks para este punto de extensibilidad, lea Create Hooks.Código de ejemplo inicial y parámetros
-
La función callback (
cb) al final del código de ejemplo indica que la ejecución ha finalizado y debe incluirse. -
La línea
access_token.scope = scopegarantiza que todos los alcances concedidos estén presentes en el token de acceso. Si la elimina, se restablecerán todos los alcances y el token incluirá solo los alcances que agregue con el script.
Respuesta predeterminada
Respuesta del código base
Script de ejemplo: Añadir un scope adicional al token de acceso
Respuesta
Script de ejemplo: Agregar un claim al token de acceso
- La propiedad
scopedel objeto de respuesta - Cualquier propiedad con nombres de propiedad con espacio de nombres
Para acceder a un Hook Secret configurado desde un hook, usa
context.webtask.secrets.SECRET_NAME.Respuesta
Script de ejemplo: Generar un error o denegar un token de acceso
Error personalizados para generar respuestas de error de OAuth2. (Para obtener más información, consulte RFC de OAuth2: sección 5.2 en el IETF Datatracker.)
Si se devuelve un error simple de JavaScript en la función de devolución de llamada, como:
client_credentials al endpoint /oauth/token, Auth0 responderá con:
Error personalizados.
InvalidScopeError
client_credentials al endpoint /oauth/token, Auth0 responde con:
InvalidRequestError
client_credentials en el endpoint /oauth/token, Auth0 responderá con:
ServerError
client_credentials al endpoint /oauth/token, Auth0 responderá con:
Actualmente, el comportamiento de la clase integrada
Error de JavaScript y de ServerError es idéntico, pero la clase ServerError le permite especificar explícitamente el error de OAuth2 que se devolverá.