Requisitos previos de Correo para una conexión OAuth 2.0 de Microsoft 365
Introducción
Esta página documenta los requisitos previos para utilizar el conector de Correo con una conexión OAuth 2.0 de Microsoft 365 mediante Credencial de contraseña de propietario de recurso (ROPC) autenticación.
Una licencia Microsoft 365 Business Standard es necesario al autenticarse con Microsoft 365 OAuth 2.0.
Todas las tareas prerrequisito requerirán que inicie sesión en el portal de Azure con una cuenta de Azure con permisos de administrador Administrador de Exchange habilitados. Se requiere Administrador de Exchange para descargar el módulo de PowerShell de Exo2 necesario en conectar el registro de la aplicación para intercambiar en línea. El nombre de usuario y la contraseña de esta cuenta también se utilizarán en Obtener tokens de acceso para la autenticación ROPC.
Algunas tareas también requerirán Windows PowerShell y curl
, Postman o una herramienta similar para enviar solicitudes POST.
Crear un registro de aplicación
Siga estos pasos para crear un registro de aplicación con la plataforma de identidad de Microsoft:
-
En el portal de Azure, busque y haga clic en Microsoft Entra ID (anteriormente conocido como Azure Active Directory o Azure AD):
-
En la barra lateral izquierda, bajo Administrar, haga clic en Registros de aplicaciones.
-
Haga clic en Nuevo registro:
-
Ingrese un Nombre para su aplicación. Este nombre para mostrar será visible para los usuarios:
-
Haga clic en Registrarse para completar el registro de la aplicación. A continuación, se lo dirigirá a la página Descripción general de la aplicación:
Importante
Conserve el ID de aplicación (cliente) y el ID de directorio (inquilino) del registro de la aplicación para usarlos como
client_id
ytenant_id
en Verificar el registro de la aplicación y Obtener tokens de acceso para la autenticación ROPC. -
Haga clic en Agregar un certificado o secreto.
-
En la pestaña Secretos de cliente, haga clic en Nuevo secreto de cliente para abrir el panel Agregar un secreto de cliente. En este panel, ingrese una descripción y seleccione una fecha de vencimiento para el secreto de cliente. Luego, configúrelo y haga clic en Agregar:
-
El secreto del cliente ahora es visible en la pestaña Secretos del cliente. Conserve el Valor del secreto del cliente para usarlo como
client_secret
en Obtener tokens de acceso para la autenticación ROPC.
Agregar los permisos necesarios al registro de la aplicación
Para utilizar el conector de Correo con una conexión OAuth 2.0 de Microsoft 365, el registro de su aplicación debe tener estos permisos:
- Permisos de la aplicación de Office 365 Exchange Online
- Permisos de la aplicación Microsoft Graph
- Permisos delegados de Microsoft Graph
En el portal de Azure, navegue hasta el registro de su aplicación y haga clic en Permisos de API en la barra lateral izquierda:
Importante
Dependiendo de la configuración de seguridad de su organización de Azure, algunos permisos requerirán el consentimiento del administrador para permitirlos.
Permisos de la aplicación Exchange Online de Office 365
Para agregar permisos de aplicaciones de Office 365 Exchange Online, siga estos pasos:
-
En la página Permisos de API, haga clic en Agregar un permiso.
-
En el panel Solicitar permisos de API, haga clic en la pestaña APIs que usa mi organización, busque y haga clic en Office 365 Exchange Online:
-
Haga clic en Permisos de la aplicación.
-
Para el acceso POP, habilite el permiso POP.AccessAsApp. Para el acceso IMAP, habilite el permiso IMAP.AccessAsApp.
-
Haga clic en Agregar permisos. Se mostrará la página Permisos configurados del registro de la aplicación actualizada.
Permisos de la aplicación de gráficos de Microsoft
Para agregar permisos a la aplicación Microsoft Graph, siga estos pasos:
-
En la página Permisos de API, haga clic en Agregar un permiso.
-
En el panel Solicitar permisos de API, haga clic en la pestaña APIs que usa mi organización, busque y haga clic en Microsoft Graph:
-
Haz clic en Permisos de la aplicación.
-
Habilita los permisos Mail.Send y User.Read.All.
-
Haz clic en Agregar permisos. Se muestra la página Permisos configurados del registro de la aplicación actualizada.
Permisos delegados de Microsoft Graph
Para agregar permisos delegados de Microsoft Graph, siga estos pasos:
-
En la página Permisos de API, haga clic en Agregar un permiso.
-
En el panel Solicitar permisos de API, haga clic en la pestaña APIs que usa mi organización, busque y haga clic en Microsoft Graph:
-
Haga clic en Permisos delegados.
-
Habilite estos permisos según la actividad de Correo que se utilizará:
Actividad Permisos requeridos Read Email acceso_sin_conexión, IMAP.AccessAsUser.All y User.Read Send Email acceso_fuera_de_línea y SMTP.Enviar -
Haga clic en Agregar permisos. Se mostrará la página Permisos configurados del registro de la aplicación actualizada. El registro de su aplicación ahora tiene los permisos necesarios.
Conectar el registro de la aplicación para intercambiar en línea
Para conectar el registro de la aplicación a Exchange Online, siga estos pasos:
-
Descargue e instale el módulo EXO2 PowerShell yendo al Centro de administración de Classic Exchange. Haga clic en Híbrido y luego en Configurar módulo Exchange PowerShell.
Importante
Si no puede descargar e instalar el módulo EXO2 PowerShell, no podrá completar la conexión de Exchange.
-
Inicie Windows PowerShell y ejecute:
Install-Module -Name ExchangeOnlineManagement -allowprerelease Install-Module Microsoft.Graph -allowprerelease Install-Module -Name Microsoft Entra ID Install-module AzureADPreview -Verbose import-module Microsoft Entra IDPreview import-module ExchangeOnlineManagement
-
Correr
Connect-AzureAD
e ingrese sus datos de acceso. -
Ejecute
Connect-ExchangeOnline
e ingrese su información de inicio de sesión. -
Obtenga la información principal del servicio de la aplicación registrada y almacénela en una variable ejecutando:
$MyApp = Get-AzureADServicePrincipal -SearchString <Registered application name> $MyApp | fl
-
Utilice la información principal del servicio almacenada para completar la conexión:
New-ServicePrincipal -AppId $MyApp.AppId -ServiceId $MyApp.ObjectId -DisplayName "Service Principal for IMAP APP" Add-MailboxPermission -Identity <Administrator email address> -User $MyApp.ObjectId -AccessRights FullAccess
Verificar el registro de la aplicación
Para verificar el registro de la aplicación, siga estos pasos:
-
Envíe una solicitud POST a
https://login.microsoftonline.com/<tenant_id>/oauth2/v2.0/devicecode
dónde<client_id>
y<tenant_id>
se reemplazan con el ID de aplicación (cliente) y el ID de directorio (inquilino) que guardó al crear el registro de su aplicación:curl --location --request POST 'https://login.microsoftonline.com/<tenant_id>/oauth2/v2.0/devicecode' \ --header 'Content-Type: application/x-www-form-urlencoded' \ --data-urlencode 'client_id=<client_id>' \ --data-urlencode 'scope=https://outlook.office.com/SMTP.Send https://outlook.office.com/IMAP.AccessAsUser.All'
Si tiene éxito, la respuesta contendrá un código de autorización.
-
Navegue hasta
https://login.microsoftonline.com/common/oauth2/deviceauth
En su navegador, introduzca el código de autorización. El registro de la aplicación ya está verificado y podrá obtener tokens de acceso de forma gratuita.
Obtener tokens de acceso para la autenticación ROPC
Después de completar los pasos anteriores, se pueden generar tokens para la autenticación ROPC mediante una solicitud POST:
curl --location --request POST 'https://login.microsoftonline.com/<tenant_id>/oauth2/v2.0/token' \
--header 'Content-Type: application/x-www-form-urlencoded' \
--data-urlencode 'client_id=<client_id>' \
--data-urlencode 'scope=https://outlook.office.com/IMAP.AccessAsUser.All' \
--data-urlencode 'client_secret=<client_secret>' \
--data-urlencode 'username=<account_username>' \
--data-urlencode 'password=<account_password>' \
--data-urlencode 'grant_type=password'
<client_id>
y<tenant_id>
se reemplazan con el ID de aplicación (cliente) y el ID de directorio (inquilino) que guardó al crear el registro de su aplicación.<client_secret>
se reemplaza con el secreto del cliente que guardó al crear el registro de su aplicación.<account_username>
y<account_password>
se reemplazan con sus credenciales de inicio de sesión de Azure para la autenticación ROPC.
Nota
La grant_type
El parámetro siempre debe ser password
para la autenticación ROPC.
Si se realiza correctamente, la respuesta contendrá un access_token
para la autenticación ROPC.