Découvrez comment configurer et utiliser une adresse IP de sortie dédiée, qui permet aux connexions sortantes d’AEM d’être issues d’une adresse IP dédiée.
Une adresse IP de sortie dédiée permet aux requêtes d’AEM as a Cloud Service d’utiliser une adresse IP dédiée, ce qui permet aux services externes de filtrer les requêtes entrantes par cette adresse IP. Comme les ports de sortie flexibles, une adresse IP de sortie dédiée vous permet de passer sur des ports non standards.
Un programme Cloud Manager ne peut avoir qu’un seul type d’infrastructure réseau. Assurez-vous que l’adresse IP de sortie dédiée est le type le plus approprié d’infrastructure réseau pour votre instance AEM as a Cloud Service avant d’exécuter les commandes suivantes.
Les éléments suivants sont requis lors de la configuration d’une adresse IP de sortie dédiée :
Pour plus d’informations, regardez la présentation suivante pour découvrir comment installer, configurer et obtenir les informations d’identification de l’API Cloud Manager, et comment les utiliser pour effectuer un appel d’API Cloud Manager.
Ce tutoriel utilise curl
pour créer les configurations de l’API Cloud Manager. Les commandes curl
fournies reposent sur la syntaxe Linux/macOS. Si vous utilisez l’invite de commande Windows, remplacez le caractère de saut de ligne \
par ^
.
Commencez par activer et configurer l’adresse IP de sortie dédiée sur AEM as a Cloud Service.
Tout d’abord, déterminez la région dans laquelle la mise en réseau avancée est nécessaire à l’aide de l’opération listRegion de l’API Cloud Manager. Le region name
est nécessaire pour effectuer les appels d’API Cloud Manager ultérieurs. En règle générale, la région dans laquelle l’environnement de production réside est utilisée.
Recherchez la région de votre environnement AEM as a Cloud Service AEM dans Cloud Manager sous les détails de l’environnement. Le nom de région affiché dans Cloud Manager peut être mappé au code de région utilisé dans l’API Cloud Manager.
Requête HTTP listRegion
$ 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'
Activez l’adresse IP de sortie dédiée pour un programme Cloud Manager à l’aide de l’opération createNetworkInfrastructure de l’API Cloud Manager. Utilisez le code region
approprié obtenu de l’opération listRegions
de l’API Cloud Manager.
Requête HTTP createNetworkInfrastructure
$ 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" }'
Patientez 15 minutes pendant que le programme Cloud Manager approvisionne l’infrastructure réseau.
Vérifiez que le programme a terminé la configuration de l’adresse IP de sortie dédiée à l’aide de l’opération getNetworkInfrastructure de l’API Cloud Manager et de l’id
renvoyé par la requête HTTP createNetworkInfrastructure dans l’étape précédente.
Requête HTTP getNetworkInfrastructure
$ 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'
Vérifiez que la réponse HTTP contient un statut prêt. Si elle n’est pas encore prête, revérifiez le statut quelques minutes plus tard.
Définissez la configuration de l’adresse IP de sortie dédiée sur chaque environnement AEM as a Cloud Service à l’aide de l’opération enableEnvironmentAdvancedNetworkingConfiguration de l’API Cloud Manager.
Requête HTTP enableEnvironmentAdvancedNetworkingConfiguration
$ 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
Définissez les paramètres JSON dans un dedicated-egress-ip-address.json
et fourni à curl via ... -d @./dedicated-egress-ip-address.json
.
Téléchargez l’exemple de dedicated-egress-ip-address.json. Ce fichier n’est qu’un exemple. Configurez votre fichier selon les besoins en fonction des champs facultatifs/obligatoires documentés dans enableEnvironmentAdvancedNetworkingConfiguration.
{
"nonProxyHosts": [
"example.net",
"*.example.org",
],
"portForwards": [
{
"name": "mysql.example.com",
"portDest": 3306,
"portOrig": 30001
},
{
"name": "smtp.sendgrid.net",
"portDest": 465,
"portOrig": 30002
}
]
}
La signature HTTP de la configuration de l’adresse IP de sortie dédiée diffère du port de sortie flexible uniquement parce qu’il prend également en charge la configuration facultative nonProxyHosts
.
nonProxyHosts
déclare un ensemble d’hôtes pour lesquels le port 80 ou 443 doit être acheminé par les plages d’adresses IP partagées par défaut plutôt que par l’adresse IP de sortie dédiée. nonProxyHosts
peut s’avérer utile, car le trafic sortant par les adresses IP partagées peut être optimisé automatiquement par Adobe.
Pour chaque mappage portForwards
, la mise en réseau avancée définit la règle de transfert suivante :
Hôte du proxy | Port du proxy | Hôte externe | Port externe | |
---|---|---|---|---|
AEM_PROXY_HOST |
portForwards.portOrig |
→ | portForwards.name |
portForwards.portDest |
Pour chaque environnement, validez les règles de sortie en vigueur à l’aide de l’opération getEnvironmentAdvancedNetworkingConfiguration de l’API Cloud Manager.
Requête HTTP getEnvironmentAdvancedNetworkingConfiguration
$ 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'
Les configurations d’adresses IP de sorties dédiées peuvent être mises à jour à l’aide de l’opération enableEnvironmentAdvancedNetworkingConfiguration de l’API Cloud Manager. N’oubliez pas que enableEnvironmentAdvancedNetworkingConfiguration
est une opération PUT
, et que toutes les règles doivent par conséquent être fournies à chaque appel de cette opération.
Obtenez l’adresse IP de sortie dédiée en utilisant un résolveur DNS (tel que DNSChecker.org) sur l’hôte : p{programId}.external.adobeaemcloud.com
, ou en exécutant dig
à partir de la ligne de commande.
$ dig +short p{programId}.external.adobeaemcloud.com
Le nom d’hôte ne peut pas être pinged
, car il s’agit d’une sortie et non d’une entrée.
Notez que l’adresse IP de sortie dédiée est partagé par tous les environnements AEM as a Cloud Service du programme.
Vous pouvez désormais utiliser l’adresse IP de sortie dédiée dans votre code personnalisé et dans votre configuration AEM. Souvent, lors de l’utilisation d’une adresse IP de sortie dédiée, les services externes auxquels AEM as a Cloud Service se connecte sont configurés pour autoriser uniquement le trafic à partir de cette adresse IP dédiée.
Lorsque l’adresse IP de sortie dédiée est activée, le code et la configuration AEM peuvent utiliser l’adresse IP de sortie dédiée pour effectuer des appels vers des services externes. Il existe deux types d’appels externes qu’AEM traite différemment :
Les requêtes HTTP/HTTPS provenant d’AEM sur les ports standard (80/443) sont autorisées par défaut, mais elles n’utilisent pas l’adresse IP de sortie dédiée si elles ne sont pas correctement configurées comme décrit ci-dessous.
Consultez la documentation sur les adresses IP de sorties dédiées d’AEM as a Cloud Service pour l’ensemble complet des règles de routage.
Lors de la création de connexions HTTP/HTTPS à partir d’AEM et de l’utilisation d’adresses IP de sortie dédiées, les connexions HTTP/HTTPS sont automatiquement traitées par proxy hors d’AEM à l’aide de l’adresse IP de sortie dédiée. La prise en charge des connexions HTTP/HTTPS ne nécessite pas de code ou de configuration supplémentaire.
![]() Exemple de code Java™ permettant d’établir une connexion HTTP/HTTPS depuis AEM as a Cloud Service vers un service externe à l’aide du protocole HTTP/HTTPS. |
Lors de la création de connexions non HTTP/HTTPS (par exemple, SQL, SMTP, etc.) depuis AEM, la connexion doit être établie par un nom d’hôte spécial fourni par AEM.
Nom de variable | Utilisez | Code Java™ | Configuration OSGi |
---|---|---|---|
AEM_PROXY_HOST |
Hôte proxy pour les connexions non HTTP/HTTPS | System.getenv("AEM_PROXY_HOST") |
$[env:AEM_PROXY_HOST] |
Les connexions à des services externes sont ensuite appelées par l’intermédiaire de AEM_PROXY_HOST
et du port mappé (portForwards.portOrig
), qu’AEM achemine ensuite vers le nom d’hôte externe mappé (portForwards.name
) et le port (portForwards.portDest
).
Hôte du proxy | Port du proxy | Hôte externe | Port externe | |
---|---|---|---|---|
AEM_PROXY_HOST |
portForwards.portOrig |
→ | portForwards.name |
portForwards.portDest |