Pregunta:
¿Cómo se utiliza Modern Authentication u OAuth con Connect to Mail y una cuenta de Google?
Solución:
Para utilizar Connect to Mail con cuentas de Google mediante OAuth, necesita un ID de cliente de Google OAuth 2.0 para cada carpeta que desee leer con Connect to Mail; este ID de cliente también contiene el secreto de cliente correspondiente. Te guiaremos a través de los pasos necesarios con estos KBA:
1. En primer lugar, por favor vaya a https://console.cloud.google.com/apis
2. 2. Cree allí un proyecto para OAuth en conexión con DocuWare.
3. Una vez creado el proyecto, haga clic en "Activar API y servicios", seleccione la API de Gmail y actívela.
⇓
⇓
4. Cambia a "Pantalla de consentimiento OAuth" y crea una pantalla de consentimiento OAuth del tipo Usuario externo y haz clic en Crear.
5. En la siguiente pantalla de configuración, puedes introducir la información de la app. En nuestro caso, puedes dejar la mayor parte de la información en blanco aquí, ya que nadie utilizará esta app aparte de ti.
Importante: Al final de la página de información de la app, Google pide la dirección de correo electrónico del contacto del desarrollador. No se refiere a DocuWare como desarrollador de Connect to Mail, sino al creador de esta aplicación, es decir, a ti. Por lo tanto, introduzca su dirección de correo electrónico aquí, también porque el destinatario de esta dirección será informado si hay problemas con el proyecto que ha creado y esta aplicación Google OAuth. Haz clic en Guardar y continuar.
6. En la segunda página, "Ámbitos", haz clic en "Añadir o ámbitos remotos" y selecciona "openid" y la "API de Gmail" con los siguientes permisos: Leer, redactar, enviar y eliminar permanentemente todo el correo electrónico de Gmail.
Este es el resultado al hacer clic en Actualizar:
7. En la pestaña Usuarios de prueba, añade todas las direcciones de correo electrónico que quieras consultar con esta app OAuth. Haz clic en Guardar y continuar.
De vuelta en la vista general, Google te da la opción de publicar la app OAuth Consent screen. No recomendamos este paso, ya que Google quiere revisar la aplicación. Dado que sólo se trata de una conexión a un buzón de correo que debe establecerse para recuperar correos electrónicos, y no se utiliza ninguna API para otras actividades dentro del buzón, consideramos que este paso requiere demasiado tiempo. Recomendamos utilizar la aplicación en estado de "Pruebas".
8. Ahora vaya a "Credenciales" y haga clic en Crear credenciales. Selecciona OAuth Client ID de la lista.
9. El tipo de aplicación para OAuth Client ID es "Web Application". Ahora seleccione un nombre significativo (recomendamos una combinación de la dirección de correo electrónico y la carpeta a conectar, por ejemplo, Facturas-Sur-Oeste-Buzón) y añada el URI de redirección.
Importante: El URI de redirección es, al igual que con Microsoft OAuth, su URL de DocuWare Cloud + el añadido "/DocuWare/Settings?link=MailCapture".
Así: https: //your-dw-cloud-name.docuware.cloud/DocuWare/Settings?link=MailCapture
10. Por último, anote el ID de cliente, el secreto de cliente y el URI de redirección para la configuración dentro de DocuWare. El URI de redirección debe escribirse de forma idéntica en Google y en DocuWare, de lo contrario se producirá un error de no coincidencia. Recomendamos descargar el archivo JSON. Puede guardarlo en la configuración de DocuWare y todos los ajustes de Google se transferirán automáticamente a la configuración de DocuWare.
11. Vaya a la página de configuración de DocuWare y seleccione "Servicios de correo", haga clic en "Nuevo servicio de correo" y seleccione IMAP. Asigne al nuevo servicio de correo el mismo nombre que al identificador de cliente OAuth en el paso 9. para saber en todo momento a qué servicio de correo pertenece cada identificador de cliente Google.
12. En la nueva ventana, haz clic en "Más opciones" y selecciona "Usar autenticación OAuth IMAP". Asegúrate de que está seleccionado Google y no Otro.
13. Ahora puedes subir el archivo JSON desde Google y la configuración se habrá completado. También puedes subir los datos manualmente, pero no lo recomendamos ya que suele dar lugar a más errores.
Si desea configurar el servicio manualmente, necesitará estos valores además de los indicados en el paso 10:
ID de la aplicación (cliente) | indicado en el paso 10 |
Clave secreta del cliente | indicado en el paso 10 |
Punto final de autorización OAuth 2.0 | |
Punto final de token OAuth 2.0 | |
Redirigir URI | https://your-dw-cloud-name.docuware.cloud/DocuWare/Settings?link=MailCapture |
Ámbito | |
Host | imap.gmail.com |
Puerto | 993 |
14. Ahora conecte su buzón de Google con Connect to Mail. Para ello, abra "Correo electrónico general" en la página de configuración de DocuWare. Seleccione o cree una nueva configuración de almacenamiento y, a continuación, haga clic en "Conectar con cuenta de correo electrónico".
15. En la nueva ventana, ahora debe iniciar sesión en la cuenta de Google una vez. Es posible que Google muestre un mensaje de seguridad como este:
Este mensaje aparece debido a las entradas realizadas en el Paso 5. Ignore este mensaje y haga clic en Continuar.
16. En la siguiente ventana debe otorgar a DocuWare los derechos de acceso al buzón de correo. Haga clic en Continuar.
Si ahora puede ver sus etiquetas de Google en la configuración de DocuWare Connect to Mail, la configuración ha finalizado.
Aviso importante:
Lamentablemente, Google no permite utilizar un conjunto de ID de cliente + secreto de cliente para iniciar sesión en el buzón varias veces para supervisar diferentes carpetas. Para ello, debe cambiar a su proyecto DocuWare en la página API de Google y crear nuevas credenciales de ID de cliente OAuth 2.0 en Credenciales. Para evitar confusiones, le recomendamos, como se mencionó en el paso 9, que nombre estos ID con el nombre de las carpetas a las que desea conectarse en DocuWare.
A continuación, cree un nuevo servicio de correo en DocuWare, preferiblemente también con el nombre de la carpeta, y cargue allí el nuevo archivo JSON.
Más información sobre OAuth:
https://knowledgecenter.docuware.com/docs/mail-services?highlight=oauth
https://developers.google.com/identity/protocols/oauth2/javascript-implicit-flow
https://developers.google.com/workspace/guides/configure-oauth-consent