Paramètres des fichiers de configuration et d’informations d’identification dans l’AWS CLI - AWS Command Line Interface

Paramètres des fichiers de configuration et d’informations d’identification dans l’AWS CLI

Vous pouvez enregistrer vos paramètres de configuration utilisés fréquemment et vos informations d’identification dans des fichiers qui sont gérés par l’AWS CLI.

Les fichiers sont divisés en profiles. Par défaut, l’AWS CLI utilise les paramètres figurant dans le profil nommé default. Pour utiliser d’autres paramètres, vous pouvez créer d’autres profils et y faire référence.

Vous pouvez également remplacer un paramètre spécifique en définissant l’une des variables d’environnement prises en charge ou un paramètre de ligne de commande. Pour plus d’informations sur la priorité des paramètres de configuration, consultez Configuration des paramètres de l’AWS CLI.

Note

Pour plus d’informations sur la configuration des informations d’identification, consultez Authentification et informations d’identification d’accès pour l’AWS CLI.

Format des fichiers de configuration et des informations d’identification

Les fichiers config et credentials sont organisés en sections. Les sections sont profiles, sso-sessions et services. Une section est une collection nommée de paramètres qui continue jusqu’à ce qu’une autre ligne de définition de section soit rencontrée. Plusieurs profils et sections peuvent être enregistrés dans les fichiers config et credentials.

Ces fichiers sont des fichiers en texte brut au format suivant :

  • Les noms des sections sont placés entre crochets [ ], par exemple [default], [profile user1] et [sso-session].

  • Toutes les entrées d’une section prennent la forme générale setting_name=value.

  • Les lignes peuvent être commentées en commençant par un caractère dièse (#).

Les fichiers config et credentials contiennent les types de sections suivants :

Type de section : profile

Selon le fichier, les noms de section de profil utilisent le format suivant :

  • Fichier de configuration : [default] [profile user1]

  • Fichier d’informations d’identification : [default] [user1]

    N’utilisez pas le mot profile lors de la création d’une entrée dans le fichier credentials.

Chaque profil peut spécifier des informations d’identification différentes et peut également spécifier des régions AWS et des formats de sortie différents. Lorsque vous nommez le profil dans un fichier config, incluez le préfixe « profile », mais ne l’incluez pas dans le fichier credentials.

Les exemples suivants montrent un fichier credentials et config avec deux profils, une région et une sortie spécifiés. La première valeur [default] est utilisée lors de l’exécution d’une commande AWS CLI sans aucun profil spécifié. La seconde est utilisée lorsque vous exécutez une commande d’AWS CLI avec le paramètre --profile user1.

IAM Identity Center (SSO)

Cet exemple s’applique à AWS IAM Identity Center. Pour plus d’informations, consultez Configuration de l’authentification IAM Identity Center à l’aide de l’AWS CLI.

Fichier d’informations d’identification

Le fichier credentials n’est pas utilisé pour cette méthode d’authentification.

Fichier de configuration

[default] sso_session = my-sso sso_account_id = 111122223333 sso_role_name = readOnly region = us-west-2 output = text [profile user1] sso_session = my-sso sso_account_id = 444455556666 sso_role_name = readOnly region = us-east-1 output = json [sso-session my-sso] sso_region = us-east-1 sso_start_url = https://my-sso-portal.awsapps.com/start sso_registration_scopes = sso:account:access
IAM Identity Center (Legacy SSO)

Cet exemple concerne la méthode héritée d’AWS IAM Identity Center. Pour plus d’informations, consultez Configuration de l’authentification IAM Identity Center à l’aide de l’AWS CLI.

Fichier d’informations d’identification

Le fichier credentials n’est pas utilisé pour cette méthode d’authentification.

Fichier de configuration

[default] sso_start_url = https://my-sso-portal.awsapps.com/start sso_region = us-east-1 sso_account_id = 111122223333 sso_role_name = readOnly region = us-west-2 output = text [profile user1] sso_start_url = https://my-sso-portal.awsapps.com/start sso_region = us-east-1 sso_account_id = 444455556666 sso_role_name = readOnly region = us-east-1 output = json
Short-term credentials

Cet exemple concerne les informations d’identification AWS Identity and Access Management à court terme. Pour plus d’informations, consultez Authentification à l’aide d’informations d’identification à court terme pour l’AWS CLI.

Fichier d’informations d’identification

[default] aws_access_key_id=ASIAIOSFODNN7EXAMPLE aws_secret_access_key=wJalrXUtnFEMI/K7MDENG/bPxRfiCYEXAMPLEKEY aws_session_token = IQoJb3JpZ2luX2IQoJb3JpZ2luX2IQoJb3JpZ2luX2IQoJb3JpZ2luX2IQoJb3JpZVERYLONGSTRINGEXAMPLE [user1] aws_access_key_id=ASIAI44QH8DHBEXAMPLE aws_secret_access_key=je7MtGbClwBF/2Zp9Utk/h3yCo8nvbEXAMPLEKEY aws_session_token = fcZib3JpZ2luX2IQoJb3JpZ2luX2IQoJb3JpZ2luX2IQoJb3JpZ2luX2IQoJb3JpZVERYLONGSTRINGEXAMPLE

Fichier de configuration

[default] region=us-west-2 output=json [profile user1] region=us-east-1 output=text
IAM role

Cet exemple concerne l’endossement d’un rôle IAM. Les profils qui utilisent des rôles IAM extraient les informations d’identification d’un autre profil, puis appliquent les autorisations des rôles IAM. Dans les exemples suivants, default est le profil source des informations d’identification et user1 emprunte les mêmes informations d’identification, puis endosse un nouveau rôle. Pour plus d’informations, consultez Utilisation d’un rôle IAM dans l’AWS CLI.

Fichier d’informations d’identification

Le fichier credentials dépend de l’authentification utilisée par votre profil source. Dans l’exemple suivant, le profil source utilise des informations d’identification à court terme.

[default] aws_access_key_id=ASIAIOSFODNN7EXAMPLE aws_secret_access_key=wJalrXUtnFEMI/K7MDENG/bPxRfiCYEXAMPLEKEY aws_session_token = IQoJb3JpZ2luX2IQoJb3JpZ2luX2IQoJb3JpZ2luX2IQoJb3JpZ2luX2IQoJb3JpZVERYLONGSTRINGEXAMPLE

Fichier de configuration

[default] region=us-west-2 output=json [profile user1] role_arn=arn:aws:iam::777788889999:role/user1role source_profile=default role_session_name=session_user1 region=us-east-1 output=text
Amazon EC2 instance metadata credentials

Cet exemple concerne les informations d’identification obtenues à partir des métadonnées de l’instance d’hébergement Amazon EC2. Pour plus d’informations, consultez Utilisation de métadonnées d’instance Amazon EC2 comme informations d’identification dans l’AWS CLI.

Fichier d’informations d’identification

Le fichier credentials n’est pas utilisé pour cette méthode d’authentification.

Fichier de configuration

[default] role_arn=arn:aws:iam::123456789012:role/defaultrole credential_source=Ec2InstanceMetadata region=us-west-2 output=json [profile user1] role_arn=arn:aws:iam::777788889999:role/user1role credential_source=Ec2InstanceMetadata region=us-east-1 output=text
Long-term credentials
Avertissement

Afin d’éviter les risques de sécurité, n’employez pas les utilisateurs IAM pour l’authentification lorsque vous développez des logiciels spécialisés ou lorsque vous travaillez avec des données réelles. Préférez la fédération avec un fournisseur d’identité tel que AWS IAM Identity Center.

Cet exemple concerne les informations d’identification à long terme d’AWS Identity and Access Management. Pour plus d’informations, consultez Authentification à l’aide des informations d’identification d’utilisateur IAM pour l’AWS CLI.

Fichier d’informations d’identification

[default] aws_access_key_id=AKIAIOSFODNN7EXAMPLE aws_secret_access_key=wJalrXUtnFEMI/K7MDENG/bPxRfiCYEXAMPLEKEY [user1] aws_access_key_id=AKIAI44QH8DHBEXAMPLE aws_secret_access_key=je7MtGbClwBF/2Zp9Utk/h3yCo8nvbEXAMPLEKEY

Fichier de configuration

[default] region=us-west-2 output=json [profile user1] region=us-east-1 output=text

Pour plus d’informations et des détails sur les méthodes supplémentaires pour les autorisations les informations d’identification, consultez Authentification à l’aide des informations d’identification d’utilisateur IAM pour l’AWS CLI.

Type de section : sso-session

La section sso-session du fichier config est utilisée pour regrouper les variables de configuration permettant d’acquérir des jetons d’accès SSO, lesquels peuvent ensuite être utilisés pour acquérir des informations d’identification AWS. Les paramètres suivants sont utilisés :

Vous définissez une section sso-session et vous l’associez à un profil. sso_region et sso_start_url doivent être définis dans la section sso-session. Généralement, sso_account_id et sso_role_name doivent être définis dans la section profile afin que le kit SDK puisse demander des informations d’identification SSO.

L’exemple suivant configure le kit SDK pour demander des informations d’identification SSO et il prend en charge l’actualisation automatique des jetons :

[profile dev] sso_session = my-sso sso_account_id = 111122223333 sso_role_name = SampleRole [sso-session my-sso] sso_region = us-east-1 sso_start_url = https://my-sso-portal.awsapps.com/start

Cela permet également de réutiliser les configurations sso-session dans plusieurs profils :

[profile dev] sso_session = my-sso sso_account_id = 111122223333 sso_role_name = SampleRole [profile prod] sso_session = my-sso sso_account_id = 111122223333 sso_role_name = SampleRole2 [sso-session my-sso] sso_region = us-east-1 sso_start_url = https://my-sso-portal.awsapps.com/start

Cependant, sso_account_id et sso_role_name ne sont pas obligatoires pour tous les scénarios de configuration de jetons SSO. Si votre application utilise uniquement des services AWS qui prennent en charge l’authentification par jeton de porteur, les informations d’identification AWS traditionnelles ne sont pas nécessaires. L’authentification par jeton de porteur est un schéma d’authentification HTTP qui utilise des jetons de sécurité appelés jetons de porteur. Dans ce scénario, sso_account_id et sso_role_name ne sont pas obligatoires. Consultez le guide individuel de votre service AWS pour déterminer s’il prend en charge l’autorisation par jeton de porteur.

De plus, les portées d’enregistrement peuvent être configurées dans le cadre d’une sso-session. La portée est un mécanisme OAuth 2.0 permettant de limiter l’accès d’une application au compte d’un utilisateur. Une application peut demander une ou plusieurs portées, et le jeton d’accès émis pour l’application sera limité aux portées accordées. Ces portées définissent les autorisations demandées à accorder au client OIDC enregistré ainsi que les jetons d’accès que ce client obtient. L’exemple suivant définit sso_registration_scopes afin de fournir un accès permettant de répertorier les comptes et les rôles :

[sso-session my-sso] sso_region = us-east-1 sso_start_url = https://my-sso-portal.awsapps.com/start sso_registration_scopes = sso:account:access

Le jeton d’authentification est mis en cache sur le disque sous le répertoire ~/.aws/sso/cache avec un nom de fichier basé sur le nom de session.

Pour plus d’informations sur ce type de configuration, consultez Configuration de l’authentification IAM Identity Center à l’aide de l’AWS CLI.

Type de section : services

La section services est un groupe de paramètres qui configure les points de terminaison personnalisés pour les demandes Service AWS. Un profil est ensuite lié à une section services.

[profile dev] services = my-services

La section services est divisée en sous-sections par des lignes <SERVICE> = , où <SERVICE> est la clé d’identifiant Service AWS. L’identifiant Service AWS se base sur le serviceId du modèle d’API en remplaçant tous les espaces par des traits de soulignement et en mettant en minuscules toutes les lettres. Pour obtenir la liste de toutes les clés d’identification de service à utiliser dans la section services, consultez Utilisation de points de terminaison dans l’AWS CLI. La clé d’identification du service est suivie de paramètres imbriqués, chacun sur sa propre ligne et indenté de deux espaces.

L’exemple suivant configure le point de terminaison à utiliser pour les demandes adressées au service Amazon DynamoDB dans la section my-services utilisée dans le profil dev. Toutes les lignes indentées qui suivent immédiatement sont incluses dans cette sous-section et s’appliquent à ce service.

[profile dev] services = my-services [services my-services] dynamodb = endpoint_url = http://localhost:8000

Pour plus d’informations sur les points de terminaison spécifiques aux services, consultez Utilisation de points de terminaison dans l’AWS CLI.

Si votre profil comporte des informations d’identification basées sur un rôle configurées via un paramètre source_profile pour la fonctionnalité de rôle de responsable IAM, le kit SDK utilise 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 fichier config partagé suivant :

[profile A] credential_source = Ec2InstanceMetadata endpoint_url = https://profile-a-endpoint.aws/ [profile B] source_profile = A role_arn = arn:aws:iam::123456789012:role/roleB services = profileB [services profileB] ec2 = endpoint_url = https://profile-b-ec2-endpoint.aws

Si vous utilisez le profil B et que vous effectuez un appel dans votre code à Amazon EC2, le point de terminaison est résolu en https://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 n’est pas résolu en point de terminaison global défini dans le profil A. Pour qu’un point de terminaison global prenne effet pour le profil B, vous devez définir endpoint_url directement dans le profil B.

Où les paramètres de configuration sont-ils stockés ?

L’AWS CLI stocke les informations d’identification que vous spécifiez avec aws configure dans un fichier local nommé credentials dans un dossier nommé .aws dans le répertoire de base. Les autres options de configuration que vous spécifiez avec aws configure sont stockées dans un fichier local nommé config, également stocké dans le dossier .aws du répertoire de base.

Stockage des informations d’identification dans le fichier de configuration

Vous pouvez conserver tous vos paramètres de profil dans un seul fichier, car l’AWS CLI peut lire les informations d’identification à partir du fichier config. S’il existe des informations d’identification dans les deux fichiers pour un profil partageant le même nom, les clés du fichier d’informations d’identification ont priorité. Nous vous suggérons de conserver les informations d’identification dans les fichiers credentials. Ces fichiers sont également utilisés par les divers kits de développement logiciel (SDK). Si vous utilisez l’un des kits SDK en plus de l’AWS CLI, confirmez si les informations d’identification doivent être stockées dans leur propre fichier.

L’emplacement du répertoire de base varie selon le système d’exploitation, mais il est référencé à l’aide de variables d’environnement %UserProfile% sous Windows et $HOME ou ~ (tilde) sur les systèmes Unix. Vous pouvez spécifier un emplacement autre que celui par défaut pour les fichiers en définissant les variables d’environnement AWS_CONFIG_FILE et AWS_SHARED_CREDENTIALS_FILE sur un autre chemin local. Consultez Configuration des variables d’environnement pour l’AWS CLI pour plus de détails.

Lorsque vous utilisez un profil partagé qui spécifie un rôle AWS Identity and Access Management (IAM), l’AWS CLI appelle l’opération AWS STS AssumeRole pour récupérer les informations d’identification temporaires. Ces informations d’identification sont ensuite stockées (dans ~/.aws/cli/cache). Les commandes d’AWS CLI suivantes utilisent les informations d’identification temporaires mises en cache jusqu’à ce qu’elles expirent ; à ce stade, l’AWS CLI actualise automatiquement les informations d’identification.

Utilisation de profils nommés

Si aucun profil n’est défini explicitement, le profil default est utilisé.

Pour utiliser un profil nommé, ajoutez l’option --profile profile-name à votre commande. L’exemple suivant répertorie toutes vos instances Amazon EC2 avec les informations d’identification et les paramètres définis dans le profil user1.

$ aws ec2 describe-instances --profile user1

Pour utiliser un profil nommé pour plusieurs commandes, vous pouvez éviter de spécifier le profil dans chaque commande en définissant la variable d’environnement AWS_PROFILE comme profil par défaut. Vous pouvez remplacer ce paramètre à l’aide du paramètre --profile.

Linux or macOS
$ export AWS_PROFILE=user1
Windows
C:\> setx AWS_PROFILE user1

L’utilisation de set pour définir une variable d’environnement modifie la valeur utilisée jusqu’à la fin de la session d’invite de commande en cours, ou jusqu’à ce que vous définissiez la variable sur une autre valeur.

L’utilisation de setx pour définir une variable d’environnement modifie la valeur dans tous les shells de commande que vous créez après l’exécution de la commande. Cela n’affecte aucun shell de commande qui est déjà en cours d’exécution au moment où vous exécutez la commande. Fermez et redémarrez le shell de commande pour voir les effets de la modification.

La définition de la variable d’environnement permet de modifier le profil par défaut jusqu’à la fin de votre session shell, ou jusqu’à ce que vous définissiez la variable sur une autre valeur. Vous pouvez rendre des variables persistantes dans de futures sessions en les plaçant dans votre script de démarrage de shell. Pour plus d’informations, consultez Configuration des variables d’environnement pour l’AWS CLI.

Définition et affichage des paramètres de configuration à l’aide de commandes

Il existe plusieurs façons d’afficher et de définir vos paramètres de configuration à l’aide de commandes.

aws configure

Exécutez cette commande pour définir et afficher rapidement vos informations d’identification, votre région et votre format de sortie. L’exemple suivant montre des exemples de valeurs.

$ aws configure AWS Access Key ID [None]: AKIAIOSFODNN7EXAMPLE AWS Secret Access Key [None]: wJalrXUtnFEMI/K7MDENG/bPxRfiCYEXAMPLEKEY Default region name [None]: us-west-2 Default output format [None]: json
aws configure set

Vous pouvez définir les informations d’identification ou les paramètres de configuration à l’aide de la commande aws configure set. Spécifiez le profil que vous souhaitez consulter ou modifier avec le paramètre --profile.

Par exemple, la commande suivante définit le paramètre region dans le profil nommé integ.

$ aws configure set region us-west-2 --profile integ

Pour supprimer un paramètre, supprimez-le manuellement de vos fichiers config et credentials dans un éditeur de texte.

aws configure get

Vous pouvez récupérer les informations d’identification ou les paramètres de configuration que vous avez définis via aws configure get. Spécifiez le profil que vous souhaitez consulter ou modifier avec le paramètre --profile.

Par exemple, la commande suivante récupère le paramètre region dans le profil nommé integ.

$ aws configure get region --profile integ us-west-2

Un résultat vide indique que le paramètre n’est pas explicitement défini et utilise la valeur par défaut.

aws configure import

Importez les informations d’identification CSV générées à partir de la console web IAM. Cela ne concerne pas les informations d’identification générées par IAM Identity Center ; les clients qui utilisent IAM Identity Center doivent utiliser aws configure sso. Un fichier CSV est importé avec le nom de profil correspondant au nom d’utilisateur. Le fichier CSV doit comporter les en-têtes suivants.

  • Nom utilisateur

  • ID de clé d’accès

  • Clé d’accès secrète

Note

Lors de la création de la paire de clés initiale, une fois que vous avez fermé la boîte de dialogue Télécharger le fichier .csv, vous ne pouvez plus accéder à votre clé d’accès secrète. Si vous avez besoin d’un fichier .csv, vous devez en créer un vous-même avec les en-têtes requis et les informations relatives à vos paires de clés enregistrées. Si vous n’avez pas accès aux informations relatives à vos paires de clés, vous devez créer une nouvelle paire de clés.

$ aws configure import --csv file://credentials.csv
aws configure list

Pour afficher la liste de toutes les données de configuration, utilisez la commande aws configure list. Cette commande répertorie le profil, la clé d’accès, la clé secrète et les informations de configuration de région utilisées pour le profil spécifié. Pour chaque élément de configuration, elle indique la valeur, l’emplacement où la valeur de configuration a été extraite et le nom de la variable de configuration.

Par exemple, si vous fournissez Région AWS dans une variable d’environnement, cette commande affiche le nom de la région que vous avez configurée, indique que cette valeur provient d’une variable d’environnement et fournit le nom de la variable d’environnement.

Pour les méthodes d’informations d’identification temporaires telles que les rôles et IAM Identity Center, cette commande affiche la clé d’accès temporairement mise en cache, et la clé d’accès secrète est affichée.

$ aws configure list NAME : VALUE : TYPE : LOCATION profile : <not set> : None : None access_key : ****************ABCD : shared-credentials-file : secret_key : ****************ABCD : shared-credentials-file : region : us-west-2 : env : AWS_DEFAULT_REGION
aws configure list-profiles

Pour afficher la liste de tous les noms de profil, utilisez la commande aws configure list-profiles.

$ aws configure list-profiles default test
aws configure sso

Exécutez cette commande pour définir et afficher rapidement vos informations d’identification AWS IAM Identity Center, votre région et votre format de sortie. L’exemple suivant montre des exemples de valeurs.

$ aws configure sso SSO session name (Recommended): my-sso SSO start URL [None]: https://my-sso-portal.awsapps.com/start SSO region [None]: us-east-1 SSO registration scopes [None]: sso:account:access
aws configure sso-session

Exécutez cette commande pour définir et afficher rapidement vos informations d’identification AWS IAM Identity Center, votre région et votre format de sortie dans la section sso-session des fichiers credentials et config. L’exemple suivant montre des exemples de valeurs.

$ aws configure sso-session SSO session name: my-sso SSO start URL [None]: https://my-sso-portal.awsapps.com/start SSO region [None]: us-east-1 SSO registration scopes [None]: sso:account:access
aws configure export-credentials

Exécutez cette commande pour exporter les informations d’identification actuellement définies dans le format spécifié. Par défaut, la commande exporte les informations d’identification par défaut au format process, qui est un format JSON pris en charge par le format d’informations d’identification des kits AWS SDK et des outils.

$ aws configure export-credentials { "Version": 1, "AccessKeyId": "AKIAIOSFODNN7EXAMPLE", "SecretAccessKey": "wJalrXUtnFEMI/K7MDENG/bPxRfiCYEXAMPLEKEY" }

Pour exporter un profil et un format spécifiques, utilisez les options --profile et --format. Les options de format sont les suivantes :

  • (par défaut)process : le format JSON pris en charge par la configuration credential_process des kits AWS SDK et des outils.

  • env : variables d’environnement au format shell exporté.

  • env-no-export : variables d’environnement au format shell non exporté.

  • powershell : variables d’environnement au format PowerShell.

  • windows-cmd : variables d’environnement au format de ligne de commande Windows.

L’exemple suivant exporte le profil user1 vers un format shell exporté.

$ aws configure export-credentials --profile user1 --format env export AWS_ACCESS_KEY_ID=AKIAIOSFODNN7EXAMPLE export AWS_SECRET_ACCESS_KEY=wJalrXUtnFEMI/K7MDENG/bPxRfiCYEXAMPLEKEY

Exemples de commandes de paramétrage d’une configuration et d’informations d’identification

Les exemples suivants montrent comment configurer un profil par défaut avec des informations d’identification, une région et une sortie spécifiées pour différentes méthodes d’authentification.

IAM Identity Center (SSO)

Cet exemple concerne AWS IAM Identity Center avec une utilisation de l’assistant aws configure sso. Pour plus d’informations, consultez Configuration de l’authentification IAM Identity Center à l’aide de l’AWS CLI.

$ aws configure sso SSO session name (Recommended): my-sso SSO start URL [None]: https://my-sso-portal.awsapps.com/start SSO region [None]:us-east-1 Attempting to automatically open the SSO authorization page in your default browser. There are 2 AWS accounts available to you. > DeveloperAccount, developer-account-admin@example.com (111122223333) ProductionAccount, production-account-admin@example.com (444455556666) Using the account ID 111122223333 There are 2 roles available to you. > ReadOnly FullAccess Using the role name "ReadOnly" CLI default client Region [None]: us-west-2 CLI default output format [None]: json CLI profile name [123456789011_ReadOnly]: user1
IAM Identity Center (Legacy SSO)

Cet exemple concerne la méthode héritée d’AWS IAM Identity Center avec une utilisation de l’assistant aws configure sso. Pour utiliser l’authentification unique héritée, laissez le nom de session vide. Pour plus d’informations, consultez Configuration de l’authentification IAM Identity Center à l’aide de l’AWS CLI.

$ aws configure sso SSO session name (Recommended): SSO start URL [None]: https://my-sso-portal.awsapps.com/start SSO region [None]:us-east-1 SSO authorization page has automatically been opened in your default browser. Follow the instructions in the browser to complete this authorization request. There are 2 AWS accounts available to you. > DeveloperAccount, developer-account-admin@example.com (111122223333) ProductionAccount, production-account-admin@example.com (444455556666) Using the account ID 111122223333 There are 2 roles available to you. > ReadOnly FullAccess Using the role name "ReadOnly" CLI default client Region [None]: us-west-2 CLI default output format [None]: json CLI profile name [123456789011_ReadOnly]: user1
Short-term credentials

Cet exemple concerne les informations d’identification AWS Identity and Access Management à court terme. L’assistant de configuration AWS est utilisé pour définir les valeurs initiales, puis la commande aws configure set attribue la dernière valeur requise. Pour plus d’informations, consultez Authentification à l’aide d’informations d’identification à court terme pour l’AWS CLI.

$ aws configure AWS Access Key ID [None]: AKIAIOSFODNN7EXAMPLE AWS Secret Access Key [None]: wJalrXUtnFEMI/K7MDENG/bPxRfiCYEXAMPLEKEY Default region name [None]: us-west-2 Default output format [None]: json $ aws configure set aws_session_token fcZib3JpZ2luX2IQoJb3JpZ2luX2IQoJb3JpZ2luX2IQoJb3JpZ2luX2IQoJb3JpZVERYLONGSTRINGEXAMPLE
IAM role

Cet exemple concerne l’endossement d’un rôle IAM. Les profils qui utilisent des rôles IAM extraient les informations d’identification d’un autre profil, puis appliquent les autorisations des rôles IAM. Dans les exemples suivants, default est le profil source des informations d’identification et user1 emprunte les mêmes informations d’identification, puis endosse un nouveau rôle. Il n’existe pas d’assistant pour ce processus, chaque valeur est donc définie à l’aide de la commande aws configure set. Pour plus d’informations, consultez Utilisation d’un rôle IAM dans l’AWS CLI.

$ aws configure set role_arn arn:aws:iam::123456789012:role/defaultrole $ aws configure set source_profile default $ aws configure set role_session_name session_user1 $ aws configure set region us-west-2 $ aws configure set output json
Amazon EC2 instance metadata credentials

Cet exemple concerne les informations d’identification obtenues à partir des métadonnées de l’instance d’hébergement Amazon EC2. Il n’existe pas d’assistant pour ce processus, chaque valeur est donc définie à l’aide de la commande aws configure set. Pour plus d’informations, consultez Utilisation de métadonnées d’instance Amazon EC2 comme informations d’identification dans l’AWS CLI.

$ aws configure set role_arn arn:aws:iam::123456789012:role/defaultrole $ aws configure set credential_source Ec2InstanceMetadata $ aws configure set region us-west-2 $ aws configure set output json
Long-term credentials
Avertissement

Afin d’éviter les risques de sécurité, n’employez pas les utilisateurs IAM pour l’authentification lorsque vous développez des logiciels spécialisés ou lorsque vous travaillez avec des données réelles. Préférez la fédération avec un fournisseur d’identité tel que AWS IAM Identity Center.

Cet exemple concerne les informations d’identification à long terme d’AWS Identity and Access Management. Pour plus d’informations, consultez Authentification à l’aide des informations d’identification d’utilisateur IAM pour l’AWS CLI.

$ aws configure AWS Access Key ID [None]: AKIAIOSFODNN7EXAMPLE AWS Secret Access Key [None]: wJalrXUtnFEMI/K7MDENG/bPxRfiCYEXAMPLEKEY Default region name [None]: us-west-2 Default output format [None]: json

Paramètres de fichier config pris en charge

Les paramètres suivants sont pris en charge dans le fichier config. Les valeurs reprises dans le profil spécifié (ou par défaut) sont utilisées, sauf si elles sont remplacées par la présence d’une variable d’environnement de même nom ou une option de ligne de commande de même nom. Pour plus d’informations sur les paramètres de commande qui prévalent, consultez Configuration des paramètres de l’AWS CLI

Paramètres globaux

account_id_endpoint_mode

Indique s’il faut utiliser les ID de point de terminaison basés sur un compte AWS pour les appels aux Services AWS pris en charge. Pour plus d’informations sur les points de terminaison basés sur un compte, consultez Points de terminaison basés sur un compte.

Ce paramètre peut être défini sur les valeurs suivantes :

  • (par défaut) preferred : le point de terminaison doit inclure l’ID de compte s’il est disponible.

  • disabled : un point de terminaison résolu n’inclut pas d’ID de compte.

  • required : le point de terminaison doit inclure un ID de compte. Si l’ID de compte n’est pas disponible, le kit SDK génère une erreur.

Peut être remplacée par la variable d’environnement AWS_ACCOUNT_ID_ENDPOINT_MODE. Pour utiliser des points de terminaison basés sur un compte, l’ID doit être défini dans la variable d’environnement AWS_ACCOUNT_ID ou le paramètre aws_account_id.

account_id_endpoint_mode = preferred
Priorité des points de terminaison

Les paramètres de configuration du point de terminaison se trouvent à différents endroits, tels que les variables d’environnement du système ou de l’utilisateur, les fichiers de configuration AWS locaux, ou sont explicitement déclarés sur la ligne de commande en tant que paramètre. L’AWS CLI vérifie ces paramètres de point de terminaison dans un ordre particulier, et elle utilise le paramètre de point de terminaison ayant la priorité la plus élevée. Pour la liste des priorités des points de terminaison, consultez Configuration du point de terminaison et priorité des paramètres.

aws_access_key_id

Spécifie la clé d’accès AWS utilisée dans les informations d’identification pour authentifier la demande de commande. Bien qu’elle puisse être stockée dans le fichier config, nous vous recommandons de la stocker dans le fichier credentials.

Peut être remplacée par la variable d’environnement AWS_ACCESS_KEY_ID. Vous ne pouvez pas spécifier l’ID de clé d’accès sous forme d’option de ligne de commande.

aws_access_key_id = AKIAIOSFODNN7EXAMPLE
aws_account_id

Indique l’ID du point de terminaison basé sur un compte AWS à utiliser pour les appels aux Services AWS pris en charge. Pour plus d’informations sur les points de terminaison basés sur un compte, consultez Points de terminaison basés sur un compte.

Peut être remplacée par la variable d’environnement AWS_ACCOUNT_ID. La variable d’environnement AWS_ACCOUNT_ID_ENDPOINT_MODE ou le paramètre account_id_endpoint_mode doit être défini(e) sur preferred ou required pour l’utilisation de ce paramètre.

aws_account_id = 123456789EXAMPLE
Priorité des points de terminaison

Les paramètres de configuration du point de terminaison se trouvent à différents endroits, tels que les variables d’environnement du système ou de l’utilisateur, les fichiers de configuration AWS locaux, ou sont explicitement déclarés sur la ligne de commande en tant que paramètre. L’AWS CLI vérifie ces paramètres de point de terminaison dans un ordre particulier, et elle utilise le paramètre de point de terminaison ayant la priorité la plus élevée. Pour la liste des priorités des points de terminaison, consultez Configuration du point de terminaison et priorité des paramètres.

aws_secret_access_key

Spécifie la clé secrète AWS utilisée dans les informations d’identification pour authentifier la demande de commande. Bien qu’elle puisse être stockée dans le fichier config, nous vous recommandons de la stocker dans le fichier credentials.

Peut être remplacée par la variable d’environnement AWS_SECRET_ACCESS_KEY. Vous ne pouvez pas spécifier la clé d’accès secrète sous forme d’option de ligne de commande.

aws_secret_access_key = wJalrXUtnFEMI/K7MDENG/bPxRfiCYEXAMPLEKEY
aws_session_token

Spécifie un jeton de session AWS. Un jeton de session n’est nécessaire que si vous spécifiez manuellement des informations d’identification de sécurité temporaires. Bien qu’elle puisse être stockée dans le fichier config, nous vous recommandons de la stocker dans le fichier credentials.

Peut être remplacée par la variable d’environnement AWS_SESSION_TOKEN. Vous ne pouvez pas spécifier le jeton de session sous forme d’option de ligne de commande.

aws_session_token = AQoEXAMPLEH4aoAH0gNCAPyJxz4BlCFFxWNE1OPTgk5TthT+FvwqnKwRcOIfrRh3c/LTo6UDdyJwOOvEVPvLXCrrrUtdnniCEXAMPLE/IvU1dYUg2RVAJBanLiHb4IgRmpRV3zrkuWJOgQs8IZZaIv2BXIa2R4Olgk
ca_bundle

Spécifie un ensemble de certificat CA (un fichier avec l’extension .pem) qui est utilisé pour vérifier les certificats SSL.

Peut être remplacée par la variable d’environnement AWS_CA_BUNDLE ou l’option de ligne de commande --ca-bundle.

ca_bundle = dev/apps/ca-certs/cabundle-2019mar05.pem
cli_auto_prompt

Active l’invite automatique pour la version 2 de l’AWS CLI. Deux paramètres peuvent être utilisés :

  • on utilise le mode d’invite automatique complet chaque fois que vous essayez d’exécuter une commande aws. Cela inclut le fait d’appuyer sur ENTRÉE après la saisie d’une commande complète ou incomplète.

    cli_auto_prompt = on
  • on-partial utilise le mode d’invite automatique partiel. Si une commande est incomplète ou ne peut pas être exécutée en raison d’erreurs de validation côté client, l’invite automatique est utilisée. Ce mode est particulièrement utile si vous avez des scripts ou des dossiers d’exploitation préexistants, ou si vous souhaitez uniquement être automatiquement invité à entrer des commandes que vous ne connaissez pas au lieu d’être invité à chaque commande.

    cli_auto_prompt = on-partial

Vous pouvez remplacer ce paramètre en utilisant la variable d’environnement aws_cli_auto_prompt ou les paramètres de ligne de commande --cli-auto-prompt et --no-cli-auto-prompt.

Pour plus d’informations sur la fonctionnalité d’invite automatique de la version 2 de l’AWS CLI, consultez Activation et utilisation des invites de commande dans l’AWS CLI.

cli_binary_format

Spécifie comment l’AWS CLI version 2 interprète les paramètres d’entrée binaire. Cette option peut avoir l’une des valeurs suivantes :

  • base64 : il s’agit de la valeur par défaut. Un paramètre d’entrée qui est saisi comme un objet BLOB accepte une chaîne codée en base64. Pour transmettre le contenu binaire réel, placez le contenu dans un fichier et indiquez le chemin d’accès et le nom du fichier avec le préfixe fileb:// comme valeur du paramètre. Pour transmettre du texte codé en base64 contenu dans un fichier, indiquez le chemin d’accès et le nom du fichier avec le préfixe file:// comme valeur du paramètre.

  • raw-in-base64-out : valeur par défaut pour la version 1 de l’AWS CLI. Si la valeur du paramètre est raw-in-base64-out, les fichiers référencés à l’aide du préfixe file:// sont lus sous forme de texte, puis l’AWS CLI essaie de les coder en binaire.

Cette entrée n’a pas de variable d’environnement équivalente. Vous pouvez spécifier la valeur sur une commande seule à l’aide du paramètre --cli-binary-format raw-in-base64-out.

cli_binary_format = raw-in-base64-out

Si vous référencez une valeur binaire dans un fichier en utilisant la notation de préfixe fileb://, l’AWS CLI s’attend toujours à ce que le fichier contienne du contenu binaire brut et ne tente pas de convertir la valeur.

Si vous référencez une valeur binaire dans un fichier à l’aide de la notation de préfixe file://, l’AWS CLI gère le fichier en fonction du paramètre cli_binary_format actuel. Si la valeur de ce paramètre est base64 (valeur par défaut lorsqu’elle n’est pas explicitement définie), l’AWS CLI s’attend à ce que le fichier contienne du texte codé en base64. Si la valeur de ce paramètre est raw-in-base64-out, l’AWS CLI s’attend à ce que le fichier contienne du contenu binaire brut.

cli_history

Ce paramètre est désactivé par défaut. Ce paramètre active l’historique des commandes pour l’AWS CLI. Après l’activation de ce paramètre, l’AWS CLI enregistre l’historique des commandes aws.

cli_history = enabled

Vous pouvez répertorier votre historique à l’aide de la commande aws history list et utiliser la valeur command_ids obtenue dans la commande aws history show pour plus de détails. Pour plus d’informations, consultez aws history dans le guide de référence de l’AWS CLI.

cli_pager

Spécifie le programme de pager utilisé pour la sortie. Par défaut, la version 2 de l’AWS CLI renvoie toutes les sorties via le programme de pager par défaut de votre système d’exploitation.

Peut être remplacée par la variable d’environnement AWS_PAGER.

cli_pager=less
cli_timestamp_format

Spécifie le format de sortie des valeurs d’horodatage. Vous pouvez spécifier chacune des valeurs suivantes :

  • iso8601 : valeur par défaut pour la version 2 de l’AWS CLI. En cas de spécification, l’AWS CLI reformate tous les horodatages dans la sortie selon la norme ISO 8601. Les horodatages au format ISO 8601 ressemblent aux exemples suivants. L’exemple suivant montre comment l’heure est formatée en séparant la date et l’heure par un T et en incluant un Z après l’heure.

    YYYY-MM-DDThh:mm:ssZ

    Les exemples suivants montrent un horodatage utilisant le formatage précédent.

    2024-05-08T15:16:43Z
  • wire : valeur par défaut pour la version 1 de l’AWS CLI. En cas de spécification, l’AWS CLI affiche toutes les valeurs d’horodatage exactement telles qu’elles ont été reçues dans la réponse de requête HTTP.

Ce paramètre n’a pas de variable d’environnement ni d’option de ligne de commande équivalente. Ce paramètre ne modifie pas les entrées d’horodatage, uniquement le formatage des sorties.

cli_timestamp_format = iso8601
credential_process

Spécifie une commande externe que l’AWS CLI exécute pour générer ou récupérer des informations d’identification d’authentification à utiliser pour cette commande. La commande doit renvoyer les informations d’identification dans un format spécifique. Pour plus d’informations sur l’utilisation de ce paramètre, consultez Utilisation d’informations d’identification provenant d’un processus externe dans l’AWS CLI.

Cette entrée n’a pas de variable d’environnement ni d’option de ligne de commande équivalente.

credential_process = /opt/bin/awscreds-retriever --username susan
credential_source

Utilisé dans des instances ou des conteneurs Amazon EC2 pour spécifier où l’AWS CLI peut trouver les informations d’identification à utiliser pour assumer le rôle que vous avez spécifié avec le paramètre role_arn. Vous ne pouvez pas spécifier à la fois source_profile et credential_source dans le même profil.

Ce paramètre peut avoir l’une des trois valeurs suivantes :

  • Environnement : spécifie que l’AWS CLI doit récupérer les informations d’identification source à partir de variables d’environnement.

  • Ec2InstanceMetadata : spécifie que l’AWS CLI doit utiliser le rôle IAM attaché au profil d’instance EC2 pour obtenir les informations d’identification source.

  • EcsContainer : spécifie que l’AWS CLI doit utiliser le rôle IAM attaché au conteneur ECS comme informations d’identification source.

credential_source = Ec2InstanceMetadata
duration_seconds

Spécifie la durée maximale de la session de rôle, en secondes. La valeur peut être comprise entre 900 secondes (15 minutes) et la valeur de durée de session maximale définie pour le rôle (soit 43 200 au maximum). Il s’agit d’un paramètre facultatif et, par défaut, la valeur est définie sur 3600 secondes.

endpoint_url

Spécifie le point de terminaison qui est utilisé pour toutes les demandes de service. Si ce paramètre est utilisé dans la section services du fichier config, le point de terminaison est utilisé uniquement pour le service spécifié. Pour plus d’informations, consultez Définition d’un point de terminaison global pour tous les Services AWS.

L’exemple suivant utilise le point de terminaison global http://localhost:1234 et un point de terminaison spécifique au service http://localhost:4567 pour Amazon S3.

[profile dev] endpoint_url = http://localhost:1234 services = s3-specific [services s3-specific] s3 = endpoint_url = http://localhost:4567
Priorité des points de terminaison

Les paramètres de configuration du point de terminaison se trouvent à différents endroits, tels que les variables d’environnement du système ou de l’utilisateur, les fichiers de configuration AWS locaux, ou sont explicitement déclarés sur la ligne de commande en tant que paramètre. L’AWS CLI vérifie ces paramètres de point de terminaison dans un ordre particulier, et elle utilise le paramètre de point de terminaison ayant la priorité la plus élevée. Pour la liste des priorités des points de terminaison, consultez Configuration du point de terminaison et priorité des paramètres.

ignore_configure_endpoint_urls

Si cette option est activée, l’AWS CLI ignore toutes les configurations de point de terminaison personnalisées spécifiées dans le fichier config. Les valeurs valides sont true et false.

ignore_configure_endpoint_urls = true
Priorité des points de terminaison

Les paramètres de configuration du point de terminaison se trouvent à différents endroits, tels que les variables d’environnement du système ou de l’utilisateur, les fichiers de configuration AWS locaux, ou sont explicitement déclarés sur la ligne de commande en tant que paramètre. L’AWS CLI vérifie ces paramètres de point de terminaison dans un ordre particulier, et elle utilise le paramètre de point de terminaison ayant la priorité la plus élevée. Pour la liste des priorités des points de terminaison, consultez Configuration du point de terminaison et priorité des paramètres.

external_id

Identifiant unique utilisé par des tiers pour assumer un rôle dans les comptes de leurs clients. Il est mappé au paramètre ExternalId dans l’opération AssumeRole. Ce paramètre n’est nécessaire que si la politique d’approbation du rôle spécifie une valeur pour ExternalId. Pour plus d’informations, consultez Procédure d’utilisation d’un ID externe lorsque vous accordez l’accès à vos ressources AWS à un tiers dans le Guide de l’utilisateur IAM.

max_attempts

Indique la valeur du nombre maximal de nouvelles tentatives utilisées par le gestionnaire de nouvelles tentatives AWS CLI, l’appel initial étant pris en compte dans la valeur max_attempts que vous fournissez.

Vous pouvez remplacer cette valeur à l’aide de la variable d’environnement AWS_MAX_ATTEMPTS.

max_attempts = 3
mfa_serial

Numéro d’identification d’un périphérique MFA à utiliser lors de l’endossement d’un rôle. Cela est obligatoire seulement si la politique d’approbation du rôle assumé inclut une condition exigeant une authentification MFA. La valeur peut être un numéro de série pour un périphérique matériel (tel que GAHT12345678) ou un Amazon Resource Name (ARN) pour un périphérique MFA virtuel (tel que arn:aws:iam::123456789012:mfa/user).

output

Spécifie le format de sortie par défaut des commandes demandées en utilisant ce profil. Vous pouvez spécifier les valeurs suivantes :

  • json : la sortie est au format d’une chaîne JSON.

  • yaml : la sortie est au format d’une chaîne YAML.

  • yaml-stream : la sortie est diffusée et au format d’une chaîne YAML. La diffusion permet de traiter plus rapidement de gros types de données.

  • text : la sortie a le format de plusieurs lignes de valeurs de chaîne séparées par des tabulations. Cela peut être utile pour transmettre la sortie à un processeur de texte, comme grep, sed ou awk.

  • table : la sortie est au format d’un tableau utilisant les caractères +|- pour délimiter les bordures des cellules. La présentation des informations est dans un format beaucoup plus lisible par l’utilisateur que les autres, mais peu pratique du point de vue programmation.

Peut être remplacée par la variable d’environnement AWS_DEFAULT_OUTPUT ou l’option de ligne de commande --output.

output = table
parameter_validation

Spécifie si le client de l’AWS CLI tente de valider les paramètres avant de les envoyer vers le point de terminaison des services AWS.

  • true : il s’agit de la valeur par défaut. Lorsque cette option est configurée, l’AWS CLI effectue une validation locale des paramètres de ligne de commande.

  • false : lorsque cette option est configurée, l’AWS CLI ne valide pas les paramètres de ligne de commande avant de les envoyer vers le point de terminaison du service AWS.

Cette entrée n’a pas de variable d’environnement ni d’option de ligne de commande équivalente.

parameter_validation = false
region

Spécifie la Région AWS à laquelle envoyer les demandes pour les commandes demandées à l’aide de ce profil.

  • Vous pouvez spécifier chacun des codes de région disponibles pour le service choisi comme répertoriés dans AWS Régions et point de terminaison dans le Référence générale d'Amazon Web Services.

  • aws_global vous permet de spécifier le point de terminaison global pour les services qui prennent en charge un point de terminaison global en plus, tels que AWS Security Token Service (AWS STS) et Amazon Simple Storage Service (Amazon S3).

Vous pouvez remplacer cette valeur à l’aide de la variable d’environnement AWS_REGION, de la variable d’environnement AWS_DEFAULT_REGION ou de l’option de ligne de commande --region.

region = us-west-2
request_checksum_calculation

Indique le moment où une somme de contrôle est calculée pour les données utiles des demandes et propose les options suivantes :

  • when_supported : (par défaut) la somme de contrôle des données utiles des demandes est calculée lorsqu’une opération indique un algorithme de somme de contrôle dans son modèle de service ou nécessite des sommes de contrôle des demandes.

  • when_required : la somme de contrôle des données utiles des demandes est calculée lorsqu’une opération nécessite des sommes de contrôle des demandes ou lorsqu’un utilisateur fournit un requestAlgorithmMember qui est modélisé par le Service AWS.

request_checksum_calculation = when_supported

La variable d’environnement AWS_REQUEST_CHECKSUM_CALCULATION remplace ce paramètre.

response_checksum_validation

Indique le moment où une somme de contrôle est validée pour les données utiles des réponses et propose les options suivantes :

  • when_supported : (par défaut) la validation de la somme de contrôle des données utiles des réponses est effectuée lorsqu’une opération indique un algorithme de réponse dans son modèle de service pris en charge par l’AWS CLI.

  • when_required : la validation de la somme de contrôle des données utiles des réponses est effectuée lorsqu’une opération indique un algorithme de réponse dans son modèle de service pris en charge par l’AWS CLI, et vous définissez le requestValidationModeMember modélisé sur ENABLED dans l’entrée de l’opération.

response_checksum_validation = when_supported

La variable d’environnement AWS_RESPONSE_CHECKSUM_VALIDATION remplace ce paramètre.

retry_mode

Spécifie le mode de nouvelle tentative utilisé par l’AWS CLI. Trois modes de nouvelle tentative sont disponibles : standard (par défaut), legacy (par défaut) et adaptive. Pour plus d’informations sur les nouvelles tentatives, consultez Nouvelles tentatives de l’AWS CLI dans l’AWS CLI.

Vous pouvez remplacer cette valeur à l’aide de la variable d’environnement AWS_RETRY_MODE.

retry_mode = standard
role_arn

Spécifie l’Amazon Resource Name (ARN) d’un rôle IAM que vous souhaitez utiliser pour exécuter les commandes d’AWS CLI. Vous devez également spécifier l’un des paramètres suivants pour identifier les informations d’identification autorisées à assumer ce rôle :

  • source_profile

  • credential_source

role_arn = arn:aws:iam::123456789012:role/role-name

La variable d’environnement AWS_ROLE_ARN remplace ce paramètre.

Pour plus d’informations sur l’utilisation des identités web, consultez Utilisation d’un rôle à l’aide d’une identité web.

role_session_name

Spécifie le nom à attacher à la session de rôle. Cette valeur est fournie au paramètre RoleSessionName lorsque l’AWS CLI appelle l’opération AssumeRole et fait partie de l’ARN utilisateur du rôle assumé : arn:aws:sts::123456789012:assumed-role/role_name/role_session_name. Ce paramètre est facultatif. Si vous ne spécifiez pas cette valeur, un nom de session est généré automatiquement. Ce nom s’affiche dans les journaux AWS CloudTrail pour les entrées associées à cette session.

role_session_name = maria_garcia_role

La variable d’environnement AWS_ROLE_SESSION_NAME remplace ce paramètre.

Pour plus d’informations sur l’utilisation des identités web, consultez Utilisation d’un rôle à l’aide d’une identité web.

services

Spécifie la configuration du service à utiliser pour votre profil.

[profile dev-s3-specific-and-global] endpoint_url = http://localhost:1234 services = s3-specific [services s3-specific] s3 = endpoint_url = http://localhost:4567

Pour plus d’informations sur la section services, consultez Type de section : services.

La variable d’environnement AWS_ROLE_SESSION_NAME remplace ce paramètre.

Pour plus d’informations sur l’utilisation des identités web, consultez Utilisation d’un rôle à l’aide d’une identité web.

sdk_ua_app_id

Un seul Compte AWS peut être utilisé par plusieurs applications clients pour passer des appels aux Services AWS. L’ID d’application identifie l’application source qui a effectué un ensemble d’appels à l’aide d’un Service AWS. Les kits AWS SDK et les services n’utilisent ni n’interprètent cette valeur autrement que pour la réintégrer dans les communications avec les clients. Par exemple, cette valeur peut être incluse dans les e-mails opérationnels pour identifier de manière unique les applications qui sont associées à la notification.

L’ID de l’application est une chaîne d’une longueur maximale de 50 caractères. Les lettres, les chiffres et les caractères spéciaux suivants sont autorisés : ! $ % & * + - . , ^ _ ` | ~ Par défaut, aucune valeur n’est attribuée.

sdk_ua_app_id = prod1

Ce paramètre peut être remplacé à l’aide de la variable d’environnement AWS_SDK_UA_APP_ID. Vous ne pouvez pas définir cette valeur en tant que paramètre de ligne de commande.

sigv4a_signing_region_set

Spécifie les régions à utiliser lors de la signature avec SigV4a à l’aide d’une liste séparée par des virgules. Si cette variable n’est pas définie, l’AWS CLI utilise la valeur par défaut utilisée par le Service AWS. Si le Service AWS n’a pas de valeur par défaut, la signature de la demande devient valide dans toutes les régions utilisant une valeur *.

sigv4a_signing_region_set = us-west-2, us-east-1

Pour plus d’informations sur SigV4a, consultez AWS Signature Version 4 pour les requêtes d’API dans le Guide de l’utilisateur IAM.

Ce paramètre peut être remplacé à l’aide de la variable d’environnement AWS_SIGV4A_SIGNING_REGION_SET. Vous ne pouvez pas définir cette valeur en tant que paramètre de ligne de commande.

source_profile

Spécifie un profil nommé avec des informations d’identification à long terme que l’AWS CLI peut utiliser pour assumer un rôle que vous avez spécifié avec le paramètre role_arn. Vous ne pouvez pas spécifier à la fois source_profile et credential_source dans le même profil.

source_profile = production-profile
sso_account_id

Spécifie l’ID de compte AWS qui contient le rôle IAM avec l’autorisation que vous souhaitez accorder à l’utilisateur IAM Identity Center associé.

Ce paramètre n’a pas de variable d’environnement ni d’option de ligne de commande.

sso_account_id = 123456789012
sso_region

Spécifie la région AWS qui contient l’hôte du portail d’accès AWS. Cette région est distincte, et peut être différente du paramètre region de l’interface de ligne de commande par défaut.

Ce paramètre n’a pas de variable d’environnement ni d’option de ligne de commande.

sso_region = us_west-2
sso_registration_scopes

Liste CSV des portées d’application à autoriser pour sso-session. Les portées autorisent l’accès aux points de terminaison autorisés par le jeton de porteur IAM Identity Center. Une portée valide est une chaîne, telle que sso:account:access. Ce paramètre ne s’applique pas à la configuration non actualisable héritée.

sso_registration_scopes = sso:account:access
sso_role_name

Nom convivial du rôle IAM qui définit les autorisations de l’utilisateur lors de l’utilisation de ce profil.

Ce paramètre n’a pas de variable d’environnement ni d’option de ligne de commande.

sso_role_name = ReadAccess
sso_start_url

Spécifie l’URL qui pointe vers le portail d’accès AWS de l’organisation. L’AWS CLI utilise cette URL pour établir une session avec le service IAM Identity Center pour authentifier ses utilisateurs. Pour rechercher l’URL de votre portail d’accès AWS, utilisez l’une des méthodes suivantes :

Ce paramètre n’a pas de variable d’environnement ni d’option de ligne de commande.

sso_start_url = https://my-sso-portal.awsapps.com/start
use_dualstack_endpoint

Permet d’utiliser des points de terminaison à double pile pour l’envoi des demandes AWS. Pour en savoir plus sur les points de terminaison à double pile, qui prennent en charge le trafic IPv4 et IPv6, consultez Utilisation des points de terminaison Dual-Stack Amazon S3 dans le Guide d’utilisateur Amazon Simple Storage Service. Les points de terminaison à double pile sont disponibles pour certains services dans certaines régions. Si aucun point de terminaison à double pile n’existe pour le service ou la Région AWS, la demande échoue. Les paramètres valides sont true et false. Par défaut, l’option est désactivée. Pour plus d’informations, consultez Éléments à définir pour permettre l’utilisation de points de terminaison à double pile pour tous les Services AWS.

Ce paramètre et use_accelerate_endpoint sont mutuellement exclusifs.

Priorité des points de terminaison

Les paramètres de configuration du point de terminaison se trouvent à différents endroits, tels que les variables d’environnement du système ou de l’utilisateur, les fichiers de configuration AWS locaux, ou sont explicitement déclarés sur la ligne de commande en tant que paramètre. L’AWS CLI vérifie ces paramètres de point de terminaison dans un ordre particulier, et elle utilise le paramètre de point de terminaison ayant la priorité la plus élevée. Pour la liste des priorités des points de terminaison, consultez Configuration du point de terminaison et priorité des paramètres.

use_fips_endpoint

Certains services AWS proposent des points de terminaison qui prennent en charge la norme FIPS (Federal Information Processing Standard) 140-2 dans certaines Régions AWS. Lorsque le service AWS prend en charge la norme FIPS, ce paramètre indique le point de terminaison FIPS que l’AWS CLI doit utiliser. Contrairement aux points de terminaison AWS standard, les points de terminaison FIPS utilisent une bibliothèque de logiciels TLS conforme à la norme FIPS 140-2. Ces points de terminaison peuvent être requis par les entreprises qui interagissent avec le gouvernement des États-Unis. Pour plus d’informations, consultez Éléments à définir afin de permettre l’utilisation de points de terminaison FIPS pour tous les Services AWS.

Si ce paramètre est activé, mais qu’il n’existe pas de point de terminaison FIPS pour le service dans votre Région AWS, la commande AWS risque d’échouer. Dans ce cas, indiquez manuellement le point de terminaison à utiliser dans la commande à l’aide de l’option --endpoint-url ou utilisez des points de terminaison spécifiques aux services.

Priorité des points de terminaison

Les paramètres de configuration du point de terminaison se trouvent à différents endroits, tels que les variables d’environnement du système ou de l’utilisateur, les fichiers de configuration AWS locaux, ou sont explicitement déclarés sur la ligne de commande en tant que paramètre. L’AWS CLI vérifie ces paramètres de point de terminaison dans un ordre particulier, et elle utilise le paramètre de point de terminaison ayant la priorité la plus élevée. Pour la liste des priorités des points de terminaison, consultez Configuration du point de terminaison et priorité des paramètres.

web_identity_token_file

Spécifie le chemin d’accès à un fichier qui contient un jeton d’accès OAuth 2.0 ou un jeton d’identification OpenID Connect fourni par un fournisseur d’identité. L’AWS CLI charge le contenu de ce fichier et le transmet en tant qu’argument WebIdentityToken à l’opération AssumeRoleWithWebIdentity.

La variable d’environnement AWS_WEB_IDENTITY_TOKEN_FILE remplace ce paramètre.

Pour plus d’informations sur l’utilisation des identités web, consultez Utilisation d’un rôle à l’aide d’une identité web.

tcp_keepalive

Spécifie si le client de l’AWS CLI utilise des paquets TCP keep-alive.

Cette entrée n’a pas de variable d’environnement ni d’option de ligne de commande équivalente.

tcp_keepalive = false

Paramètres de commandes personnalisées S3

Amazon S3 prend en charge plusieurs paramètres qui configurent l’exécution d’opérations Amazon S3 par l’AWS CLI. Certains s’appliquent à toutes les commandes S3 dans les deux espaces de noms s3api et s3. D’autres sont spécifiques aux commandes « personnalisées » S3 qui abstraient des opérations courantes et font plus qu’un mappage individuel avec une opération d’API. Les commandes de transfert aws s3 cp, sync, mv et rm ont des paramètres supplémentaires que vous pouvez utiliser pour contrôler les transferts S3.

Toutes ces options peuvent être configurées en spécifiant le paramètre imbriqué s3 dans votre fichier config. Chaque paramètre est en retrait sur sa propre ligne.

Note

Ces paramètres sont entièrement facultatifs. Vous devriez pouvoir utiliser les commandes de transfert aws s3 sans configurer aucun de ces paramètres. Ces paramètres sont fournis pour vous permettre d’optimiser les performances ou pour prendre en compte l’environnement spécifique dans lequel vous exécutez ces commandes aws s3.

Ces paramètres sont tous définis sous une clé s3 de niveau supérieur dans le fichier config, comme illustré dans l’exemple suivant pour le profil development.

[profile development] s3 = max_concurrent_requests = 20 max_queue_size = 10000 multipart_threshold = 64MB multipart_chunksize = 16MB max_bandwidth = 50MB/s use_accelerate_endpoint = true addressing_style = path

Les paramètres suivants s’appliquent à n’importe quelle commande S3 dans les espaces de noms s3 et s3api.

addressing_style

Spécifie le type d’adressage à utiliser. Il vérifie si le nom du compartiment figure dans le nom d’hôte ou fait partie de l’URL. Les valeurs valides sont path, virtual et auto. La valeur par défaut est auto.

Il existe deux styles de création d’un point de terminaison Amazon S3. Le premier est appelé virtual et inclut le nom du compartiment dans le nom d’hôte. Par exemple : https://bucketname.s3.amazonaws.com. Sinon, avec le style path, vous traitez le nom du compartiment comme s’il s’agissait d’un chemin d’accès dans l’URI : par exemple, https://s3.amazonaws.com/bucketname. La valeur par défaut dans l’interface de ligne de commande consiste à utiliser auto, qui tente d’utiliser le style virtual chaque fois que possible, mais bascule, au besoin, sur le style path. Par exemple, si le nom de votre compartiment n’est pas compatible DNS, ce nom ne peut pas faire partie du nom d’hôte et doit être dans le chemin d’accès. Avec auto, l’interface de ligne de commande détecte cette condition et passe automatiquement au style path. Si vous définissez le type d’adressage sur path, vous devez ensuite vous assurer que la région AWS que vous avez configurée dans l’AWS CLI correspond à la région de votre compartiment.

payload_signing_enabled

Spécifie s’il convient de signer SHA256 les charges utiles sigv4. Par défaut, cette option est désactivée pour les chargements de streaming (UploadPart et PutObject) lors de l’utilisation de https. Par défaut, cette option est définie sur false pour les chargements de streaming (UploadPart et PutObject), mais uniquement si un ContentMD5 est présent (il est générée par défaut) et sir le point de terminaison utilise le protocole HTTPS.

Si la valeur est true, les requêtes S3 reçoivent du contenu de validation supplémentaire sous la forme d’une somme de contrôle SHA256 qui est calculée automatiquement et incluse dans la signature de la requête. Si la valeur est false, la somme de contrôle n’est pas calculée. La désactivation peut s’avérer utile pour réduire la surcharge en termes de performances générée par le calcul de la somme de contrôle.

use_accelerate_endpoint

Utilisez le point de terminaison Amazon S3 Accelerate pour toutes les commandes s3 et s3api. La valeur par défaut est false. Ce paramètre et use_dualstack_endpoint sont mutuellement exclusifs.

Si la valeur est true, l’AWS CLI dirige toutes les demandes Amazon S3 vers le point de terminaison S3 Accelerate à l’adresse s3-accelerate.amazonaws.com. Pour utiliser ce point de terminaison, vous devez activer votre compartiment pour utiliser S3 Accelerate. Toutes les requêtes sont envoyées en utilisant le style virtuel de l’adressage de compartiment : my-bucket.s3-accelerate.amazonaws.com. Les requêtes ListBuckets, CreateBucket et DeleteBucket ne sont pas envoyées au point de terminaison S3 Accelerate, car celui-ci ne prend pas en charge ces opérations. Ce comportement peut également être défini sur si le paramètre --endpoint-url est défini sur https://s3-accelerate.amazonaws.com ou http://s3-accelerate.amazonaws.com pour toute commande s3api ou s3.

use_dualstack_endpoint

Permet d’utiliser des points de terminaison à double pile pour l’envoi des demandes s3 et s3api. Pour en savoir plus sur les points de terminaison à double pile, qui prennent en charge le trafic IPv4 et IPv6, consultez Utilisation des points de terminaison Dual-Stack Amazon S3 dans le Guide d’utilisateur Amazon Simple Storage Service. Les points de terminaison à double pile sont disponibles pour certains services dans certaines régions. Si aucun point de terminaison à double pile n’existe pour le service ou la Région AWS, la demande échoue. Les paramètres valides sont true et false. Par défaut, l’option est désactivée. Pour plus d’informations, consultez Éléments à définir pour permettre l’utilisation de points de terminaison à double pile pour tous les Services AWS.

Ce paramètre et use_accelerate_endpoint sont mutuellement exclusifs.

Les paramètres suivants ne s’appliquent qu’aux commandes de l’ensemble de commandes de l’espace de noms s3.

max_bandwidth

Spécifie la bande passante maximale consommable pour le chargement et le téléchargement de données depuis et vers Amazon S3. La valeur par défaut est sans limite.

Cela limite la bande passante maximale que les commandes S3 peuvent utiliser pour transférer des données depuis et vers Amazon S3. Cette valeur ne s’applique qu’aux chargements et aux téléchargements ; elle ne s’applique pas aux copies ni aux suppressions. La valeur est exprimée en octets par seconde. La valeur peut être spécifiée comme suit :

  • Un entier. Par exemple, 1048576 définit l’utilisation maximale de bande passante à 1 méga-octet par seconde.

  • Un entier suivi d’un suffixe de débit. Vous pouvez spécifier des suffixes de débit en utilisant : KB/s, MB/s, ou GB/s. Par exemple, 300KB/s, 10MB/s.

En général, nous vous recommandons de commencer par essayer de réduire la consommation de bande passante en diminuant max_concurrent_requests. Si cela ne limite pas la consommation de bande passante de façon adéquate pour le débit souhaité, vous pouvez utiliser le paramètre max_bandwidth pour limiter davantage la consommation de bande passante. Il en est ainsi parce que max_concurrent_requests contrôle le nombre de threads en cours d’exécution. Si à la place vous baissez d’abord max_bandwidth, mais conservez une valeur max_concurrent_requests élevée, cela peut conduire certains threads à attendre inutilement. Cela peut entraîner une consommation excessive de ressources et des délais d’expiration de connexion.

max_concurrent_requests

Spécifie le nombre maximal de requêtes simultanées. La valeur par défaut est 10.

Le commandes de transfert aws s3 sont multithread. À tout moment, plusieurs requêtes Amazon S3 peuvent être en cours d’exécution. Par exemple, lorsque vous utilisez la commande aws s3 cp localdir s3://bucket/ --recursive pour charger des fichiers dans un compartiment S3, l’AWS CLI peut charger les fichiers localdir/file1, localdir/file2 et localdir/file3 en parallèle. Le paramètre max_concurrent_requests spécifie le nombre maximal d’opérations de transfert qui peuvent s’exécuter en même temps.

Vous devrez peut-être modifier cette valeur pour quelques raisons :

  • Réduire cette valeur : dans certains environnements, la valeur par défaut de 10 requêtes simultanées peut submerger un système. Cela peut entraîner des délais de connexion ou réduire la réactivité du système. La réduction de cette valeur rend les commandes de transfert S3 moins gourmandes en ressources. Le compromis est que les transferts S3 peuvent prendre plus de temps à s’exécuter. La réduction de cette valeur peut s’avérer nécessaire si vous utilisez un outil pour limiter la bande passante.

  • Augmenter cette valeur : dans certains scénarios, il se peut que vous souhaitiez que les transferts Amazon S3 se terminent le plus rapidement possible, en utilisant autant de bande passante du réseau que nécessaire. Dans ce scénario, le nombre par défaut de requêtes simultanées peut ne pas être suffisant pour utiliser toute la bande passante du réseau disponible. L’augmentation de cette valeur peut améliorer le temps nécessaire pour effectuer un transfert Amazon S3.

max_queue_size

Spécifie le nombre maximal de tâches dans la file d’attente de tâches. La valeur par défaut est 1000.

L’AWS CLI utilise en interne un modèle où elle place en file d’attente des tâches Amazon S3 qui sont ensuite exécutées par des consommateurs dont le nombre est limité par max_concurrent_requests. Une tâche correspond généralement à une seule opération Amazon S3. Par exemple, une tâche pourrait être PutObjectTask, GetObjectTask ou UploadPartTask. La vitesse à laquelle les tâches sont ajoutées à la file d’attente peut être largement plus rapide que celle à laquelle les consommateurs terminent les tâches. Pour éviter une croissance sans limite, la taille de la file d’attente de tâches est limitée à une valeur spécifique. Ce paramètre modifie la valeur de ce nombre maximal.

En général, vous n’avez pas besoin de modifier ce paramètre. Ce paramètre correspond également au nombre de tâches que l’AWS CLI sait devoir être exécutées. Cela signifie que, par défaut, l’AWS CLI ne peut voir que 1 000 tâches à venir. L’augmentation de cette valeur signifie que l’AWS CLI peut connaître plus rapidement le nombre total de tâches nécessaires, en supposant que la vitesse de mise en file d’attente soit supérieure à celle d’achèvement des tâches. Le compromis est qu’une valeur max_queue_size plus importante nécessite plus de mémoire.

multipart_chunksize

Spécifie la taille de bloc que l’AWS CLI utilise pour les transferts partitionnés de fichiers individuels. La valeur par défaut est 8 Mo, avec un minimum de 5 Mo.

Lorsqu’un transfert de fichier dépasse la valeur multipart_threshold, l’AWS CLI divise le fichier en blocs de cette taille. Cette valeur peut être spécifiée en utilisant la même syntaxe que multipart_threshold, comme le nombre d’octets sous la forme d’un entier ou en utilisant une taille et un suffixe.

multipart_threshold

Spécifie le seuil de taille que l’AWS CLI utilise pour les transferts partitionnés de fichiers individuels. La valeur par défaut est de 8 Mo.

Lors du chargement, du téléchargement ou de la copie d’un fichier, les commandes Amazon S3 passent en opérations partitionnées si le fichier dépasse cette taille. Vous pouvez spécifier cette valeur de deux manières :

  • La taille de fichier en octets. Par exemple, 1048576.

  • La taille de fichier avec un suffixe de taille. Vous pouvez utiliser KB, MB, GB ou TB. Par exemple, 10MB, 1GB.

    Note

    S3 peut imposer des contraintes sur les valeurs valides utilisables pour les opérations partitionnées. Pour plus d’informations, consultez la documentation relative au chargement partitionné S3 dans le Guide de l’utilisateur Amazon Simple Storage Service.