Variables d'environnement pour configurer l’AWS CLI. - AWS Command Line Interface

Python 2.7, 3.4 et 3.5 sont obsolètes pour leAWS CLIversion 1. Pour en savoir plus, consultez leAWS CLIsection version 1 deÀ propos de laAWS CLIversions.

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.

Variables d'environnement pour configurer l’AWS CLI.

Les variables d'environnement représentent un autre moyen de spécifier les options de configuration et les informations d'identification, et peuvent être utiles pour les scripts ou la définition temporaire d'un profil nommé comme profil par défaut.

Note

Vous ne pouvez pas spécifier l'authentification AWS Single Sign-On (AWS SSO) à l'aide de variables d'environnement. Au lieu de cela, vous devez utiliser un profil nommé dans le fichier de configuration partagé .aws/config. Pour de plus amples informations, veuillez consulter Configuration de l'AWS CLI pour utiliser AWS Single Sign-On .

Priorité d'options

  • Si vous spécifiez une option à l'aide d'une des variables d'environnement décrites dans cette rubrique, elle remplace toute valeur chargée à partir d'un profil dans le fichier de configuration.

  • Si vous spécifiez une option à l'aide d'un paramètre dans l'ongletAWS CLI, elle remplace toute valeur à partir de la variable d'environnement correspondante ou d'un profil dans le fichier de configuration.

Pour plus d'informations sur la priorité et la façon dont l'AWS CLI détermine les informations d'identification à utiliser, consultez Configuration des paramètres et des priorités.

Comment définir les variables d'environnement

Les exemples suivants montrent comment vous pouvez configurer des variables d'environnement pour l'utilisateur par défaut.

Linux or macOS
$ export AWS_ACCESS_KEY_ID=AKIAIOSFODNN7EXAMPLE $ export AWS_SECRET_ACCESS_KEY=wJalrXUtnFEMI/K7MDENG/bPxRfiCYEXAMPLEKEY $ export AWS_DEFAULT_REGION=us-west-2

La définition de la variable d'environnement permet de modifier la valeur utilisée jusqu'à la fin de votre session shell, ou jusqu'à ce que vous définissiez la variable sur une autre valeur. Vous pouvez rendre les variables persistantes dans de futures sessions en les définissant dans votre script de démarrage de shell.

Windows Command Prompt
C:\> setx AWS_ACCESS_KEY_ID AKIAIOSFODNN7EXAMPLE C:\> setx AWS_SECRET_ACCESS_KEY wJalrXUtnFEMI/K7MDENG/bPxRfiCYEXAMPLEKEY C:\> setx AWS_DEFAULT_REGION us-west-2

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 utilisée dans la session d'invite de commande en cours et toutes les sessions d'invite de commande que vous créez après l'exécution de la commande. Cela n'affecte pas les autres shells de commande qui sont déjà en cours d'exécution lorsque vous exécutez la commande.

PowerShell
PS C:\> $Env:AWS_ACCESS_KEY_ID="AKIAIOSFODNN7EXAMPLE" PS C:\> $Env:AWS_SECRET_ACCESS_KEY="wJalrXUtnFEMI/K7MDENG/bPxRfiCYEXAMPLEKEY" PS C:\> $Env:AWS_DEFAULT_REGION="us-west-2"

Si vous définissez une variable d'environnement à l'invite de commande PowerShell, comme illustré dans les exemples précédents, la valeur est enregistrée uniquement pour la durée de la session en cours. Pour que la définition de la variable d'environnement perdure sur l'ensemble des sessions d'invite de commande et PowerShell, conservez-la à l'aide de l’application System (Système) du panneau de configuration. Vous pouvez également définir la variable pour toutes les futures sessions PowerShell en les ajoutant à votre profil PowerShell. Consultez la documentation PowerShell pour plus d'informations sur le stockage des variables d'environnement ou leur conservation dans les sessions.

Variables d'environnement prises en charge par l’AWS CLI

L'AWS CLI prend en charge les variables d'environnement suivantes.

AWS_ACCESS_KEY_ID

Spécifie unAWSassociée à un utilisateur ou à un rôle IAM.

Si elle est définie, cette variable d'environnement remplace la valeur du paramètre de profil aws_access_key_id. Vous ne pouvez pas spécifier l'ID de clé d'accès en utilisant une option de ligne de commande.

AWS_CA_BUNDLE

Spécifie le chemin d'accès vers un ensemble de certificats à utiliser pour la validation des certificats HTTPS.

Si elle est définie, cette variable d'environnement remplace la valeur du paramètre de profil ca_bundle. Vous pouvez remplacer cette variable d'environnement à l'aide du paramètre de ligne de commande --ca-bundle.

AWS_CLI_AUTO_PROMPT
Cette fonction est disponible uniquement avec l'AWS CLIversion 2.

La fonctionnalité suivante n'est disponible que si vous utilisez l'AWS CLIversion 2. Elle n'est pas disponible si vous exécutezAWS CLIversion 1. Pour de plus amples informations sur l'installation de la version 2, consultez Installation, mise à jour et désinstallation de l’AWS CLIversion 2.

Active l'invite automatique pour la commandeAWS CLIversion 2. Il y a deux paramètres qui peuvent être utilisés :

  • onutilise le mode d'invite automatique complète chaque fois que vous tentez d'exécuter unawscommande. Cela inclut appuyer surENTRÉEaprès une commande complète ou incomplète.

    aws_cli_auto_prompt=on
  • on-partialutilise le mode d'invite automatique partielle. 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 préexistants, des runbooks, ou si vous voulez seulement être invité automatiquement pour des commandes que vous ne connaissez pas plutôt que pour chaque commande.

    aws_cli_auto_prompt=on-partial

Si elle est définie, cette variable d'environnement remplace la valeur du paramètrecli_auto_promptParamétrage de profil. Vous pouvez remplacer cette variable d'environnement à l'aide de l'--cli-auto-promptand--no-cli-auto-promptParamètres de ligne de commande.

Pour plus d'informations sur leAWS CLIversion 2, voirHAVANTAWS CLIvous invite à entrer des commandes.

AWS_CLI_FILE_ENCODING

AWS CLIversion 2 uniquement. Spécifie l'encodage utilisé pour les fichiers texte. Par défaut, l'encodage correspond à vos paramètres régionaux. Pour définir un encodage différent des paramètres régionaux, utilisez la variable d'environnement aws_cli_file_encoding. Par exemple, si vous utilisez Windows avec l'encodage CP1252 par défaut, le paramètre aws_cli_file_encoding=UTF-8 définit l'interface de ligne de commande de sorte que celle-ci ouvre les fichiers texte au format UTF-8.

AWS_CONFIG_FILE

Spécifie l'emplacement du fichier que l'AWS CLI utilise pour stocker les profils de configuration. Le chemin par défaut est ~/.aws/config.

Vous ne pouvez pas spécifier cette valeur dans un paramètre de profil nommé ou à l'aide d'un paramètre de ligne de commande.

AWS_DEFAULT_OUTPUT

Spécifie le format de sortie à utiliser.

Si elle est définie, cette variable d'environnement remplace la valeur du paramètre de profil output. Vous pouvez remplacer cette variable d'environnement à l'aide du paramètre de ligne de commande --output.

AWS_DEFAULT_REGION

Spécifie la région AWS à laquelle envoyer la demande.

Si elle est définie, cette variable d'environnement remplace la valeur du paramètre de profil region. Vous pouvez remplacer cette variable d'environnement à l'aide du paramètre de ligne de commande --region.

AWS_EC2_METADATA_DISABLED

Désactive l'utilisation du service des métadonnées d'instance Amazon EC2 (IMDS).

Si elle est définie sur true, les informations d'identification ou la configuration de l'utilisateur (comme la région) ne sont pas demandées à IMDS.

AWS_MAX_ATTEMPTS

Spécifie une valeur de tentatives de relance maximalesAWS CLIutilise, où l'appel initial compte dans la valeur que vous fournissez. Pour plus d'informations sur les nouvelles tentatives, consultez la section AWS CLIretries.

Si elle est définie, cette variable d'environnement remplace la valeur du paramètre de profilsmax_attempts.

AWS_PAGER

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

Pour désactiver toute utilisation d'un programme de pagination externe, définissez la variable sur une chaîne vide.

Si elle est définie, cette variable d'environnement remplace la valeur du paramètre de profil cli_pager.

AWS_PROFILE

Spécifie le nom duAWS CLIavec les informations d'identification et les options à utiliser. Il peut s'agir du nom d'un profil stocké dans un fichier credentials ou config, ou de la valeur default pour utiliser le profil par défaut.

Si elle est définie, cette variable d'environnement remplace le comportement d'utilisation du profil nommé [default] dans le fichier de configuration. Vous pouvez remplacer cette variable d'environnement à l'aide du paramètre de ligne de commande --profile.

AWS_RETRY_MODE

Spécifie le mode de nouvelle tentativeAWS CLIUtilisations. Trois modes de relance sont disponibles : hérité (par défaut), standard et adaptatif. Pour plus d'informations sur les nouvelles tentatives, consultez la section AWS CLIretries.

Si elle est définie, cette variable d'environnement remplace la valeur du paramètre de profilsretry_mode.

AWS_ROLE_ARN

Spécifie l'Amazon Resource Name (ARN) du rôle IAM avec fournisseur d'identité web que vous souhaitez utiliser pour exécuter l'AWS CLIcommandes.

Utilisé avec leAWS_WEB_IDENTITY_TOKEN_FILEandAWS_ROLE_SESSION_NAMEVariables d'environnement.

Si elle est définie, cette variable d'environnement remplace la valeur du paramètre de profil role_arn. Vous ne pouvez pas spécifier un nom de session de rôle en tant que paramètre de ligne de commande.

Note

Cette variable d'environnement s'applique uniquement à un rôle assumé avec fournisseur d'identité web. Elle ne s'applique pas à la configuration générale de fournisseur de rôle de responsable.

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

AWS_ROLE_SESSION_NAME

Spécifie le nom à attacher à la session de rôle. Cette valeur est fournie à l'intention desRoleSessionNamelorsque le paramètreAWS CLIappelle l'intentionAssumeRoleet 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.

Si elle est définie, cette variable d'environnement remplace la valeur du paramètre de profil role_session_name.

Utilisé avec leAWS_ROLE_ARNandAWS_WEB_IDENTITY_TOKEN_FILEVariables d'environnement.

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

Note

Cette variable d'environnement s'applique uniquement à un rôle assumé avec fournisseur d'identité web. Elle ne s'applique pas à la configuration générale de fournisseur de rôle de responsable.

AWS_SECRET_ACCESS_KEY

Indique la clé secrète associée à la clé d'accès. Il s'agit du « mot de passe » de la clé d'accès.

Si elle est définie, cette variable d'environnement remplace la valeur du paramètre de profil aws_secret_access_key. Vous ne pouvez pas spécifier l'ID de clé d'accès secrète sous forme d'option de ligne de commande.

AWS_SESSION_TOKEN

Spécifie la valeur du jeton de session requise si vous utilisez des informations d'identification de sécurité temporaires que vous avez extraites directement des opérations AWS STS. Pour plus d'informations, consultez le .Section de sortie de la commande assume-roledans leAWS CLIRéférence des commandes.

Si elle est définie, cette variable d'environnement remplace la valeur du paramètre de profil aws_session_token.

AWS_SHARED_CREDENTIALS_FILE

Spécifie l'emplacement du fichier que l'AWS CLI utilise pour stocker les clés d'accès. Le chemin par défaut est ~/.aws/credentials.

Vous ne pouvez pas spécifier cette valeur dans un paramètre de profil nommé ou à l'aide d'un paramètre de ligne de commande.

AWS_STS_REGIONAL_ENDPOINTS

Spécifie de quelle manière l'AWS CLI détermine le point de terminaison de service AWS utilisé par le client de l'AWS CLI pour parler à AWS Security Token Service (AWS STS).

  • La valeur par défaut deAWS CLILa version 1 est.legacy.

  • La valeur par défaut deAWS CLILa version 2 est.regional.

Vous pouvez spécifier l'une des deux valeurs suivantes :

  • legacy— Utilise le point de terminaison STS global,sts.amazonaws.com, pour ce qui suitAWSRégions :ap-northeast-1,ap-south-1,ap-southeast-1,ap-southeast-2,aws-global,ca-central-1,eu-central-1,eu-north-1,eu-west-1,eu-west-2,eu-west-3,sa-east-1,us-east-1,us-east-2,us-west-1, etus-west-2. Toutes les autres régions utilisent automatiquement leur point de terminaison régional respectif.

  • regional— LeAWS CLIutilise toujours l'AWS STSpour la région en cours de configuration. Par exemple, si le client est configuré pour utiliser us-west-2, tous les appels à AWS STS sont effectués vers le point de terminaison sts.us-west-2.amazonaws.com régional au lieu du point de terminaison sts.amazonaws.com global. Pour envoyer une demande au point de terminaison global lorsque ce paramètre est activé, vous pouvez définir la région sur aws-global.

AWS_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.

Utilisé avec leAWS_ROLE_ARNandAWS_ROLE_SESSION_NAMEVariables d'environnement.

Si elle est définie, cette variable d'environnement remplace la valeur du paramètre de profil web_identity_token_file.

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

Note

Cette variable d'environnement s'applique uniquement à un rôle assumé avec fournisseur d'identité web. Elle ne s'applique pas à la configuration générale de fournisseur de rôle de responsable.