Skip to main content

Conectar el servidor de correo de Microsoft 365

Cuando se conecta al servidor de correo de Microsoft 365, es obligatorio utilizar el esquema de autenticación OAuth v2.0 a través de SMTP. LogicalDOC utiliza el client flow para obtener el token OAuth.

Registrar LogicalDOC como aplicación en el Portal de Azure

Abra su Portal de Azure, aquí en la sección Services, abra el App registrations. Haga clic en New registration e ingrese LogicalDOC como nombre de la nueva aplicación.

LogicalDOC app

Ahora que la aplicación se ha registrado, ingrese el API permissions para proporcionar los siguientes permisos:

Microsoft Graph
----------------------------------
Mail.Read
Mail.ReadBasic
Mail.ReadBasic.All
Mail.ReadWrite
Mail.Send
SMTP.Send
User.Read

Office 365 Exchange Online
----------------------------------
full_access_as_App
IMAP.AccessAsApp
Mail.Read
Mail.Send
Mail.Send.All
SMTP.SendAsApp

LogicalDOC grants

Conceder consentimiento de administrador

Asegúrese de otorgar el consentimiento del administrador para todos los permisos de la aplicación.

Crear la entidad de servicio en Exchange Online

Una vez que se haya otorgado el consentimiento, el administrador debe registrar la entidad de servicio de su aplicación en Exchange mediante Power Shell.

Abra Power Shell e instale el módulo ExchangeOnlineManagement con estos comandos:

Install-Module -Name AzureAD -SkipPublisherCheck
Import-Module AzureAD
Install-Module -Name ExchangeOnlineManagement -SkipPublisherCheck
Import-Module ExchangeOnlineManagement

 

Exchange Online - InstallModule

Ahora registre la entidad de servicio en Exchange con estos otros comandos:

Connect-AzureAD
Connect-ExchangeOnline
New-ServicePrincipal -AppId {Application ID} -ObjectId {Object ID}

Asegúrese de reemplazar el {Application ID} y el {Object ID} con esos códigos de Enterprise applications en lugar del object id de App registration.
Para la misma aplicación que registraste en App registration, también se ha creado una aplicación correspondiente en Enterprise applications. Debe pasar la object id desde allí al registrar la entidad de servicio en Exchange:

 

LogicalDOC Enterprise App

Obtenga el ID del principal con este comando:

Get-ServicePrincipal | fl

 

Exchange Service Principal

Agregue permisos completos al correo que usa para conectarse con este comando:

Add-MailboxPermission -Identity {your email} -User {principal id} -AccessRights FullAccess

 

Exchange Service Principal

Habilite el SMTP con este comando:

Set-CASMailbox -Identity {your email} -SmtpClientAuthenticationDisabled $false

 

Exchange Service SMTP

Generar un client secret

Para permitir que LogicalDOC se conecte a su Microsoft 365, se debe generar client secret; para hacerlo, abra los detalles de su aplicación recién registrada.

 

App Details

Aquí, haga clic en el enlace Client credentials y genere su secret.

Guardar el secret

Asegúrese de guardar el secret en un lugar seguro porque solo está visible ahora y ya no podrá obtenerlo en el futuro desde el Portal de Azure.

Configurar LogicalDOC

  1. Ingrese en Administración > Ajustes > Correo Electrónico Saliente
  2. En el campo Protocolo coloque: SMTP Microsoft 365
  3. Habilite la opción Usar autenticación segura
  4. En el campo Servidor coloque: smtp.office365.com
  5. En el campo Puerto coloque: 587
  6. En Nombre usuario y Email remitente coloque el mismo correo que usa para conectarse
  7. Desactiva la opción Utilizar el correo del usuario como remitente
  8. En ID Client and ID Tenant coloque los valores de los detalles de la aplicación como se ve en el portal de Azure

    App Details

  9. En el campo Client Secret coloque el secret que previamente guardaste

SMTP Settings

Guarde y pruebe la conexión.

Utilizar el correo del usuario como remitente

La configuración descrita en esta página hace que LogicalDOC envíe todos los correos electrónicos como el mismo usuario que se conecta a Exchange Online. Si desea que LogicalDOC envíe los correos electrónicos en nombre de los otros usuarios (por ejemplo, cuando un usuario envía un mensaje desde la interfaz), habilite la opción Utilizar el correo del usuario como remitente. También debe asignar el permiso Send As a través de Power Shell como se describe en la documentación de Microsoft.