Saltar al contenido principal
Auth0 ofrece dos formas de implementar el control de acceso basado en roles (RBAC), que puede usar en lugar del sistema interno de control de acceso de su API o en combinación con este:El conjunto de funcionalidades de Authorization Core equivale al de Authorization Extension, mejora el rendimiento y la escalabilidad, y ofrece un sistema RBAC más flexible que Authorization Extension.Actualmente, ambas implementan las funciones clave de RBAC y le permiten restringir los alcances personalizados definidos para una API a aquellos que se hayan asignado al usuario como permisos.
Una vez configurada e implementada, su extensión debe contener usuarios, así como grupos, roles y permisos. Puede automatizar el aprovisionamiento y consultar en tiempo real el contexto de autorización de sus usuarios si habilita el acceso a la API a su extensión.

Habilitar el acceso a la API

  1. Ve a Auth0 Dashboard > Extensions > Auth0 Authorization.
  2. Para acceder a la sección API, selecciona el nombre de tu inquilino de Auth0 en la parte superior derecha del Authorization Dashboard y luego selecciona API.
    Dashboard - Extensions - Authorization Extensions Dashboard - Select API
  3. En la página Settings, activa el interruptor acceso a la API.
    Dashboard - Extensions - Authorization Extensions Dashboard - Enable API Access
  4. Una vez habilitado acceso a la API, podrás ver o controlar (dentro de la extensión) algunos de los parámetros de los tokens emitidos por la API. Puedes controlar el tiempo de expiración del token, así como ver la audiencia, el emisor y la URL para acceder a la API.
    Dashboard - Extensions - Authorization Extensions Dashboard - API Access Enabled

Acceder a la API de la extensión

Cuando habilitó el acceso de la extensión a la API, Auth0 creó automáticamente una API para su uso en el Auth0 Dashboard. Para acceder a la API, deberá crear una aplicación de máquina a máquina, que es la entidad que interactúa directamente con la API.

Crear aplicaciones

  1. Ve a Auth0 Dashboard > Applications > Applications y selecciona Create Application. Asigna un nombre a tu nueva aplicación y elige el tipo Machine to Machine Application. Selecciona Create para continuar. Se te redirigirá a la página de Quick Start de la aplicación, donde puedes personalizar la documentación dinámica según la API con la que usarás la aplicación. Selecciona la API que Auth0 creó para tu extensión (debería llamarse auth0-authorization-extension-api o algo similar). Como es la primera vez que trabajas con la API y la aplicación juntas, verás un mensaje que dice: “This application is not authorized for this API.” Para autorizar la aplicación para usarla con la API, selecciona Navigate to the API and Authorize.
    Dashboard - Extensiones de autorización - Inicio rápido del cliente
  2. Verás una lista de aplicaciones de máquina a máquina que puedes usar con tu API. Activa el interruptor junto a la aplicación que acabas de crear para autorizarla.
    Dashboard - Extensión de autorización - Clientes para API
    Una vez que hayas autorizado la aplicación, verás el Grant ID. También puedes seleccionar los Scopes que se concederán a la aplicación. Los alcances que concedas dependen de los endpoints a los que quieras acceder.
  3. Si haces cambios en los alcances, selecciona Update para guardarlos.
    Dashboard - Dashboard de la extensión de autorización - Alcances del cliente

Obtener un token de acceso

Para acceder a la API, tendrás que solicitar y obtener el token de acceso adecuado.

Llamar a la API

Puedes llamar a la API mediante:
  • Una solicitud HTTP
  • Un comando cURL
También puedes encontrar información detallada sobre los endpoints, así como ejemplos de cómo llamar a cada endpoint con los tres métodos anteriores, en el Authorization Extension API Explorer. También puedes consultar el API Explorer, que documenta todo lo que puedes hacer desde la línea de comandos una vez que hayas habilitado el acceso a tu extensión a través de la API. Selecciona la página Explorer para ver la documentación de la API.
Authorization Extension API Explorer

Más información