Pré-requisitos de e-Email para uma conexão Microsoft 365 OAuth 2.0
Introdução
Esta página documenta os pré-requisitos para usar o Conector de e-Email com uma conexão Microsoft 365 OAuth 2.0 usando Resource Owner Password Credential (ROPC) autenticação.
Uma licença Microsoft 365 Business Standard é necessário ao autenticar com o Microsoft 365 OAuth 2.0.
Todas as tarefas de pré-requisito exigirão que você faça login no portal do Azure com uma conta do Azure com as permissões de administrador do Administrador do Exchange habilitadas. O Administrador do Exchange é necessário para baixar o módulo do PowerShell Exo2 necessário em conectar o registro do aplicativo para trocar online. O nome de usuário e a senha desta conta também serão usados em Obter tokens de acesso para autenticação ropc.
Algumas tarefas também exigirão o Windows PowerShell e curl
, Postman ou uma ferramenta similar para enviar requisições POST.
Criar um registro de aplicativo
Siga estas etapas para criar um registro de aplicativo com a plataforma de identidade da Microsoft:
-
No portal do Azure, pesquise e clique em Microsoft Entra ID (anteriormente conhecido como Azure Active Directory ou Azure AD):
-
Na barra lateral esquerda, em Gerenciar, clique em Registros de aplicativos.
-
Clique em Novo registro:
-
Insira um Nome para seu aplicativo. Este nome de exibição ficará visível para os usuários:
-
Clique em Registrar para concluir o registro do aplicativo. Você será então direcionado para a página Visão geral do aplicativo:
Importante
Mantenha o ID do aplicativo (cliente) e o ID do diretório (locatário) do registro do aplicativo para usar como
client_id
etenant_id
em Verificar o registro do aplicativo e Obter tokens de acesso para autenticação ropc. -
Clique em Adicionar um certificado ou segredo.
-
Na aba Segredos do cliente, clique em Novo segredo do cliente para abrir o painel Adicionar um segredo do cliente. Neste painel, insira uma descrição e selecione uma data de expiração para o segredo do cliente, depois defina, clique em Adicionar:
-
O segredo do cliente agora está visível na aba Segredos do cliente. Mantenha o Valor do segredo do cliente para usar como
client_secret
em Obter tokens de acesso para autenticação ropc.
Adicione as permissões necessárias ao registro do aplicativo
Para usar o Conector de e-Email com uma conexão Microsoft 365 OAuth 2.0, o registro do seu aplicativo deve ter estas permissões:
- Permissões do aplicativo Office 365 Exchange Online
- Permissões do aplicativo gráfico da Microsoft
- Permissões delegadas do Microsoft Graph
No portal do Azure, navegue até o registro do seu aplicativo e clique em Permissões de API na barra lateral esquerda:
Importante
Dependendo das configurações de segurança da sua organização do Azure, algumas permissões exigirão o consentimento do administrador.
Permissões do aplicativo Exchange Online do Office 365
Para adicionar permissões de aplicativo do Office 365 Exchange Online, siga estas etapas:
-
Na página Permissões da API, clique em Adicionar uma permissão.
-
No painel Solicitar permissões de API, clique na aba APIs que minha organização usa, pesquise e clique em Office 365 Exchange Online:
-
Clique em Permissões do aplicativo.
-
Para acesso POP, habilite a permissão POP.AccessAsApp. Para acesso IMAP, habilite a permissão IMAP.AccessAsApp.
-
Clique em Adicionar permissões. A página Permissões configuradas do registro do aplicativo atualizado é exibida.
Permissões do aplicativo gráfico da Microsoft
Para adicionar permissões do aplicativo Microsoft Graph, siga estas etapas:
-
Na página Permissões da API, clique em Adicionar uma permissão.
-
No painel Solicitar permissões de API, clique na aba APIs que minha organização usa, pesquise e clique em Microsoft Graph:
-
Clique em Permissões do aplicativo.
-
Habilite as permissões Mail.Send e User.Read.All.
-
Clique em Adicionar permissões. A página Permissões configuradas do registro do aplicativo atualizado é exibida.
Permissões delegadas do Microsoft Graph
Para adicionar permissões delegadas do Microsoft Graph, siga estas etapas:
-
Na página Permissões da API, clique em Adicionar uma permissão.
-
No painel Solicitar permissões de API, clique na aba APIs que minha organização usa, pesquise e clique em Microsoft Graph:
-
Clique em Permissões delegadas.
-
Habilite essas permissões dependendo da atividade de e-Email a ser usada:
Atividade Permissões necessárias Read Email offline_access, IMAP.AccessAsUser.All e User.Read Send Email offline_access e SMTP.Send -
Clique em Adicionar permissões. A página Permissões configuradas do registro do aplicativo atualizado é exibida. O registro do seu aplicativo agora tem as permissões necessárias.
Conecte o registro do aplicativo para trocar online
Para conectar o registro do aplicativo ao Exchange Online, siga estas etapas:
-
Baixe e instale o módulo EXO2 PowerShell acessando o Centro de administração do Classic Exchange. Clique em Híbrido e depois em Configurar módulo Exchange PowerShell.
Importante
Se você não conseguir baixar e instalar o módulo EXO2 PowerShell, não poderá concluir a conexão do Exchange.
-
Inicie o Windows PowerShell e execute:
Install-Module -Name ExchangeOnlineManagement -allowprerelease Install-Module Microsoft.Graph -allowprerelease Install-Module -Name AzureAD Install-module AzureADPreview -Verbose import-module AzureADPreview import-module ExchangeOnlineManagement
-
Corra
Connect-AzureAD
e insira suas informações de login. -
Execute
Connect-ExchangeOnline
e insira suas informações de login. -
Obtenha as informações principais do serviço do aplicativo registrado e armazene-as em uma variável executando:
$MyApp = Get-AzureADServicePrincipal -SearchString <Registered application name> $MyApp | fl
-
Use as informações principais do serviço armazenado para concluir a conexão:
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
Verifique o registro do aplicativo
Para verificar o registro do aplicativo, siga estas etapas:
-
Envie uma solicitação POST para
https://login.microsoftonline.com/<tenant_id>/oauth2/v2.0/devicecode
onde<client_id>
e<tenant_id>
são substituídos pelo ID do aplicativo (cliente) e pelo ID do diretório (locatário) que você salvou ao criar o registro do seu aplicativo: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'
Se for bem-sucedido, a resposta conterá um código de autorização.
-
Navegue até
https://login.microsoftonline.com/common/oauth2/deviceauth
no seu navegador e envie o código de autorização. O registro do aplicativo agora está verificado e você pode obter tokens de acesso livremente.
Obter tokens de acesso para autenticação ropc
Após concluir as etapas anteriores, os tokens podem ser gerados para autenticação ROPC usando uma solicitação 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>
e<tenant_id>
são substituídos pelo ID do aplicativo (cliente) e pelo ID do diretório (locatário) que você salvou ao criar o registro do seu aplicativo.<client_secret>
é substituído pelo segredo do cliente que você salvou ao criar o registro do seu aplicativo.<account_username>
e<account_password>
são substituídas pelas suas credenciais de login do Azure para autenticação ROPC.
Nota
O grant_type
parâmetro deve ser sempre password
para autenticação ROPC.
Se bem-sucedido, a resposta conterá um access_token
para autenticação ROPC.