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:
-
API de Cloud Manager con permisos de propietario de Cloud Manager Business
-
Acceso a credenciales de autenticación de la API de Cloud Manager
- ID de organización (también conocido como ID de organización de IMS)
- ID del cliente (también conocido como clave API)
- Token de acceso (también conocido como token al portador)
-
ID del programa Cloud Manager
-
Los ID de entorno 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.
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.
-
Inicie sesión en Adobe Experience Manager Cloud Manager como propietario Empresa de Cloud Manager.
-
Vaya al programa deseado.
-
En el menú de la izquierda, vaya a Servicios > Infraestructura de red.
-
Seleccione el botón Agregar infraestructura de red.
-
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.
-
Seleccione Guardar para confirmar la adición de la dirección IP de salida dedicada.
-
Espere a que se cree la infraestructura de red y se marque como Listo. Este proceso puede tardar hasta 1 hora.
Con la dirección IP de salida dedicada creada, ahora puede configurarla mediante las API de Cloud Manager como se describe a continuación.
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.
-
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'
-
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 ManagerlistRegions
.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.
-
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 encreateNetworkInfrastructure
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
-
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 opcional
nonProxyHosts
.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
-
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'
-
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 dePUT
, por lo que todas las reglas deben proporcionarse con cada invocación de esta operación. -
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 ejecutandodig
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.
-
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:
- 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.
- 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.
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
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.
AEM_PROXY_HOST
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
).
AEM_PROXY_HOST
portForwards.portOrig
portForwards.name
portForwards.portDest