Endereço IP de saída exclusivo

Saiba como configurar e usar o endereço IP de saída dedicado, que permite que as conexões de saída do AEM se originem de um IP dedicado.

O que é o endereço IP de saída dedicado?

O endereço IP de saída dedicado permite que as solicitações do AEM as a Cloud Service usem um endereço IP dedicado, permitindo que os serviços externos filtrem as solicitações recebidas por esse endereço IP. Assim como as portas de saída flexíveis, o IP de saída dedicado permite que você saia em portas não padrão.

Um Programa Cloud Manager só pode ter um tipo de infraestrutura de rede único. Certifique-se de que o endereço IP de saída dedicado seja o tipo mais apropriado de infraestrutura de rede para o AEM as a Cloud Service antes de executar os comandos a seguir.

Pré-requisitos

Os seguintes itens são necessários ao configurar um endereço IP de saída dedicado usando APIs do Cloud Manager:

Para obter mais detalhes, assista à seguinte apresentação sobre como configurar, configurar e obter credenciais da API do Cloud Manager e como usá-las para fazer uma chamada de API do Cloud Manager.

Este tutorial usa curl para fazer as configurações da API do Cloud Manager. Os comandos curl fornecidos pressupõem uma sintaxe Linux/macOS. Se estiver usando o prompt de comando do Windows, substitua o caractere de quebra de linha \ por ^.

Habilitar endereço IP de saída dedicado no programa

Comece habilitando e configurando o endereço IP de saída dedicado no AEM as a Cloud Service.

Cloud Manager

O endereço IP de saída dedicado pode ser ativado usando o Cloud Manager. As etapas a seguir descrevem como ativar o endereço IP de saída dedicado no AEM as a Cloud Service usando o Cloud Manager.

  1. Faça logon no Adobe Experience Manager Cloud Manager como Proprietário da empresa do Cloud Manager.

  2. Navegue até o Programa desejado.

  3. No menu esquerdo, navegue até Serviços > Infraestrutura de Rede.

  4. Selecione o botão Adicionar infraestrutura de rede.

    Adicionar infraestrutura de rede

  5. Na caixa de diálogo Adicionar infraestrutura de rede, selecione a opção Endereço IP de saída dedicado e selecione a Região para criar o endereço IP de saída dedicado.

    Adicionar endereço IP de saída dedicado

  6. Selecione Salvar para confirmar a adição do endereço IP de saída dedicado.

    Confirmar criação de endereço IP de saída dedicado

  7. Aguarde a infraestrutura de rede ser criada e marcada como Pronta. Esse processo pode levar até 1 hora.

    Status de criação do endereço IP de saída dedicado

Com o endereço IP de saída dedicado criado, agora é possível configurá-lo usando as APIs do Cloud Manager, conforme descrito abaixo.

APIs do Cloud Manager

O endereço IP de saída dedicado pode ser ativado usando as APIs do Cloud Manager. As etapas a seguir descrevem como ativar o endereço IP de saída dedicado no AEM as a Cloud Service usando a API do Cloud Manager.

  1. Primeiro, determine a região na qual a Rede Avançada é necessária, usando a operação listRegions da API do Cloud Manager. O region name é necessário para fazer chamadas de API do Cloud Manager subsequentes. Normalmente, a região em que o ambiente de Produção reside é usada.

    Encontre a região do seu ambiente do AEM as a Cloud Service em Cloud Manager nos detalhes do ambiente. O nome da região exibido no Cloud Manager pode ser mapeado para o código de região usado na API do Cloud Manager.

    solicitação HTTP de listRegions

    code language-shell
    $ curl -X GET https://cloudmanager.adobe.io/api/program/{programId}/regions \
        -H 'x-gw-ims-org-id: <ORGANIZATION_ID>' \
        -H 'x-api-key: <CLIENT_ID>' \
        -H 'Authorization: Bearer <ACCESS_TOKEN>' \
        -H 'Content-Type: application/json'
    
  2. Habilite o endereço IP de saída dedicado para um Programa Cloud Manager usando a operação createNetworkInfrastructure da API do Cloud Manager. Use o código region apropriado obtido da operação listRegions da API do Cloud Manager.

    solicitação HTTP createNetworkInfrastructure

    code language-shell
    $ curl -X POST https://cloudmanager.adobe.io/api/program/{programId}/networkInfrastructures \
        -H 'x-gw-ims-org-id: <ORGANIZATION_ID>' \
        -H 'x-api-key: <CLIENT_ID>' \
        -H 'Authorization: Bearer <ACCESS_TOKEN>' \
        -H 'Content-Type: application/json' \
        -d '{ "kind": "dedicatedEgressIp", "region": "va7" }'
    

    Aguarde 15 minutos para que o programa Cloud Manager provisione a infraestrutura de rede.

  3. Verifique se o programa concluiu a configuração do endereço IP de saída dedicado usando a operação getNetworkInfrastructure da API do Cloud Manager, usando o id retornado da solicitação HTTP createNetworkInfrastructure na etapa anterior.

    solicitação HTTP getNetworkInfrastructure

    code language-shell
    $ curl -X GET https://cloudmanager.adobe.io/api/program/{programId}/networkInfrastructure/{networkInfrastructureId} \
        -H 'x-gw-ims-org-id: <ORGANIZATION_ID>' \
        -H 'x-api-key: <CLIENT_ID>' \
        -H 'Authorization: Bearer <ACCESS_TOKEN>' \
        -H 'Content-Type: application/json'
    

    Verifique se a resposta HTTP contém um status de ready. Se ainda não estiver pronto, verifique novamente o status a cada poucos minutos.

Com o endereço IP de saída dedicado criado, agora é possível configurá-lo usando as APIs do Cloud Manager, conforme descrito abaixo.

Configurar proxies dedicados de endereço IP de saída por ambiente

  1. Configure a configuração do endereço IP de saída dedicado em cada ambiente do AEM as a Cloud Service usando a operação enableEnvironmentAdvancedNetworkingConfiguration da API do Cloud Manager.

    Solicitação HTTP enableEnvironmentAdvancedNetworkingConfiguration

    code language-shell
    $ curl -X PUT https://cloudmanager.adobe.io/api/program/{programId}/environment/{environmentId}/advancedNetworking \
        -H 'x-gw-ims-org-id: <ORGANIZATION_ID>' \
        -H 'x-api-key: <CLIENT_ID>' \
        -H 'Authorization: Bearer <ACCESS_TOKEN>' \
        -H 'Content-Type: application/json' \
        -d @./dedicated-egress-ip-address.json
    

    Defina os parâmetros JSON em um dedicated-egress-ip-address.json e fornecido para curl via ... -d @./dedicated-egress-ip-address.json.

    Baixe o exemplo dedicated-egress-ip-address.json. Este arquivo é apenas um exemplo. Configure seu arquivo conforme necessário com base nos campos opcionais/obrigatórios documentados em enableEnvironmentAdvancedNetworkingConfiguration.

    code language-json
    {
        "nonProxyHosts": [
            "example.net",
            "*.example.org",
        ],
        "portForwards": [
            {
                "name": "mysql.example.com",
                "portDest": 3306,
                "portOrig": 30001
            },
            {
                "name": "smtp.sendgrid.net",
                "portDest": 465,
                "portOrig": 30002
            }
        ]
    }
    

    A assinatura HTTP da configuração de endereço IP de saída dedicado difere apenas da porta de saída flexível, pois ela também oferece suporte à configuração nonProxyHosts opcional.

    nonProxyHosts declara um conjunto de hosts para o qual a porta 80 ou 443 deve ser roteada através dos intervalos de endereços IP compartilhados padrão em vez do IP de saída dedicado. nonProxyHosts pode ser útil, pois a geração de tráfego por meio de IPs compartilhados é otimizada automaticamente pelo Adobe.

    Para cada mapeamento portForwards, a rede avançada define a seguinte regra de encaminhamento:

    table 0-row-5 1-row-5
    Host do proxy Porta do proxy Host externo Porta externa
    AEM_PROXY_HOST portForwards.portOrig portForwards.name portForwards.portDest
  2. Para cada ambiente, valide se as regras de saída estão em vigor usando a operação getEnvironmentAdvancedNetworkingConfiguration da API do Cloud Manager.

    Solicitação HTTP getEnvironmentAdvancedNetworkingConfiguration

    code language-shell
    $ curl -X GET https://cloudmanager.adobe.io/api/program/{programId}/environment/{environmentId}/advancedNetworking \
        -H 'x-gw-ims-org-id: <ORGANIZATION_ID>' \
        -H 'x-api-key: <CLIENT_ID>' \
        -H 'Authorization: <YOUR_TOKEN>' \
        -H 'Content-Type: application/json'
    
  3. Configurações de endereço IP de saída dedicado podem ser atualizadas usando a operação enableEnvironmentAdvancedNetworkingConfiguration da API do Cloud Manager. Lembre-se de que enableEnvironmentAdvancedNetworkingConfiguration é uma operação PUT, portanto todas as regras devem ser fornecidas com cada invocação desta operação.

  4. Obtenha o endereço IP de saída dedicado usando um Resolvedor de DNS (como DNSChecker.org) no host: p{programId}.external.adobeaemcloud.com ou executando dig na linha de comando.

    code language-shell
    $ dig +short p{programId}.external.adobeaemcloud.com
    

    O nome de host não pode ser pinged, pois é uma saída e não e entrada.

    Observe que o endereço IP de saída dedicado é compartilhado por todos os ambientes AEM as a Cloud Service no programa.

  5. Agora, você pode usar o endereço IP de saída dedicado no código e configuração personalizados do AEM. Geralmente, ao usar o endereço IP de saída dedicado, os serviços externos aos quais o AEM as a Cloud Service se conecta são configurados para permitir apenas o tráfego desse endereço IP dedicado.

Conexão com serviços externos por meio do endereço IP de saída dedicado

Com o endereço IP de saída dedicado ativado, o código e a configuração do AEM podem usar o IP de saída dedicado para fazer chamadas para serviços externos. Há duas opções de chamadas externas que o AEM trata de forma diferente:

  1. Chamadas HTTP/HTTPS para serviços externos
    • Inclui chamadas HTTP/HTTPS feitas para serviços executados em portas diferentes das portas padrão 80 ou 443.
  2. chamadas não HTTP/HTTPS para serviços externos
    • Inclui chamadas não HTTP, como conexões com servidores de email, bancos de dados SQL ou serviços que são executados em outros protocolos não HTTP/HTTPS.

As solicitações HTTP/HTTPS do AEM em portas padrão (80/443) são permitidas por padrão, mas não usam o endereço IP de saída dedicado se não estiverem configuradas adequadamente conforme descrito abaixo.

TIP
Consulte a documentação de endereço IP de saída dedicado da AEM as a Cloud Service para o conjunto completo de regras de roteamento.

HTTP/HTTPS

Ao criar conexões HTTP/HTTPS do AEM, ao usar o endereço IP de saída dedicado, as conexões HTTP/HTTPS são automaticamente enviadas por proxy do AEM usando o endereço IP de saída dedicado. Nenhum código ou configuração adicional é necessário para oferecer suporte a conexões HTTP/HTTPS.

Exemplos de código

HTTP/HTTPS

HTTP/HTTPS

Exemplo de código Java™ fazendo conexão HTTP/HTTPS do AEM as a Cloud Service com um serviço externo usando o protocolo HTTP/HTTPS.

Conexões não HTTP/HTTPS com serviços externos

Ao criar conexões não HTTP/HTTPS (por exemplo, SQL, SMTP e assim por diante) do AEM, a conexão deve ser feita por meio de um nome de host especial fornecido pelo AEM.

Nome da variável
Utilização
Código Java™
Configuração OSGi
AEM_PROXY_HOST
Host proxy para conexões não HTTP/HTTPS
System.getenv("AEM_PROXY_HOST")
$[env:AEM_PROXY_HOST]

As conexões com serviços externos são então chamadas por meio do AEM_PROXY_HOST e da porta mapeada (portForwards.portOrig), que o AEM encaminha para o nome de host externo mapeado (portForwards.name) e a porta (portForwards.portDest).

Host do proxy
Porta do proxy
Host externo
Porta externa
AEM_PROXY_HOST
portForwards.portOrig
portForwards.name
portForwards.portDest

Exemplos de código

Conexão SQL usando JDBC DataSourcePool

Conexão SQL usando JDBC DataSourcePool

Exemplo de código Java™ conectando-se a bancos de dados SQL externos configurando o pool de fontes de dados JDBC do AEM.

Conexão SQL usando APIs Java

Conexão SQL usando APIs Java™

Exemplo de código Java™ conectando-se a bancos de dados SQL externos usando APIs SQL do Java™.

VPN (Virtual Private Network)

Serviço de email

Exemplo de configuração OSGi usando AEM para se conectar a serviços de email externos.

recommendation-more-help
4859a77c-7971-4ac9-8f5c-4260823c6f69