Você sabia que é possível usar o Office 365 para enviar e-mails com o PowerShell? Neste artigo, você aprenderá como enviar e-mails com o Office 365 Direct Send e o cmdlet Send-MailMessage
do PowerShell.
Se você deseja obter uma explicação detalhada sobre como enviar e-mails com o PowerShell, confira este tutorial completo sobre o Send-MailMessage.
Office 365 Direct Send vs. SMTP Client Submission
Antes de nos aprofundarmos no PowerShell, saiba que não há apenas uma maneira de enviar e-mails pelo Office 365 usando o PowerShell. O Office 365 possui duas formas suportadas de enviar e-mails. Essas opções são Direct Send e SMTP Client Submission ou SMTP Authenticated Submission.
SMTP Authenticated Submission
O SMTP Authenticated Submission é o mais fácil de configurar. Você escolheria essa opção se planeja enviar e-mails de um dispositivo ou aplicativo para destinatários dentro e fora da sua organização. Não há nenhuma ação adicional a ser feita no Office 365 para permitir isso.
Essa opção permite que você use qualquer endereço de remetente. Mas o endereço deve ser de um dos seus domínios verificados e aceitos.
Para usar o SMTP Authenticated Submission, você deve:
- Ter uma caixa de correio de usuário do Office 365 (licenciada). Esse endereço de e-mail aparecerá como o remetente da mensagem.
- O PowerShell (ou outro cliente) deve ser capaz de resolver e alcançar smtp.office365.com.
- A porta TCP 587 ou 25 deve estar aberta para o Office 365 a partir do cliente.
Direct Send
Aumentando um pouco a complexidade está a opção Envio Direto. Assim como a opção Envio Autenticado por SMTP, o Envio Direto permite que você use qualquer endereço de remetente. Além disso, o endereço de deve ser de um dos seus domínios verificados e aceitos.
A grande diferença entre o Envio Direto e o Envio Autenticado por SMTP é que nenhum destinatário externo é permitido. Se você precisa enviar para destinatários de e-mail fora da sua organização, o Envio Direto não funcionará para você.
O Envio Direto possui algumas de suas próprias exigências/recomendações:
- Esse endereço de remetente não precisa ser uma caixa de correio válida, mas é necessário se você planeja receber notificações de entrega não realizada (NDRs) ou respostas usando esse endereço.
- A porta TCP 25 está aberta do seu cliente para o Office 365.
- O dispositivo deve ser capaz de resolver e alcançar o URL do seu ponto de extremidade MX (por exemplo, seu-domínio-com.mail.protection.outlook.com).
- A static public IP address. This is to update your SPF record and avoid your messages getting flagged as spam (optional but recommended)
Se você não sabe como encontrar o URL do seu ponto de extremidade MX, aqui está um tutorial rápido:
- Acesse o Portal de Administração do Office 365.
- Clique em Configuração (1), selecione Domínios (2), clique no Nome do domínio (3), copie o Endereço ou valor de “Aponta para” MX (4).

Envio Autenticado por SMTP
O primeiro método para enviar e-mail é via Envio de Cliente SMTP ou Envio Autenticado por SMTP. Usando o cmdlet Send-MailMessage
do PowerShell, podemos fornecer todos os parâmetros necessários para enviar e-mail através do Office 365.
Abaixo está um trecho que você pode usar para enviar e-mails através deste método.
Primeiro, você precisará definir um objeto PowerShell PScredential e fornecer todos os parâmetros necessários para o Send-MailMessage
.
Ao executar o código acima, você deverá receber um e-mail recebido pelo destinatário interno (seudominio.com) e pelo domínio externo (naoseudominio.com).


Envio direto (TLS necessário)
Semelhante ao Envio autenticado por SMTP, você pode usar quase os mesmos parâmetros para o Send-MailMessage
. No entanto, desta vez, os destinatários Para
serão apenas internos.
Também observe que não é necessário usar PSCredential.

Resumo
Você pode ver que o Office 365 oferece duas opções diferentes para o envio de e-mails. Neste artigo, usamos o PowerShell como exemplo para demonstrar ambos. Mas você não precisa usar o PowerShell. Contanto que seu aplicativo ou linguagem de programação suporte autenticação TLS, você pode usar qualquer método que desejar.
Leitura Adicional
Source:
https://adamtheautomator.com/office-365-direct-send/