Serviço de e-mail

Enviar 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] portanto, é roteado através da saída.

    • $[env:AEM_PROXY_HOST] é uma variável reservada que o AEM as a Cloud Service mapeia para o estado interno proxy.tunnel host.
    • NÃO tente definir o AEM_PROXY_HOST pelo Cloud Manager.
  • smtp.port está definido como portForward.portOrig porta 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.

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

Como os segredos não devem ser armazenados no código, é melhor fornecer o nome de usuário e a senha do serviço de email usando variáveis de configuração OSGi secretas, definido usando a CLI da AIO ou a API do Cloud Manager.

Normalmente, saída de porta flexível é usado para satisfazer a integração com um serviço de email, a menos que seja necessário allowlist o IP Adobe, nesse caso endereço ip de saída dedicado pode ser usado.

Além disso, consulte a documentação do AEM em envio de e-mail.

Suporte avançado a rede

O código de exemplo a seguir é suportado pelas seguintes opções avançadas de rede.

Assegure a apropriado a configuração avançada de rede 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 do seguinte Cloud Manager portForwards regra do enableEnvironmentAdvancedNetworkingConfiguration operação.

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

Configurar AEM DefaultMailService 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
}

A variável EMAIL_USERNAME e EMAIL_PASSWORD A variável OSGi e o segredo podem ser definidos por ambiente, usando:

  • Configuração do ambiente do Cloud Manager

  • ou usando o aio CLI comando

    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