Este módulo está destinado a ser un complemento que funciona con el módulo PHPMailer SMTP, proporcionando autenticación en Google Workspace Gmail a través de OAuth2. Está inspirado en phpmailer_oauth2, escrito por Ian McLean (imclean). Si no hubiera encontrado el módulo de Ian, es poco probable que hubiera intentado trabajar en uno para Google Gmail.
IMPORTANTE: Este módulo requiere el módulo Google league/oauth2-google, disponible en https://oauth2-client.thephpleague.com/providers/league/. Debe instalarse en su directorio de proveedores.
Antes de utilizar este módulo, es necesario configurar un ID de cliente y un secreto de cliente en Google. A continuación se explica cómo hacerlo a partir de abril de 2024 y configurar este módulo:
Inicia sesión en tu cuenta de Google Workspace.
Vaya a https://console.cloud.google.com/.
En la parte superior izquierda de la página, junto a "Google Cloud", debería haber un menú desplegable de proyectos. Haga clic en él.
Si no tiene proyectos en el cuadro de diálogo 'Seleccionar un recurso', cree uno y luego selecciónelo como su proyecto actual.
Haga clic en "API y servicios", un botón grande en algún lugar en el centro de la página.
Haga clic en Credenciales en el menú que aparece en el lado izquierdo de la página.
Haga clic en CREAR CREDENCIALES, luego seleccione 'ID de cliente OAuth'.
Seleccione 'Aplicación web' para Tipo de aplicación.
Asigne un nombre a sus credenciales y anote su ID de cliente y su secreto de cliente. Deberá ingresar estos valores en (11) a continuación.
Una vez que haya instalado este módulo, puede encontrar el 'URI de redireccionamiento autorizado' para su sitio yendo a Configuración->Sistema->PHPMailer Gmail OAuth2 (/admin/config/system/phpmailer-gmail-oauth2). Abra esa página en una ventana separada del navegador y encontrará el URI de redireccionamiento requerido por Google cerca de la parte superior de la página. Copie el URI e ingréselo en el cuadro "URI de redireccionamiento autorizado" en la página de Google. Presione Guardar.
De regreso a la página de Drupal, ingrese su dirección de correo electrónico de Google, ID de cliente y secreto de cliente, luego presione el botón "Guardar configuración".
Una vez que haya guardado sus credenciales de Google, aparecerá el botón "Obtener token de actualización". Presione ese botón para redirigir desde su sitio a Google, luego siga las instrucciones en Google.
Cuando haya terminado, Google debería emitir un token de actualización y redirigir nuevamente a la página de Drupal que acaba de abandonar. Si todo funcionó, tendrá su token de actualización y estará listo para enviar un correo electrónico.
Si tiene problemas para redirigir a Google cuando presiona el botón 'Obtener token de actualización', es posible que deba agregar lo siguiente a su archivo settings.php:
$ settings [ ' trusted_host_patterns ' ] = [ ' ^accounts.google.com$ ' ];
If you have other trusted_host_patterns, add '^accounts.google.com$' to the array.
Algunos otros elementos de configuración:
No olvide ir al módulo Correo para seleccionar 'PHPMailer SMTP' como formateador y remitente de su correo (/admin/config/system/mailsystem).
Si tiene otros módulos como Commerce 2 que envían correo, es posible que deba agregarlos en la parte inferior de la misma página en (1) arriba.
En la página de configuración de transporte SMTP de PHPMailer, seleccione 'Gmail OAuth2' como su método de autenticación SMTP (/admin/config/system/phpmailer-smtp). Configure el puerto SMTP en 587 y seleccione TLS como protocolo seguro.
Puede utilizar el servicio 'Configuración de prueba' en la página de configuración de transporte SMTP de PHPMailer para verificar que la nueva configuración esté funcionando enviando un correo electrónico de prueba.