Serviço de e-mail
Envie emails do AEM as a Cloud Service configurando o AEM DefaultMailService
para usar portas avançadas de saída de rede.
Como os serviços de email (a maioria) não são executados por HTTP/HTTPS, as conexões com os serviços de email do AEM as a Cloud Service devem ser enviadas por proxy.
-
smtp.host
está definido como a variável de ambiente OSGi$[env:AEM_PROXY_HOST;default=proxy.tunnel]
para que seja roteado pela saída.$[env:AEM_PROXY_HOST]
é uma variável reservada que o AEM as a Cloud Service mapeia para o hostproxy.tunnel
interno.- NÃO tente definir o
AEM_PROXY_HOST
via Cloud Manager.
-
smtp.port
está definido como a portaportForward.portOrig
que mapeia para o host e a porta do serviço de email de destino. Este exemplo usa o mapeamento:AEM_PROXY_HOST:30465
→smtp.sendgrid.com:465
.- O
smpt.port
está definido como a portaportForward.portOrig
, e NÃO a porta real do servidor SMTP. O mapeamento entre a portasmtp.port
e a portaportForward.portOrig
é estabelecido pela regraportForwards
do Cloud Manager (conforme demonstrado abaixo).
- O
Como os segredos não devem ser armazenados no código, o nome de usuário e a senha do serviço de email devem ser fornecidos com o uso de variáveis de configuração OSGi secretas, definidas usando a CLI AIO ou a API do Cloud Manager.
Normalmente, a saída de porta flexível é usada para atender à integração com um serviço de email, a menos que seja necessário allowlist
o IP de Adobe, caso em que o endereço IP de saída dedicado pode ser usado.
Além disso, consulte a documentação do AEM em enviando email.
Suporte avançado a rede
O código de exemplo a seguir é suportado pelas seguintes opções avançadas de rede.
Verifique se a configuração avançada de rede apropriada foi definida antes de seguir este tutorial.
Configuração OSGi
Este exemplo de configuração OSGi configura o Serviço OSGi de Email do AEM para usar um serviço de email externo, por meio da seguinte regra do Cloud Manager portForwards
da operação enableEnvironmentAdvancedNetworkingConfiguration.
...
"portForwards": [{
"name": "smtp.mymail.com",
"portDest": 465,
"portOrig": 30465
}]
...
ui.config/src/jcr_root/apps/wknd-examples/osgiconfig/config/com.day.cq.mailer.DefaultMailService.cfg.json
Configure o DefaultMailService do AEM conforme exigido pelo seu provedor de email (por exemplo, smtp.ssl
, etc.).
{
"smtp.host": "$[env:AEM_PROXY_HOST;default=proxy.tunnel]",
"smtp.port": "30465",
"smtp.user": "$[env:EMAIL_USERNAME;default=myApiKey]",
"smtp.password": "$[secret:EMAIL_PASSWORD]",
"from.address": "noreply@wknd.site",
"smtp.ssl": true,
"smtp.starttls": false,
"smtp.requiretls": false,
"debug.email": false,
"oauth.flow": false
}
As variáveis OSGi EMAIL_USERNAME
e EMAIL_PASSWORD
e o segredo podem ser definidos por ambiente, usando:
-
ou usando o comando
aio CLI
code language-shell $ aio cloudmanager:set-environment-variables --programId=<PROGRAM_ID> <ENVIRONMENT_ID> --secret EMAIL_USERNAME "myApiKey" --secret EMAIL_PASSWORD "password123"