Cómo migrar desde credenciales personales para Outlook

¡Hola a todos! Estoy configurando un flujo de trabajo en n8n para leer/enviar correos electrónicos desde un buzón compartido usando un registro de aplicación existente de Azure.

Actualmente, n8n utiliza el flujo OAuth de permisos delegados de Microsoft Graph, que vincula la conexión a mi cuenta personal. Para que esta automatización sea sostenible para todo el equipo, ¿hay una forma estándar de conectarse a Outlook sin usar credenciales personales?

  • ¿Podemos provisionar una cuenta de servicio genérica con acceso al buzón compartido?
  • ¿O podemos cambiar la aplicación de Azure a permisos de aplicación, restringidos solo a este buzón a través de una política de acceso de aplicación?

Agradecería cualquier orientación sobre el proceso estándar de TI para esto. ¡Gracias!

Hola @Neeraj_Sharma1, mientras esperas una respuesta, aquí hay algunas cosas que podrían ayudarte:

Recursos sugeridos

Coincidencia automática con tu pregunta.

Documentación:

Foro:

@Erick_Torres, @Zelite, @tomwhi - ya han ayudado con problemas similares antes, ¿pueden echar un vistazo?

Sugerido automáticamente por el bot de la comunidad de n8n. Es una prueba piloto - por favor comparte tu opinión aquí.

@Neeraj_Sharma1 ¡Hola!

  1. Sí, pero crea una cuenta dedicada no personal, dale acceso al buzón compartido y conecta n8n a ella con la opción de usar buzón compartido activada. La desventaja es que sigue siendo un usuario conectado, por lo que necesita una licencia y puede fallar con 2fa.

  2. Esta es la mejor opción: cambia la aplicación de Azure a permisos de aplicación Mail.ReadWrite + Mail.Send con consentimiento/permisos de administrador. n8n también admite esto

¡Aquí está la documentación oficial! - Microsoft Entra Service Principal credentials | Nodes | n8n Docs

Documentación de Microsoft - aquí

¡Asegúrate de que tu instancia de n8n esté por encima de 2.29!

Okay, así que una vez que establezco los permisos de aplicación en Azure AD con consentimiento del administrador, tengo que configurar la credencial de Oauth 2 de Outlook con el buzón compartido ACTIVADO. Entonces, digamos que dejé la empresa. ¿Continuará el flujo ejecutándose sin problemas después de eso?

¡Siempre y cuando sea una entidad de servicio, solo APP, sí! Si usas OAuth 2 y está conectado como tú, no, morirá cuando tu cuenta de empresa se desactive

¡Cuéntame si funciona! ¡Si necesitas más ayuda, háznos saber! ¡Si todo está bien, siéntete libre de marcar cualquiera de las respuestas como la solución!

Lo que he hecho es crear un buzón compartido y un nuevo registro de aplicación de Azure con permisos de aplicación para mail.ReadWrite y Mail.send (el consentimiento del administrador aún está pendiente de aprobación). Ahora en n8n, he creado una credencial de API OAuth2 con las credenciales del cliente de la aplicación de Azure. Desde n8n puedo enviar una solicitud HTTP a https://graph.microsoft.com/v1.0/users//messages?$top=5 para obtener los correos electrónicos.
¿Voy en la dirección correcta o aún estoy complicando las cosas?

¡Sí, eso debería funcionar!