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 sortante 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 ports de sortie flexibles, une adresse IP sortante dédiée vous permet de passer sur des ports non standard.
Un programme Cloud Manager ne peut avoir qu’une single type d’infrastructure réseau. Assurez-vous que l’adresse IP sortante dédiée est la plus élevée type approprié d’infrastructure réseau pour votre 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, consultez la présentation suivante pour savoir comment configurer, configurer et obtenir les informations d’identification de l’API Cloud Manager, et comment les utiliser pour effectuer un appel de l’API Cloud Manager.
Ce tutoriel utilise curl
pour créer les configurations de l’API Cloud Manager. Le curl
supposent une syntaxe Linux/macOS. Si vous utilisez l’invite de commande Windows, remplacez la variable \
caractère de saut de ligne avec ^
.
Commencez par activer et configurer l’adresse IP sortante dédiée sur AEM as a Cloud Service.
Tout d’abord, déterminez la région dans laquelle le réseau avancé sera configuré, à l’aide de l’API Cloud Manager. listRegion opération. Le region name
est nécessaire pour effectuer les appels d’API Cloud Manager suivants. En règle générale, la région dans laquelle réside l’environnement de production est utilisée.
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'
Activation d’une adresse IP de sortie dédiée pour un programme Cloud Manager à l’aide de l’API Cloud Manager createNetworkInfrastructure opération. Utilisez les region
code obtenu à partir de l’API Cloud Manager listRegions
opération.
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érifier que l'environnement est terminé adresse IP de sortie dédiée configuration à l’aide de l’API Cloud Manager getNetworkInfrastructure , à l’aide de la fonction id
renvoyée par la requête HTTP createNetworkInfrastructure de 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 une status de ready. Si vous n’êtes pas encore prêt, vérifiez l’état toutes les quelques minutes.
Activez et configurez les adresse IP de sortie dédiée configuration sur chaque environnement as a Cloud Service AEM à l’aide de l’API Cloud Manager enableEnvironmentAdvancedNetworkingConfiguration opération.
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éfinition des paramètres JSON dans une dedicated-egress-ip-address.json
et fourni à curl via ... -d @./dedicated-egress-ip-address.json
.
Téléchargez l’exemple dedicated-egress-ip-address.json
{
"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 sortante dédiée diffère uniquement de port de sortie flexible en ce sens qu’il prend également en charge les options facultatives. nonProxyHosts
configuration.
nonProxyHosts
déclare un ensemble d’hôtes pour lequel 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 sortante dédiée. nonProxyHosts
peut s’avérer utile, car le trafic passant par les adresses IP partagées peut être optimisé automatiquement par Adobe.
Pour chaque 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’API Cloud Manager. getEnvironmentAdvancedNetworkingConfiguration opération.
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 sortantes dédiées peuvent être mises à jour à l’aide de l’API Cloud Manager. enableEnvironmentAdvancedNetworkingConfiguration opération. Mémoriser enableEnvironmentAdvancedNetworkingConfiguration
est un PUT
toutes les règles doivent donc être fournies avec chaque appel de cette opération.
Obtenez la variable adresse IP de sortie dédiée en utilisant un résolveur DNS (tel que DNSCchaker.org) sur l’hôte : p{programId}.external.adobeaemcloud.com
ou en exécutant dig
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 not et d’entrée.
Vous pouvez désormais utiliser l’adresse IP de sortie dédiée dans votre code et configuration d’AEM personnalisé. 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 AEM et la configuration 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 qui AEM traitent différemment :
Les requêtes HTTP/HTTPS provenant d’AEM sur les ports standard (80/443) sont autorisées par défaut et ne nécessitent aucune configuration ni considérations supplémentaires.
Consultez la documentation sur les adresses IP sortantes d’AEM as a Cloud Service pour l’ensemble complet des règles de routage.
Lors de la création de connexions HTTP/HTTPS à des ports non standard (non 80/443) à partir d’AEM, la connexion doit être établie par le biais d’hôtes et de ports spéciaux, fournis via des espaces réservés.
AEM fournit deux ensembles de variables système Java™ spéciales qui correspondent à des proxys HTTP/HTTPS AEM.
| Nom de variable | Utilisation | Code Java™ | Configuration OSGi | | - | - | - | - | | AEM_HTTP_PROXY_HOST
| Hôte proxy pour les connexions HTTP | System.getenv("AEM_HTTP_PROXY_HOST")
| $[env:AEM_HTTP_PROXY_HOST]
| | AEM_HTTP_PROXY_PORT
| Port proxy pour les connexions HTTP | System.getenv("AEM_HTTP_PROXY_PORT")
| $[env:AEM_HTTP_PROXY_PORT]
| | AEM_HTTPS_PROXY_HOST
| Hôte proxy pour les connexions HTTPS | System.getenv("AEM_HTTPS_PROXY_HOST")
| $[env:AEM_HTTPS_PROXY_HOST]
| | AEM_HTTPS_PROXY_PORT
| Port proxy pour les connexions HTTPS | System.getenv("AEM_HTTPS_PROXY_PORT")
| $[env:AEM_HTTPS_PROXY_PORT]
|
Les demandes pour les services externes HTTP/HTTPS doivent être effectuées en configurant la configuration du proxy du client HTTP Java™ à l’aide des valeurs d’hôte/port du proxy AEM.
Lors d’appels HTTP/HTTPS à des services externes sur des ports non standard, aucun appel correspondant portForwards
doit être défini à l’aide de l’API Cloud Manager enableEnvironmentAdvancedNetworkingConfiguration
, car les "règles" de transfert de port sont définies "dans le code".
![]() Exemple de code Java™ qui rend la connexion HTTP/HTTPS d’AEM as a Cloud Service à un service externe sur des ports HTTP/HTTPS non standard. |
Lors de la création de connexions non HTTP/HTTPS (ex. SQL, SMTP, etc.) depuis AEM, la connexion doit être établie par un nom d’hôte spécial fourni par AEM.
| Nom de variable | Utilisation | 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 la fonction AEM_PROXY_HOST
et le port mappé (portForwards.portOrig
), qui AEM ensuite achemine vers le nom d’hôte externe mappé (portForwards.name
) et port (portForwards.portDest
).
Hôte du proxy | Port du proxy | Hôte externe | Port externe | |
---|---|---|---|---|
AEM_PROXY_HOST |
portForwards.portOrig |
→ | portForwards.name |
portForwards.portDest |