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 host proxy.tunnel interno.
    • NÃO tente definir o AEM_PROXY_HOST via Cloud Manager.
  • smtp.port está definido como a porta portForward.portOrig que mapeia para o host e a porta do serviço de email de destino. Este exemplo usa o mapeamento: AEM_PROXY_HOST:30465smtp.sendgrid.com:465.

    • O smpt.port está definido como a porta portForward.portOrig, e NÃO a porta real do servidor SMTP. O mapeamento entre a porta smtp.port e a porta portForward.portOrig é estabelecido pela regra portForwards do Cloud Manager (conforme demonstrado abaixo).

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:

  • Configuração de ambiente do Cloud Manager

  • 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"
    
recommendation-more-help
4859a77c-7971-4ac9-8f5c-4260823c6f69