Configurar la autenticación del proveedor de identidad externo en Drupal
El método de autenticación de proveedor de identidad externo le permite proteger y restringir el acceso a sus API REST de Drupal mediante tokens de proveedores externos como Google, Azure AD, Keycloak, Okta o GitLab. Al integrarse con su proveedor de identidad, este método garantiza que solo los usuarios autenticados puedan acceder a sus API de Drupal. El token de acceso utilizado en este método se obtiene estrictamente de un proveedor de identidad (IdP) externo. Autenticación de la API de Drupal El módulo es compatible con Drupal 8, 9, 10 y 11.
- Usando el compositor
- Usando Drush
- Instalación manual
Pre-requisitos:
- Interfaz de usuario REST:Este módulo proporciona una interfaz fácil de usar para configurar el módulo REST.
- Habilite los siguientes módulos de Servicios Web desde el ampliar sección (/admin/modules) de su sitio Drupal:
- JSON: API
- Interfaz de usuario REST
- Servicios web RESTful
- Publicación por entregas
Habilitar API y asignar métodos:
- El primer paso es habilitar la API y asignar los métodos y operaciones permitidos para ella. Esto se puede hacer usando Interfaz de usuario REST módulo, o modificando directamente la configuración de Drupal.
- Haga clic en el elemento Habilitar API .
- Para habilitar la API mediante el módulo REST UI, haga clic en el icono Configurar botón (como se muestra a continuación).
- En nuestro ejemplo, necesitamos habilitar el /entidad/usuario API. Para ello, haga clic en la opción Habilitar que aparece frente a ella.
- Como nuestro objetivo es crear un usuario en Drupal, seleccione las siguientes configuraciones:
- Método: PUBLICAR
- Formato: JSON
- Proveedor de autenticación: autenticación de rest_api
- Esto permite que el módulo de autenticación de la API de miniOrange autentique la API. Haga clic en el botón Guardar configuración botón para continuar.
Pasos de configuración
1. Configurar el método de autenticación del proveedor de identidad externo:
- En este paso, configuraremos Proveedor de identidad externo como autenticación de API. Para ello, navegue hasta la Autenticación API pestaña del módulo (/admin/config/people/rest_api_authentication/auth_settings).
- En Configuración básica, habilita el Habilitar autenticación palanca.
- Escriba el Nombre de la aplicación y seleccione Proveedor de identidad externo del menú método de autentificación .
- Desplácese hacia abajo hasta la sección Configuración del proveedor de identidad externo sección en la misma pestaña.
- Escriba el Punto final de información de usuario de su proveedor de identidad en el campo dado, para que el módulo pueda obtener detalles del usuario utilizando el token proporcionado.
- En la pantalla Atributo de nombre de usuario, ingrese la clave o el nombre del atributo de su proveedor de identidad que contiene el nombre de usuario enviado por el proveedor externo.
- Haga clic en el botón Guardar configuración .
- Ha configurado exitosamente el método de Proveedor de identidad externo.
Nota: Utilice el encabezado único específico de la aplicación al autenticar la API.
Otorgar permisos de rol para crear usuarios
- Si es necesario, puede permitir que roles no administrativos de Drupal creen usuarios. Para ello, asigne el permiso "Administrar usuarios" a los roles deseados desde la página "Permisos" (/admin/people/permissions) de su sitio Drupal.
2. Ejemplo:
- Para una mejor comprensión, tomemos un ejemplo de cómo agregar autenticación basada en un proveedor de identidad externo a la API de creación de usuarios en Drupal.
- Para crear un usuario en Drupal, envíe una solicitud POST junto con el token recibido de su proveedor de identidad.
Nota: La API /entity/user en Drupal se utiliza para crear un nuevo usuario.
Formato de solicitud HTML - Solicitud: POST /entity/user?_format=json Encabezado: AUTH-METHOD: application_id Token: Aceptar: aplicación/json Tipo de contenido: aplicación/json Cuerpo: { "nombre": { "valor": " " }, "mail": { "valor": " " }, "pass": { "valor": " " }, "estado": { "valor": "1" } } Formato de solicitud CURL: curl --location --request POST ' /entidad/usuario?_formato=json' \ --header 'MÉTODO DE AUTORIZACIÓN: id_de_aplicación' \ --header 'Token: ' \ --header 'Aceptar: application/json' \ --header 'Tipo de contenido: application/json' \ --data-raw ' { "nombre": [ { "valor": "Nombre de usuario" } ], "correo": [ { "valor": "correo electrónico" } ], "contraseña": [ { "valor": "Contraseña" } ], "estado": [ { "valor": "1" } ] }
- Una respuesta exitosa devolverá los detalles del usuario que usted creó (ver la imagen a continuación).
¡Felicitaciones! Has configurado correctamente el método de proveedor de identidad externo mediante el módulo de autenticación de la API de Drupal.
Si la configuración no fue exitosa, por favor contáctenos en drupalsupport@xecurify.comIncluya una captura de pantalla de la ventana de error y le ayudaremos a resolver el problema y le guiaremos en la configuración.
Gracias por su respuesta. Nos pondremos en contacto con usted pronto.
Algo salió mal. Por favor envíe su consulta nuevamente
