Perfiles con nombre para AWS CLI
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. Múltiples perfiles con nombre se pueden almacenar en archivos de config
y credentials
.
Puede asignar un perfil como default
que se use cuando no haya un perfil concreto especificado. Otros perfiles tienen nombres que se pueden especificar como parámetro en la línea de comandos para comandos individuales. También puede especificar un perfil en una variable de entorno AWS_PROFILE
que invalida el perfil predeterminado para los comandos que se ejecutan en esa sesión.
Creación de perfiles con nombre
Puede configurar perfiles adicionales utilizando aws configure con la opción --profile
o agregando entradas de forma manual a los archivos de config
y credentials
. Para obtener más información sobre los archivos de config
y credentials
, consulte Opciones de los archivos de configuración y credenciales.
Perfil de credenciales
En el siguiente ejemplo, se muestra un archivo credentials
con dos perfiles. El primero [predeterminado] se utiliza cuando se ejecuta un comando de la AWS CLI sin perfil. El segundo se utiliza cuando se ejecuta un comando de la AWS CLI con el parámetro --profile user1
.
El archivo credentials
utiliza un formato de nomenclatura diferente del archivo de la config
de AWS CLI para los perfiles con nombre. no utilice la palabra profile
cuando cree una entrada en el archivo credentials
.
~/.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
Perfil de configuración
Cada perfil puede usar credenciales diferentes específicas (puede que sean de usuarios de IAM diferentes) y también puede especificar diferentes regiones y formatos de salida de AWS. Al nombrar el perfil en un archivo de config
, incluya la palabra prefijo "profile
".
En el ejemplo siguiente se especifica la información de región y salida para los perfiles default
y user1
.
~/.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
Usar perfiles con nombre
Para usar un perfil con nombre, añada la opción --profile
a su comando. En el siguiente ejemplo se muestran todas las instancias de Amazon EC2 con las credenciales y la configuración definidas en el perfil profile-name
user1
de 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
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 .
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.