Si no ves el video, puedes refrescar el navegador, presionando (Ctrl+Shift+R | Ctrl+F5 o Shift+F5), o abrirlo directamente desde el Canal de Youtube... HAZ CLIC AQUI
Con el crecimiento en la popularidad en utilizar Drupal Desacoplado (Headless), combinando un diseño frontend desarrollado en javascript, a partir de frameworks como Angular, React.js o Vue.js, y a su vez, dejando las tareas relacionadas con gestión de usuarios, permisos y otras, relacionadas con bases de datos a cargo de Drupal; hoy aprenderemos a configurar uno de los módulos necesarios para proteger, este tipo de conexiones, entre Drupal 9 y otras aplicaciones. Nos referimos al módulo Simple Aouth, que nos permitirá configurar accesos y permisos restrictivos, para el intercambio de datos desde y hacia Drupal, de manera protegida.
Cómo instalar y configurar el módulo:
Paso 1 - Descargar el módulo:
Lo primero que tendrás que hacer es descargarlo, para ello, a partir de Drupal 8 se recomienda que utilices el gestor de paquetes Composer, ya que te facilitará tanto la instalación como futuras actualizaciones del tus proyectos. No obstante también podrías descargarlo desde la Página oficial del módulo y una vez descargado, tendrás que colocarlo en la carpeta "modules" o "modules/contrib", dependiendo de tu instalación.
Paso 2 - Configuración:
Primero genere un par de claves para que el módulo Simple OAuth las use al cifrar tokens. Estos deben almacenarse fuera de su directorio raíz de Drupal. Recomendamos la siguiente estructura de directorios:
. ├── LICENSE ├── README.md ├── composer.json ├── composer.lock ├── config ├── keys ├── scripts ├── vendor └── web // > Drupal root directory
Genere las claves necesarias con el siguiente conjunto de comandos:
mkdir keys cd keys openssl genrsa -out private.key 2048 openssl rsa -in private.key -pubout > public.key chmod 600 public.key chmod 600 private.key
Luego dígale al módulo Simple OAuth dónde encontrarlos. En su sitio de Drupal, en el menú administrativo Administrar, vaya a Configuración > OAuth simple y complete el formulario con las rutas a las claves que acaba de generar.
Para ello, accederemos a la página de configuración del módulo en la url "/admin/config/people/simple_oauth" y a continuación rellenaremos los campos del formulario con los siguientes detalles:
Access token expiration time: 300 Refresh token expiration time 1209600 Public Key: ../keys/public.key Private Key: ../keys/private.key
A continuación, configure un nuevo cliente OAuth. Primero agregue un nuevo rol de Drupal. Vaya a Personas > Roles (/admin/people/roles/add) y agregue un nuevo rol llamado "Cliente Gatsby".
Luego, crearemos un usuario y le asignaremos el rol que hemos creado cuando lo agregemos como consumidor en simple OAuth
Luego, en el menú Administrar administración, vaya a Configuración > Simple OAuth > Clientes y haga clic en el botón Agregar consumidor. Complete el formulario y recuerde el valor que ingresa para el campo Nuevo secreto, ya que lo necesitará nuevamente más adelante. En Ámbitos, elija el rol de cliente de Gatsby que acabamos de crear. Finalmente, haga clic en Guardar para agregar el nuevo consumidor.
En la página resultante, debería ver su nueva lista de consumidores junto con un UUID. Tome nota de este UUID. Combinados con el secreto de arriba, serán su ID de consumidor y clave, que se usarán para las solicitudes de OAuth más adelante
Finalmente, otorgue permiso a los usuarios autenticados para otorgar códigos OAuth 2. En el menú Gestionar administración, vaya a Personas > Permisos (/admin/people/permissions). Marque la casilla "Grant OAuth2 codes" para otorgar al usuario autenticado los códigos de permisos OAuth 2. Luego, desplácese hasta la parte inferior de la página y haga clic en Guardar permisos.