Ir para o conteúdo

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:

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

    email pré-requisito 365 1

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

  3. Clique em Novo registro:

    email pré-requisito 365 2

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

    email pré-requisito 365 3

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

    email pré-requisito 365 4

    Importante

    Mantenha o ID do aplicativo (cliente) e o ID do diretório (locatário) do registro do aplicativo 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, depois defina, clique em Adicionar:

    email pré-requisito 365 5

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

    email pré-requisito 365 6

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:

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

email pré-requisito 365 7

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:

  1. Na página Permissões da 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:

    email 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 é exibida.

Permissões do aplicativo gráfico da Microsoft

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

  1. Na página Permissões da 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:

    email 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 é exibida.

Permissões delegadas do Microsoft Graph

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

  1. Na página Permissões da 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:

    email pré-requisito 365 9

  3. Clique em Permissões delegadas.

  4. 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
  5. 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:

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

  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. Execute Connect-ExchangeOnline e insira suas informações de login.

  5. 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
    
  6. 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:

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