Dirección IP de salida dedicada

Aprenda a configurar y utilizar la dirección IP de salida dedicada, que permite que las conexiones salientes desde AEM se originen desde una IP dedicada.

¿Qué es la dirección IP de salida dedicada?

La dirección IP de salida dedicada permite que las solicitudes de AEM as a Cloud Service utilicen una dirección IP dedicada, lo que permite que los servicios externos filtren las solicitudes entrantes por esta dirección IP. Al igual que puertos de salida flexibles, la IP de salida dedicada le permite salir en puertos no estándar.

Un programa Cloud Manager solo puede tener un tipo de infraestructura de red single. Asegúrese de que la dirección IP de salida dedicada sea el tipo de infraestructura🔗 de red más adecuado para su AEM como Cloud Service antes de ejecutar los siguientes comandos.

Requisitos previos

Se requiere lo siguiente al configurar la dirección IP de salida dedicada mediante las API de Cloud Manager:

Para obtener más información revise cómo configurar y obtener las credenciales de la API de Cloud Manager para utilizarlas en una llamada de la API de Cloud Manager.

Este tutorial utiliza curl para realizar las configuraciones de la API de Cloud Manager. Los comandos curl proporcionados suponen una sintaxis Linux/macOS. Si usa el símbolo del sistema de Windows, reemplace el carácter de salto de línea \ por ^.

Habilitar la dirección IP de salida dedicada en el programa

Inicio habilitando y configurando la dirección IP de salida dedicada en AEM como un Cloud Service.

Cloud Manager

La dirección IP de salida dedicada se puede habilitar mediante Cloud Manager. Los siguientes pasos describen cómo habilitar la dirección IP de salida dedicada en AEM como Cloud Service mediante Cloud Manager.

  1. Inicie sesión en Adobe Experience Manager Cloud Manager como propietario Empresa de Cloud Manager.

  2. Vaya al programa deseado.

  3. En el menú de la izquierda, vaya a Servicios > Infraestructura de red.

  4. Seleccione el botón Agregar infraestructura de red.

    Agregar infraestructura de red

  5. En el cuadro de diálogo Agregar infraestructura de red, seleccione la opción Dirección IP de salida dedicada y seleccione la Región para crear la dirección IP de salida dedicada.

    Agregar dirección IP de salida dedicada

  6. Seleccione Guardar para confirmar la adición de la dirección IP de salida dedicada.

    Confirmar la creación de la dirección IP de salida dedicada

  7. Espere a que se cree la infraestructura de red y se marque como Listo. Este proceso puede tardar hasta 1 hora.

    Estado de creación de dirección IP de salida dedicada

Con la dirección IP de salida dedicada creada, ahora puede configurarla mediante las API de Cloud Manager como se describe a continuación.

API de Cloud Manager

La dirección IP de salida dedicada se puede habilitar mediante las API de Cloud Manager. Los siguientes pasos describen cómo habilitar la dirección IP de salida dedicada en AEM como Cloud Service mediante la API de Cloud Manager.

  1. En primer lugar, determine la área geográfica en la que se necesita la red de Avanzadas mediante la operación listRegions🔗 de la API de Cloud Manager. Es necesario para realizar llamadas a la region name API de Cloud Manager subsiguientes. Normalmente, se utiliza el área geográfica en el que reside el entorno de producción.

    Busque la región de su entorno de AEM as a Cloud Service en Cloud Manager en los detalles del entorno. El nombre de región mostrado en Cloud Manager se puede asignar al código de región utilizado en la API de Cloud Manager.

    solicitud HTTP 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 la dirección IP de salida dedicada para un programa de Cloud Manager mediante la operación createNetworkInfrastructure de la API de Cloud Manager. Utilice el código region apropiado obtenido de la operación de la API de Cloud Manager listRegions.

    solicitud 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" }'
    

    Espere 15 minutos para que el programa Cloud Manager aprovisione la infraestructura de red.

  3. Compruebe que el programa haya finalizado la configuración de la dirección IP de salida dedicada mediante la operación getNetworkInfrastructure🔗 de la API de Cloud Manager, utilizando la id petición HTTP devuelta en createNetworkInfrastructure el paso anterior.

    petición 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'
    

    Compruebe que la respuesta HTTP contiene un estado de listo. Si aún no está listo, vuelva a comprobar el estado cada pocos minutos.

Con la dirección IP de salida dedicada creada, ahora puede configurarla mediante las API de Cloud Manager como se describe a continuación.

Configurar proxies de direcciones IP de salida dedicados por entorno

  1. Configure la configuración de la dirección IP de salida dedicada en cada AEM como entorno de Cloud Service mediante la operación enableEnvironmentAdvancedNetworkingConfiguration🔗 de la API de Cloud Manager.

    enableEnvironmentAdvancedNetworkingConfiguration petición HTTP

    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 los parámetros JSON en un dedicated-egress-ip-address.json y proporcione para curl mediante ... -d @./dedicated-egress-ip-address.json.

    Descargue el ejemplo dedicated-egress-ip-address.json. Este archivo es solo un ejemplo. Configure el archivo según sea necesario en función de los campos opcionales/obligatorios documentados en 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
            }
        ]
    }
    

    La firma HTTP de la configuración de la dirección IP de salida dedicada solo difiere de la puerto🔗 de salida flexible en que también admite la configuración opcionalnonProxyHosts.

    nonProxyHosts declara un conjunto de hosts para los que puerto 80 ó 443 deben enrutarse a través de los intervalos predeterminados de direcciones IP compartidas en lugar de la IP de salida dedicada. nonProxyHosts puede resultar útil, ya tráfico que el Adobe Systems optimiza automáticamente la salida a través de direcciones IP compartidas.

    Para cada portForwards asignación, la red avanzada define los siguientes regla de reenvío:

    table 0-row-5 1-row-5
    host de proxy puerto de proxy Host externo Puerto externo
    AEM_PROXY_HOST portForwards.portOrig portForwards.name portForwards.portDest
  2. Para cada entorno, valide que las reglas de salida estén vigentes mediante la operación getEnvironmentAdvancedNetworkingConfiguration🔗 de la API de Cloud Manager.

    petición 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. Las configuraciones de direcciones IP de salida dedicadas se pueden actualizar mediante la operación enableEnvironmentAdvancedNetworkingConfiguration🔗 de la API de Cloud Manager. Recuerde que enableEnvironmentAdvancedNetworkingConfiguration es una operación de PUT, por lo que todas las reglas deben proporcionarse con cada invocación de esta operación.

  4. Obtenga la dirección IP de salida dedicada mediante un solucionador de DNS (como DNSChecker.org) en el host: p{programId}.external.adobeaemcloud.com, o ejecutando dig desde la línea de comandos.

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

    El nombre de host no puede ser pinged, ya que es una salida y no y una entrada.

    Tenga en cuenta que todos los entornos de AEM as a Cloud Service del programa comparten la dirección IP de salida dedicada.

  5. Ahora puede utilizar la dirección IP de salida dedicada en la configuración y el código personalizados de AEM. A menudo, al utilizar la dirección IP de salida dedicada, los servicios externos a los que se conecta AEM as a Cloud Service están configurados para permitir solo el tráfico de esta dirección IP dedicada.

Conexión a servicios externos a través de una dirección IP de salida dedicada

Con la dirección IP de salida dedicada habilitada, AEM código y configuración pueden utilizar la IP de salida dedicada para realizar llamadas a servicios externos. Hay dos tipos de llamadas externas que AEM trata de manera diferente:

  1. Llamadas HTTP/HTTPS a servicios externos
    • Incluye llamadas HTTP/HTTPS realizadas a servicios que se ejecutan en puertos que no son los puertos estándar 80 o 443.
  2. llamadas no HTTP/HTTPS a servicios externos
    • Incluye cualquier llamada no HTTP, como conexiones con servidores de correo, bases de datos SQL o servicios que se ejecutan en otros protocolos que no sean HTTP/HTTPS.

Las solicitudes HTTP/HTTPS de AEM en puertos estándar (80/443) están permitidas de forma predeterminada, pero no utilizan la dirección IP de salida dedicada si no se configura correctamente como se describe a continuación.

TIP
Consulte la documentación de la dirección IP de salida dedicada de AEM as a Cloud Service para el conjunto completo de reglas de enrutamiento.

HTTP/HTTPS

Al crear conexiones HTTP/HTTPS a partir de AEM, cuando se utiliza una dirección IP de salida dedicada, las conexiones HTTP/HTTPS se envían automáticamente fuera de AEM utilizando la dirección IP de salida dedicada. No se requiere código ni configuración adicionales para admitir conexiones HTTP/HTTPS, aparte de configurar la red avanzada de direcciones IP de salida dedicadas.

Code ejemplos

HTTP/HTTPS

HTTP/HTTPS

Ejemplo de código Java™ que establece una conexión HTTP/HTTPS desde AEM as a Cloud Service a un servicio externo mediante el protocolo HTTP/HTTPS.

Conexiones no HTTP/HTTPS a servicios externos

Al crear conexiones no HTTP/HTTPS (por ejemplo, SQL, SMTP, etc.) a partir de AEM, la conexión debe realizarse mediante un nombre de host especial proporcionado por AEM.

Nombre Variable
Uso
Código Java™
Configuración de OSGi
AEM_PROXY_HOST
Host proxy para conexiones no HTTP/HTTPS
System.getenv("AEM_PROXY_HOST")
$[env:AEM_PROXY_HOST]

Las conexiones a servicios externos se llaman a través del AEM_PROXY_HOST y el puerto asignado (portForwards.portOrig), que AEM enruta al nombre de host externo asignado (portForwards.name) y puerto (portForwards.portDest).

host de proxy
puerto de proxy
host externos
puerto externos
AEM_PROXY_HOST
portForwards.portOrig
portForwards.name
portForwards.portDest

Ejemplos de código

Conexión SQL con JDBC DataSourcePool

Conexión SQL con el conjunto de datos JDBC

Ejemplo de código Java™ conectarse a bases de datos SQL externas configurando el grupo de fuentes de datos JDBC de AEM.

Conexión SQL con API de Java

Conexión SQL utilizando API Java™

Ejemplo de código Java™ conectarse a bases de datos SQL externas mediante las API SQL de Java™.

Red privada virtual (VPN)

Servicio de correo electrónico

Ejemplo de configuración de OSGi que utiliza AEM para conectarse a servicios de correo electrónico externos.

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