Ir para o conteúdo

Pré-requisitos E-mail para uma Conexão Microsoft 365 OAuth 2.0

Introdução

Estes são os pré-requisitos para usar o Conector E-mail com uma conexão Microsoft 365 OAuth 2.0 usando Resource Owner Password Credential (ROPC) autenticação:

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. Exchange Administrator é necessário para baixar o módulo EXO2 PowerShell necessário em Conectar o registro do aplicativo ao Exchange 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 semelhante para enviar solicitações POST.

Crie um Registro de Aplicativo

Siga estas etapas para criar um registro de aplicativo com a plataforma de identidade da Microsoft:

  1. No portal do Azure, procure e clique em Microsoft Entra ID (anteriormente conhecido como Azure Active Directory ou Azure AD):

    e-mail pré-requisito 365 1

  2. Na barra lateral esquerda, em Gerenciar, clique em Registros de aplicativos.

  3. Clique em Novo cadastro:

    e-mail pré-requisito 365 2

  4. Insira um Nome para seu aplicativo. Este nome de exibição ficará visível para os usuários:

    e-mail pré-requisito 365 3

  5. Clique em Registrar para concluir o registro do aplicativo. Você será direcionado para a página Visão geral do aplicativo:

    e-mail pré-requisito 365 4

    Importante

    Guarde o ID do aplicativo (cliente) e o ID do diretório (locatário) para usar como client_id e tenant_id em Verificar o registro do aplicativo e Obter tokens de acesso para autenticação ROPC.

  6. Clique em Adicionar um certificado ou segredo.

  7. 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 e, em seguida, defina-a e clique em Adicionar:

    e-mail pré-requisito 365 5

  8. O segredo do cliente agora está visível na aba Segredos do cliente. Retenha o Valor do segredo do cliente para usar como client_secret em Obter tokens de acesso para autenticação ROPC.

    e-mail pré-requisito 365 6

Adicione as Permissões Necessárias ao Registro do Aplicativo

Para usar o Conector E-mail com uma conexão Microsoft 365 OAuth 2.0, o registro do seu aplicativo deverá ter estas permissões:

No portal do Azure, navegue até o registro do seu aplicativo e clique em Permissões de API na barra lateral esquerda:

pré-requisito e-mail 365 7

Importante

Dependendo das configurações de segurança da sua organização do Azure, algumas permissões exigirão consentimento do administrador para permitir.

Permissões de Aplicativos do Office 365 Exchange Online

Para adicionar permissões de aplicativo do Office 365 Exchange Online, siga estas etapas:

  1. Na página Permissões de API, clique em Adicionar uma permissão.

  2. No painel Solicitar permissões de API, clique na aba APIs que minha organização usa, pesquise e clique em Office 365 Exchange Online:

    e-mail pré-requisito 365 8

  3. Clique em Permissões do aplicativo.

  4. Para acesso POP, habilite a permissão POP.AccessAsApp. Para acesso IMAP, habilite a permissão IMAP.AccessAsApp.

  5. Clique em Adicionar permissões. A página Permissões configuradas do registro do aplicativo atualizado é mostrada.

Permissões do Aplicativo Microsoft Graph

Para adicionar permissões de aplicativo do Microsoft Graph, siga estas etapas:

  1. Na página Permissões de API, clique em Adicionar uma permissão.

  2. No painel Solicitar permissões de API, clique na aba APIs que minha organização usa, pesquise e clique em Microsoft Graph:

    e-mail pré-requisito 365 9

  3. Clique em Permissões do aplicativo.

  4. Habilite as permissões Mail.Send e User.Read.All.

  5. Clique em Adicionar permissões. A página Permissões configuradas do registro do aplicativo atualizado é mostrada.

Permissões Delegadas do Microsoft Graph

Para adicionar permissões delegadas do Microsoft Graph, siga estas etapas:

  1. Na página Permissões de API, clique em Adicionar uma permissão.

  2. No painel Solicitar permissões de API, clique na aba APIs que minha organização usa, pesquise e clique em Microsoft Graph:

    e-mail pré-requisito 365 9

  3. Clique em Permissões delegadas.

  4. Ative as permissões offline_access, IMAP.AccessAsUser.All e SMTP.Send. User.Read deve permanecer ativado.

  5. Clique em Adicionar permissões. A página Permissões configuradas do registro do aplicativo atualizado é mostrada. O registro do seu aplicativo agora tem as permissões necessárias.

Conecte o Registro do Aplicativo ao Exchange Online

Para conectar o registro do aplicativo ao Exchange Online, siga estas etapas:

  1. Baixe e instale o módulo EXO2 PowerShell acessando o Centro de administração do Classic Exchange. Clique em Híbrido e 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.

  2. 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
    
  3. Corra Connect-AzureAD e insira suas informações de login.

  4. Corra Connect-ExchangeOnline e insira suas informações de login.

  5. Obtenha as informações da entidade de serviço do aplicativo registrado e armazene-as em uma variável executando:

    $MyApp = Get-AzureADServicePrincipal -SearchString <Registered application name>
    $MyApp | fl
    
  6. Use as informações armazenadas da entidade de serviço 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:

  1. 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.

  2. 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 foi verificado e você pode obter tokens de acesso gratuitamente.

Obtenha 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ídos 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 for bem-sucedido, a resposta conterá um access_token para autenticação ROPC.