Perfiles con nombre - AWS Command Line Interface

Python 2.7, 3.4 y 3.5 están en desuso paraAWS CLIVersión 1. Para obtener más información, consulteAWS CLISección 1 deAcerca de laAWS CLIversiones.

Las traducciones son generadas a través de traducción automática. En caso de conflicto entre la traducción y la version original de inglés, prevalecerá la version en inglés.

Perfiles con nombre

Un perfil con nombre es una colección de configuraciones y credenciales que se pueden aplicar a un comando de la AWS CLI. Cuando especifica un perfil para ejecutar un comando, se usan la configuración y las credenciales para ejecutar dicho comando. Puede especificar unodefaultPerfil utilizado cuando no se hace referencia explícita a ningún perfil. Otros perfiles tienen nombres que se pueden especificar como parámetro en la línea de comandos para comandos individuales. Alternativamente, puede especificar un perfil en una variable de entorno (AWS_PROFILE) que esencialmente anula el perfil predeterminado para los comandos que se ejecutan en esa sesión.

La AWS CLI admite el uso de cualquiera de los perfiles con nombre almacenados en los archivos config y credentials. Puede configurar perfiles adicionales utilizando aws configure con la opción --profile o añadiendo entradas a los archivos config y credentials.

En el siguiente ejemplo, se muestra un archivo credentials con dos perfiles. El primero[predeterminada]Cuando se ejecuta unAWS CLIsin perfil. El segundo se utiliza cuando se ejecuta unAWS CLIComando de la con la--profile user1Parámetro.

~/.aws/credentials (Linux y Mac) o %USERPROFILE%\.aws\credentials (Windows)

[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

Cada perfil puede especificar credenciales diferentes (puede que sean de usuarios de IAM diferentes) y también puede especificar diferentesAWSRegiones y formatos de salida.

~/.aws/config (Linux y Mac) o %USERPROFILE%\.aws\config (Windows)

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

LacredentialsEl archivo usa un formato de denominación diferente que elAWS CLI configpara perfiles con nombre. Incluya el prefijo "profile" únicamente cuando configure un perfil con nombre en el archivo config. no utilice la palabra profile cuando cree una entrada en el archivo credentials.

Uso de perfiles con la AWS CLI

Para usar un perfil con nombre, añada la opción --profile profile-name a su comando. En el siguiente ejemplo, se enumeran todas las instancias de Amazon EC2 utilizando las credenciales y la configuración definidas en lauser1de los archivos de ejemplo anteriores.

$ aws ec2 describe-instances --profile user1

Si desea utilizar un perfil con nombre para varios comandos, puede evitar especificar el perfil en cada comando configurando la variable de entorno AWS_PROFILE en la línea de comandos.

Linux o macOS

$ export AWS_PROFILE=user1

Windows

C:\> setx AWS_PROFILE user1

El uso de set para configurar una variable de entorno cambia el valor usado hasta que finalice la sesión de símbolo de sistema actual o hasta que otorgue a la variable un valor diferente.

El uso de setx para establecer una variable de entorno cambia el valor de todos los shells de comandos que cree después de ejecutar el comando. No afecta a ningún shell de comandos que ya se esté ejecutando en el momento en que ejecuta el comando. Cierre y reinicie el shell de comandos para ver los efectos del cambio.

La configuración de la variable de entorno cambia el perfil predeterminado hasta que finalice la sesión del shell, o hasta que otorgue a la variable a un valor diferente. Puede hacer que las variables de entorno persistan en sesiones futuras poniéndolas en el script de inicio del shell. Para obtener más información, consulte Variables de entorno para configurar la AWS CLI.

nota

Si especifica un perfil con --profile en un comando individual, eso anula la configuración especificada en la variable de entorno sólo para ese comando.