Email Autenticação OAuth2: mudanças entre as edições
Criou página com 'Passo a passo de como fazer a configuração para provedores de e-mail que utilizam a autenticação OAuth2. '''Para testar pode-se usar a própria conta com o domínio datap...' |
Sem resumo de edição |
||
| Linha 37: | Linha 37: | ||
[[Arquivo:E-mail OAuth2 Confirmação Consentimento Usuário.png|centro|E-mail OAuth2 Confirmação Consentimento Usuário]]<br> | [[Arquivo:E-mail OAuth2 Confirmação Consentimento Usuário.png|centro|E-mail OAuth2 Confirmação Consentimento Usuário]]<br> | ||
== 4° Passo - Realizar a liberação dos usuários para envio do e-mail == | |||
Abra o '''PowerShell''' no modo administrador. Esse processo deve ser realizado pelo administrador do domínio: | |||
1° - '''Install-Module ExchangeOnlineManagement -Force'''<br> | |||
- O comando instala o módulo oficial do PowerShell necessário para administrar o Exchange Online. O parâmetro -Force força a instalação mesmo que o módulo já exista ou esteja desatualizado. | |||
2° - '''Import-Module ExchangeOnlineManagement'''<br> | |||
- O comando carrega esse módulo na sessão atual do PowerShell, tornando os cmdlets do Exchange disponíveis para uso. | |||
3° - '''Connect-ExchangeOnline'''<br> | |||
- O comando inicia a conexão com o ambiente Exchange Online da Microsoft. Ao executá-lo, você será solicitado a informar suas credenciais administrativas. | |||
4° A - '''Set-TransportConfig -SmtpClientAuthenticationDisabled $false''' (Ativação global)<br> | |||
- O comando habilita globalmente o suporte à autenticação SMTP no seu tenant Microsoft 365. Isso permite que os usuários usem login (senha ou OAuth2) para enviar e-mails via SMTP, por exemplo, usando smtp.office365.com. | |||
OU | |||
4° B - '''Set-CASMailbox -Identity "usuario@email.com.br" -SmtpClientAuthenticationDisabled $false''' (Ativação individual)<br> | |||
- O comando ativa explicitamente a autenticação SMTP para esse usuário específico. Isso é útil caso você queira ativar SMTP apenas para alguns usuários, mesmo que a configuração global esteja desativada. | |||
5° - '''Get-ManagementRoleAssignment -Role "Role Management"''' | |||
- O comando verifica se sua conta tem atribuição para o papel “Role Management”, necessário para criar service principals e modificar permissões avançadas. | |||
6° - '''New-ServicePrincipal -AppId <client_id> -ObjectId <object_id>'''<br> | |||
- O comando registra um service principal (aplicativo Azure AD) no Exchange Online, vinculando seu App registrado no Entra ID (Azure AD) ao Exchange. Isso é essencial para que o app possa acessar caixas de correio via OAuth2 (SMTP, IMAP, etc.). | |||
7° - '''Get-ServicePrincipal'''<br> | |||
- O comando lista todos os service principals já registrados no Exchange Online, permitindo verificar se o seu foi criado corretamente. | |||
8° - '''Add-MailboxPermission -Identity "usuario@email.com.br" -User <object_id> -AccessRights FullAccess''' | |||
- O comando concede ao seu app (identificado pelo ObjectId do service principal) acesso completo à caixa de correio do usuário especificado. Isso permite que o app leia ou envie mensagens. | |||
9° - '''Add-RecipientPermission -Identity "usuario@email.com.br" -Trustee <object_id> -AccessRights SendAs''' | |||
O comando autoriza o app a enviar e-mails como se fosse o próprio usuário (SendAs). Esse passo é obrigatório para que o envio via SMTP OAuth funcione corretamente com o endereço do usuário como remetente. | |||
Edição das 15h46min de 8 de agosto de 2025
Passo a passo de como fazer a configuração para provedores de e-mail que utilizam a autenticação OAuth2.
Para testar pode-se usar a própria conta com o domínio dataplussistemas.com.br
1° Passo - Criar conta Outlook para acesso ao Azure
2° Passo - Acessar portal de E-mails
Acesse: Gerenciador de E-mail
Nessa etapa é preciso realizar a marcação da Autenticação SMTP para os usuários que irão realizar o envio de e-mails.


3° Passo - Criar aplicativo
Acesse: Registro de Aplicativo

As credenciais apontadas na imagem serão informadas nas configurações gerais do ERP:

É preciso realizar a criação do segredo que é o Client-Secret que será informado no ERP:


Para que tenha o funcionamento adequado é preciso selecionar algumas permissões para a API (Mail.Send e SMTP.SendAsApp)


Após as permissões terem sido adicionadas, é preciso realizar o consentimento de administrador para elas:


4° Passo - Realizar a liberação dos usuários para envio do e-mail
Abra o PowerShell no modo administrador. Esse processo deve ser realizado pelo administrador do domínio:
1° - Install-Module ExchangeOnlineManagement -Force
- O comando instala o módulo oficial do PowerShell necessário para administrar o Exchange Online. O parâmetro -Force força a instalação mesmo que o módulo já exista ou esteja desatualizado.
2° - Import-Module ExchangeOnlineManagement
- O comando carrega esse módulo na sessão atual do PowerShell, tornando os cmdlets do Exchange disponíveis para uso.
3° - Connect-ExchangeOnline
- O comando inicia a conexão com o ambiente Exchange Online da Microsoft. Ao executá-lo, você será solicitado a informar suas credenciais administrativas.
4° A - Set-TransportConfig -SmtpClientAuthenticationDisabled $false (Ativação global)
- O comando habilita globalmente o suporte à autenticação SMTP no seu tenant Microsoft 365. Isso permite que os usuários usem login (senha ou OAuth2) para enviar e-mails via SMTP, por exemplo, usando smtp.office365.com.
OU
4° B - Set-CASMailbox -Identity "usuario@email.com.br" -SmtpClientAuthenticationDisabled $false (Ativação individual)
- O comando ativa explicitamente a autenticação SMTP para esse usuário específico. Isso é útil caso você queira ativar SMTP apenas para alguns usuários, mesmo que a configuração global esteja desativada.
5° - Get-ManagementRoleAssignment -Role "Role Management"
- O comando verifica se sua conta tem atribuição para o papel “Role Management”, necessário para criar service principals e modificar permissões avançadas.
6° - New-ServicePrincipal -AppId <client_id> -ObjectId <object_id>
- O comando registra um service principal (aplicativo Azure AD) no Exchange Online, vinculando seu App registrado no Entra ID (Azure AD) ao Exchange. Isso é essencial para que o app possa acessar caixas de correio via OAuth2 (SMTP, IMAP, etc.).
7° - Get-ServicePrincipal
- O comando lista todos os service principals já registrados no Exchange Online, permitindo verificar se o seu foi criado corretamente.
8° - Add-MailboxPermission -Identity "usuario@email.com.br" -User <object_id> -AccessRights FullAccess
- O comando concede ao seu app (identificado pelo ObjectId do service principal) acesso completo à caixa de correio do usuário especificado. Isso permite que o app leia ou envie mensagens.
9° - Add-RecipientPermission -Identity "usuario@email.com.br" -Trustee <object_id> -AccessRights SendAs O comando autoriza o app a enviar e-mails como se fosse o próprio usuário (SendAs). Esse passo é obrigatório para que o envio via SMTP OAuth funcione corretamente com o endereço do usuário como remetente.