Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.
Points de terminaison spécifiques au service
La configuration du point de terminaison spécifique au service offre la possibilité d'utiliser un point de terminaison de votre choix pour les API demandes et de conserver ce choix. Ces paramètres offrent la flexibilité nécessaire pour prendre en charge les points de terminaison locaux, les points de VPC terminaison et les points de terminaison locaux tiers AWS environnements de développement. Différents points de terminaison peuvent être utilisés pour les environnements de test et de production. Vous pouvez spécifier un point de terminaison URL pour un individu Services AWS.
Configurez cette fonctionnalité à l'aide des méthodes suivantes :
endpoint_url
- partagé AWSconfig
réglage du fichierAWS_ENDPOINT_URL
- variable d'environnementaws.endpointUrl
- propriété JVM du système : Java/Kotlin uniquement-
Lorsqu'il est spécifié directement dans un profil ou en tant que variable d'environnement, ce paramètre indique le point de terminaison utilisé pour toutes les demandes de service. Ce point de terminaison est remplacé par tout point de terminaison spécifique au service configuré.
Vous pouvez également utiliser ce paramètre dans une
services
section d'un partage AWSconfig
fichier pour définir un point de terminaison personnalisé pour un service spécifique. Pour obtenir la liste de toutes les clés d'identification de service à utiliser pour les sous-sections deservices
cette section, consultezIdentifiants pour les points de terminaison spécifiques au service.Valeur par défaut :
none
Valeurs valides : AURL, y compris le schéma et l'hôte du point de terminaison. Ils URL peuvent éventuellement contenir un composant de chemin qui contient un ou plusieurs segments de chemin.
AWS_ENDPOINT_URL_<SERVICE>
- variable d'environnementaws.endpointUrl<ServiceName>
- propriété JVM du système : Java/Kotlin uniquement-
AWS_ENDPOINT_URL_<SERVICE>
, où se<SERVICE>
trouve le Service AWS identifiant, définit un point de terminaison personnalisé pour un service spécifique. Pour obtenir la liste de toutes les variables d'environnement spécifiques au service, consultez. Identifiants pour les points de terminaison spécifiques au serviceCe point de terminaison spécifique au service remplace tout point de terminaison global défini dans.
AWS_ENDPOINT_URL
Valeur par défaut :
none
Valeurs valides : AURL, y compris le schéma et l'hôte du point de terminaison. Ils URL peuvent éventuellement contenir un composant de chemin qui contient un ou plusieurs segments de chemin.
ignore_configured_endpoint_urls
- partagé AWSconfig
réglage du fichierAWS_IGNORE_CONFIGURED_ENDPOINT_URLS
- variable d'environnementaws.ignoreConfiguredEndpointUrls
- propriété JVM du système : Java/Kotlin uniquement-
Ce paramètre est utilisé pour ignorer toutes les configurations de points de terminaison personnalisées.
Notez que tout point de terminaison explicite défini dans le code ou sur un client de service lui-même est utilisé quel que soit ce paramètre. Par exemple, inclure le paramètre de ligne de
--endpoint-url
commande avec un AWS CLI une commande ou le passage d'un point de terminaison URL à un constructeur client prendra toujours effet.Valeur par défaut :
false
Valeurs valides:
-
true
— L'outil SDK or ne lit aucune option de configuration personnalisée à partir duconfig
fichier partagé ou des variables d'environnement pour définir un point de terminaisonURL. -
false
— L'outil SDK or utilise tous les points de terminaison disponibles fournis par l'utilisateur à partir duconfig
fichier partagé ou des variables d'environnement.
-
Configuration des points de terminaison à l'aide de variables d'environnement
Pour acheminer les demandes de tous les services vers un point de terminaison personnaliséURL, définissez la variable d'environnement AWS_ENDPOINT_URL
globale.
export AWS_ENDPOINT_URL=
http://localhost:4567
Pour acheminer les demandes relatives à un Service AWS pour un point de terminaison personnaliséURL, utilisez la variable d'AWS_ENDPOINT_URL_<SERVICE>
environnement. Amazon DynamoDB a un serviceId
de DynamoDB
AWS_ENDPOINT_URL_DYNAMODB
. Ce point de terminaison a priorité sur le point de terminaison global défini AWS_ENDPOINT_URL
pour ce service.
export AWS_ENDPOINT_URL_DYNAMODB=
http://localhost:5678
Autre exemple, AWS Elastic Beanstalk a un serviceId
de Elastic Beanstalk
serviceId
en remplaçant tous les espaces par des traits de soulignement et en majuscules de toutes les lettres. Pour définir le point de terminaison de ce service, la variable d'environnement correspondante estAWS_ENDPOINT_URL_ELASTIC_BEANSTALK
. Pour obtenir la liste de toutes les variables d'environnement spécifiques au service, consultez. Identifiants pour les points de terminaison spécifiques au service
export AWS_ENDPOINT_URL_ELASTIC_BEANSTALK=
http://localhost:5567
Configuration des points de terminaison à l'aide du fichier partagé config
Dans le config
fichier partagé, endpoint_url
il est utilisé à différents endroits pour différentes fonctionnalités.
-
endpoint_url
spécifié directement dans aprofile
fait de ce point de terminaison le point de terminaison global. -
endpoint_url
imbriqué sous une clé d'identification de service dans uneservices
section, ce point de terminaison s'applique aux demandes adressées uniquement à ce service. Pour plus de détails sur la définition d'uneservices
section dans votreconfig
fichier partagé, consultezFormat du fichier de configuration.
L'exemple suivant utilise une services
définition pour configurer un point de terminaison spécifique au service URL à utiliser pour Amazon S3 et un point de terminaison global personnalisé à utiliser pour tous les autres services :
[profile
dev-s3-specific-and-global
] endpoint_url =http://localhost:1234
services =s3-specific
[servicess3-specific
] s3 = endpoint_url =https://play.min.io:9000
Un profil unique peut configurer des points de terminaison pour plusieurs services. Cet exemple montre comment définir le point de terminaison spécifique au service URLs pour Amazon S3 et AWS Elastic Beanstalk
dans le même profil. AWS Elastic Beanstalk a un serviceId
de Elastic Beanstalk
serviceId
en remplaçant tous les espaces par des traits de soulignement et en minuscules toutes les lettres. Ainsi, la clé d'identification du service devient elastic_beanstalk
et les paramètres de ce service commencent sur la ligneelastic_beanstalk =
. Pour obtenir la liste de toutes les clés d'identification de service à utiliser dans services
cette section, consultezIdentifiants pour les points de terminaison spécifiques au service.
[services
testing-s3-and-eb
] s3 = endpoint_url =http://localhost:4567
elastic_beanstalk = endpoint_url =http://localhost:8000
[profiledev
] services =testing-s3-and-eb
La section de configuration du service peut être utilisée à partir de plusieurs profils. Par exemple, deux profils peuvent utiliser la même services
définition tout en modifiant d'autres propriétés de profil :
[services
testing-s3
] s3 = endpoint_url =https://localhost:4567
[profiletesting-json
] output = json services =testing-s3
[profiletesting-text
] output = text services =testing-s3
Configurer les points de terminaison dans les profils à l'aide d'informations d'identification basées sur les rôles
Si votre profil possède des informations d'identification basées sur les rôles configurées via un source_profile
paramètre pour la fonctionnalité d'IAMassumer un rôle, il utilise SDK uniquement les configurations de service pour le profil spécifié. Il n'utilise pas de profils auxquels des rôles sont liés. Par exemple, en utilisant le config
fichier partagé suivant :
[profile
A
] credential_source =Ec2InstanceMetadata
endpoint_url =https://profile-a-endpoint.aws/
[profileB
] source_profile =A
role_arn =arn:aws:iam::123456789012:role/roleB
services =profileB
[servicesprofileB
] ec2 = endpoint_url =https://profile-b-ec2-endpoint.aws
Si vous utilisez le profil B
et que vous appelez Amazon dans votre codeEC2, le point de terminaison est résolu commehttps://profile-b-ec2-endpoint.aws
. Si votre code envoie une demande à un autre service, la résolution du point de terminaison ne suivra aucune logique personnalisée. Le point de terminaison ne correspond pas au point de terminaison global défini dans le profilA
. Pour qu'un point de terminaison global prenne effet pour B
le profil, vous devez le définir endpoint_url
directement dans le profilB
. Pour plus d'informations sur le paramètre source_profile
, consultez Assumer le rôle de fournisseur d'informations d'identification.
Priorité des paramètres
Les paramètres de cette fonctionnalité peuvent être utilisés simultanément, mais une seule valeur sera prioritaire par service. Pour les API appels passés vers une destination donnée Service AWS, l'ordre suivant est utilisé pour sélectionner une valeur :
-
Tout paramètre explicite défini dans le code ou sur un client de service lui-même a priorité sur tout autre paramètre.
-
Pour AWS CLI, il s'agit de la valeur fournie par le paramètre de ligne de
--endpoint-url
commande. Par exempleSDK, les assignations explicites peuvent prendre la forme d'un paramètre que vous définissez lorsque vous instanciez un Service AWS client ou objet de configuration.
-
-
La valeur fournie par une variable d'environnement spécifique au service, telle que.
AWS_ENDPOINT_URL_DYNAMODB
-
La valeur fournie par la variable d'environnement
AWS_ENDPOINT_URL
globale du point de terminaison. -
Valeur fournie par le
endpoint_url
paramètre imbriqué sous une clé d'identification de service dans uneservices
section duconfig
fichier partagé. -
La valeur fournie par le
endpoint_url
paramètre spécifié directement dans unprofile
config
fichier partagé. -
Tout point de terminaison par défaut URL pour le Service AWS est utilisé en dernier.
Compatibilité avec AWS SDKs
Les éléments suivants SDKs prennent en charge les fonctionnalités et les paramètres décrits dans cette rubrique. Toute exception partielle est notée. Tous les paramètres des propriétés du JVM système sont pris en charge par AWS SDK for Java et le Kit AWS SDK pour Kotlin uniquement.
SDK | Pris en charge | Remarques ou informations supplémentaires |
---|---|---|
AWS CLI v2 | Oui | |
SDKpour C++ | Non | |
SDKpour Go V2 (1.x) |
Oui | |
SDKpour Go 1.x (V1) | Non | |
SDKpour Java 2.x | Oui | |
SDKpour Java 1.x | Non | |
SDKpour JavaScript 3.x | Oui | |
SDKpour JavaScript 2.x | Non | |
SDKpour Kotlin | Oui | |
SDKpour. NET3. x | Oui | |
SDKpour PHP 3.x | Oui | |
SDKpour Python (Boto3) |
Oui | |
SDKpour Ruby 3.x | Oui | |
SDKpour Rust | Non | |
SDKpour Swift | Non | |
Outils pour PowerShell | Oui |