Requisitos Previos de Correo para una Conexión de Microsoft 365 OAuth 2.0¶
Introducción¶
Estos son los requisitos previos para usar el Conector de Correo con una conexión de Microsoft 365 OAuth 2.0 mediante Credencial de contraseña del propietario del recurso (ROPC) autenticación:
Todas las tareas de prerrequisito requerirán que inicie sesión en Azure Portal con una cuenta de Azure con los permisos de administrador de Administrador de Exchange habilitados. Se requiere Administrador de Exchange para descargar el módulo EXO2 PowerShell necesarios en Conectar el registro de la aplicación a Exchange Online. El nombre de usuario y la contraseña de esta cuenta también se usará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 Azure Portal, busque y haga clic en Azure Active Directory:
-
En la barra lateral izquierda debajo de 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 le dirigirá a la página Descripción general de la aplicación:
Importante
Conserve la ID de aplicación (cliente) y la ID de directorio (inquilino) del registro de la aplicación para usar 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 del cliente, luego configure, haga clic en Agregar:
-
El secreto del cliente ahora está 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.
Agregue los Permisos Requeridos al Registro de la Aplicación¶
Para utilizar el Conector de Correo con una conexión de Microsoft 365 OAuth 2.0, el registro de su aplicación debe tener estos permisos:
- Permisos de aplicación en línea de Office 365 Exchange
- Permisos de aplicación de Microsoft Graph
- Permisos delegados de Microsoft Graph
En Azure Portal, navegue hasta el registro de su aplicación y haga clic en Permisos de API en la barra lateral izquierda:
Importante
Según la configuración de seguridad de su organización de Azure, algunos permisos requerirán el consentimiento del administrador.
Permisos de Aplicación en Línea de Office 365 Exchange¶
Para agregar permisos de aplicación de Office 365 Exchange Online, siga estos pasos:
-
En la página Permisos de la 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 muestra la página Permisos configurados del registro de la aplicación actualizada.
Permisos de Aplicación de Microsoft Graph¶
Para agregar permisos de aplicación de Microsoft Graph, siga estos pasos:
-
En la página Permisos de la 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 de la aplicación.
-
Habilite los permisos Mail.Send y User.Read.All.
-
Haga 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 la 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 los permisos offline_access, IMAP.AccessAsUser.All y SMTP.Send. User.Read debe permanecer habilitado.
-
Haga clic en Agregar permisos. Se muestra la página Permisos configurados del registro de la aplicación actualizada. El registro de su aplicación ahora tiene los permisos requeridos.
Conecte el Registro de la Aplicación a Exchange Online¶
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 Exchange clásico. Haga clic en Híbrido y luego en Configurar el 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 AzureAD Install-module AzureADPreview -Verbose import-module AzureADPreview import-module ExchangeOnlineManagement
-
Corre
Connect-AzureAD
e ingrese su información de inicio de sesión. -
Corre
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 guárdela en una variable ejecutando:
$MyApp = Get-AzureADServicePrincipal -SearchString <Registered application name> $MyApp | fl
-
Utilice la información principal de 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 la aplicación (cliente) y el ID del 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 y envíe el código de autorización. El registro de la aplicación ahora está verificado y puede obtener tokens de acceso libremente.
Obtenga 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 la aplicación (cliente) y el ID del 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
El grant_type
El parámetro siempre debe ser password
para la autenticación ROPC.
Si tiene éxito, la respuesta contendrá un access_token
para la autenticación ROPC.