Pré-requisitos do OAuth 2.0 do Microsoft 365 para o conector de Email no Jitterbit Integration Studio
Introdução
Esta página documenta os pré-requisitos para usar o conector de Email com uma conexão OAuth 2.0 do Microsoft 365 usando autenticação de Credenciais de Senha do Proprietário do Recurso (ROPC).
Uma licença Microsoft 365 Business Standard é necessária ao autenticar com o OAuth 2.0 do Microsoft 365.
Todas as tarefas pré-requisitas exigirão que você faça login no portal do Azure com uma conta do Azure com permissões de administrador de Administrador do Exchange habilitadas. Administrador do Exchange é necessário para baixar o módulo powershell Exo2 necessário para conectar o registro do aplicativo ao Exchange Online. O nome de usuário e a senha dessa 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 semelhante para enviar solicitaçõ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):
-
No painel esquerdo, sob Gerenciar, clique em Registros de aplicativos.
-
Clique em Novo registro:
-
Insira um Nome para seu aplicativo. Este nome de exibição será visível para os usuários:
-
Clique em Registrar para concluir o registro do aplicativo. Você será direcionado para a página Visão geral do aplicativo:
Importante
Mantenha o ID do aplicativo (cliente) e o ID do diretório (inquilino) 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, em seguida, 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.
Adicionar permissões necessárias ao registro do aplicativo
Para usar o Conector de Email com uma conexão OAuth 2.0 do Microsoft 365, seu registro de aplicativo deve ter estas permissões:
- Permissões de aplicativo do Office 365 Exchange Online
- Permissões de aplicativo do Microsoft Graph
- 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 no Azure, algumas permissões exigirão consentimento do administrador para serem permitidas.
Permissões de aplicativo do Office 365 Exchange Online
Para adicionar permissões de aplicativo do Office 365 Exchange Online, siga estas etapas:
-
Na página de Permissões da API, clique em Adicionar uma permissão.
-
No painel de Solicitar permissões da API, clique na guia APIs que minha organização usa, pesquise e clique em Office 365 Exchange Online:
-
Clique em Permissões de 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 de Permissões configuradas do registro do aplicativo atualizado é exibida.
Permissões de aplicativo do Microsoft Graph
Para adicionar permissões de aplicativo do Microsoft Graph, siga estas etapas:
-
Na página de Permissões da API, clique em Adicionar uma permissão.
-
No painel de Solicitar permissões da API, clique na guia APIs que minha organização usa, pesquise e clique em Microsoft Graph:
-
Clique em Permissões de aplicativo.
-
Habilite as permissões Mail.Send e User.Read.All.
-
Clique em Adicionar permissões. A página de 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 de Permissões da API, clique em Adicionar uma permissão.
-
No painel de Solicitar permissões da API, clique na guia 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 Email a ser utilizada:
Atividade Permissões necessárias Ler Email offline_access, IMAP.AccessAsUser.All e User.Read Enviar Email offline_access e SMTP.Send -
Clique em Adicionar permissões. A página Permissões configuradas da inscrição do aplicativo atualizada é exibida. Sua inscrição de aplicativo agora possui as permissões necessárias.
Conectar a inscrição do aplicativo ao Exchange Online
Para conectar a inscrição do aplicativo ao Exchange Online, siga estas etapas:
-
Baixe e instale o módulo PowerShell EXO2 acessando o Centro de administração do Exchange Clássico. Clique em Híbrido e depois em Configurar módulo PowerShell do Exchange.
Importante
Se você não conseguir baixar e instalar o módulo PowerShell EXO2, não poderá concluir a conexão com o 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
-
Execute
Connect-AzureAD
e insira suas informações de login. -
Execute
Connect-ExchangeOnline
e insira suas informações de login. -
Obtenha as informações do principal de serviço do aplicativo registrado e armazene-as em uma variável executando:
$MyApp = Get-AzureADServicePrincipal -SearchString <Nome do aplicativo registrado> $MyApp | fl
-
Use as informações do principal de serviço armazenadas para concluir a conexão:
New-ServicePrincipal -AppId $MyApp.AppId -ServiceId $MyApp.ObjectId -DisplayName "Principal de Serviço para APP IMAP" Add-MailboxPermission -Identity <Endereço de email do Administrador> -User $MyApp.ObjectId -AccessRights FullAccess
Verificar a inscrição do aplicativo
Para verificar a inscrição 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 ID do Diretório (tenant) que você salvou ao criar sua inscrição de 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'
Nota
Se você habilitou apenas as permissões offline_access e SMTP.Send permissões, defina o
scope
comohttps://outlook.office365.com/.default
.Se for bem-sucedido, a resposta conterá um código de autorização.
-
Navegue até
https://login.microsoftonline.com/common/oauth2/deviceauth
em 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'
Nota
Se você habilitou apenas as permissões offline_access e SMTP.Send permissões, defina o scope
como https://outlook.office365.com/.default
.
<client_id>
e<tenant_id>
são substituídos pelo ID do Aplicativo (cliente) e ID do Diretório (tenant) que você salvou ao criar seu registro de aplicativo.<client_secret>
é substituído pelo segredo do cliente que você salvou ao criar seu registro de aplicativo.<account_username>
e<account_password>
são substituídos pelas suas credenciais de login do Azure para autenticação ROPC.
Nota
O parâmetro grant_type
deve sempre ser password
para autenticação ROPC.
Se for bem-sucedido, a resposta conterá um access_token
para autenticação ROPC.