Opciones de los archivos de configuración y credenciales - AWS Command Line Interface

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.

Opciones de los archivos de configuración y credenciales

Puede guardar las opciones de configuración y las credenciales que utiliza con frecuencia en archivos que son mantenidos por la AWS CLI.

Los archivos se dividen en profiles. De forma predeterminada, AWS CLI utiliza la configuración que se encuentra en el perfil nombradodefault. Para utilizar una configuración diferente, puede crear y hacer referencia a perfiles adicionales.

También es posible anular una opción individual estableciendo una de las variables de entorno compatibles o utilizando un parámetro de la línea de comandos. Para obtener más información sobre la prioridad de opciones de configuración, consulte Configure el AWS CLI.

nota

Para obtener información sobre cómo configurar las credenciales, consulte Credenciales de autenticación y acceso.

Formato de los archivos de configuración y credenciales

Los archivos config y credentials están organizados en secciones. Las secciones incluyen perfiles, sso-sessions y servicios. Una sección es una colección con nombre de configuraciones y continúa hasta que se encuentra otra línea de definición de sección. Se pueden almacenar varios perfiles y secciones en los archivos config y credentials.

Son archivos de texto sin formato que utilizan el formato siguiente:

  • Los nombres de las secciones aparecen entre corchetes [ ] como [default], [profile user1] y [sso-session].

  • Todas las entradas de una sección adoptan el formato general de setting_name=value.

  • Las líneas se pueden comentar si se inician con un carácter de almohadilla (#).

Los archivos config y credentials contienen los siguientes tipos de secciones:

Tipo de sección: profile

Las AWS CLI tiendas

En función del archivo, los nombres de la sección del perfil utilizan el formato siguiente:

  • Archivo de configuración:[default][profile user1]

  • Archivo de credenciales: [default] [user1]

    no utilice la palabra profile cuando cree una entrada en el archivo credentials.

Cada perfil puede usar credenciales diferentes y también puede especificar diferentes formatos de salida y regiones de AWS . Al asignar un nombre al perfil en un archivo config, incluya la palabra de prefijo “profile”, pero no la incluya en el archivo credentials.

En los siguientes ejemplos se muestra un archivo credentials y config con dos perfiles, región y salida especificados. El primero [predeterminado] se utiliza cuando se ejecuta un comando de la AWS CLI sin un perfil especificado. El segundo se usa cuando se ejecuta un AWS CLI comando con el --profile user1 parámetro.

IAM Identity Center (SSO)

Este ejemplo es para AWS IAM Identity Center. Para obtener más información, consulte Configure las credenciales del proveedor de token de IAM Identity Center AWS CLI para utilizar con la actualización automática de la autenticación.

Archivo de credenciales

El archivo credentials no se utiliza para este método de autenticación.

Archivo de configuración

[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)

Este ejemplo es para el método heredado de AWS IAM Identity Center. Para obtener más información, consulte Configuración heredada no actualizable para AWS IAM Identity Center.

Archivo de credenciales

El archivo credentials no se utiliza para este método de autenticación.

Archivo de configuración

[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

Este ejemplo corresponde a las credenciales de corta duración de AWS Identity and Access Management. Para obtener más información, consulte Autenticar con credenciales a corto plazo.

Archivo de credenciales

[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

Archivo de configuración

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

Este ejemplo se usa para asumir un rol de IAM. Los perfiles que utilizan roles de IAM extraen las credenciales de otro perfil y, a continuación, aplican los permisos de rol de IAM. En los siguientes ejemplos, default es el perfil de origen de las credenciales y user1 toma prestadas las mismas credenciales y, a continuación, asume un nuevo rol. Para obtener más información, consulte Usar un rol de IAM de la AWS CLI.

Archivo de credenciales

El archivo credentials depende de la autenticación que utilice su perfil de origen. En el siguiente ejemplo, el perfil de origen utiliza credenciales de corta duración.

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

Archivo de configuración

[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

Este ejemplo corresponde a las credenciales obtenidas de los metadatos de la instancia de Amazon EC2 de alojamiento. Para obtener más información, consulte Utilizar credenciales para los metadatos de instancias de Amazon EC2.

Archivo de credenciales

El archivo credentials no se utiliza para este método de autenticación.

Archivo de configuración

[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
aviso

Para evitar riesgos de seguridad, no utilice a los usuarios de IAM para la autenticación cuando desarrolle software especialmente diseñado o trabaje con datos reales. En cambio, utilice la federación con un proveedor de identidades como AWS IAM Identity Center.

Este ejemplo corresponde a las credenciales de larga duración de AWS Identity and Access Management. Para obtener más información, consulte Autenticar con credenciales de usuario de IAM.

Archivo de credenciales

[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

Archivo de configuración

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

Para obtener más información y métodos adicionales de autorización y credenciales, consulte Autenticar con credenciales de usuario de IAM.

Tipo de sección: sso-session

La sso-session sección del config archivo se usa para agrupar las variables de configuración para adquirir los tokens de acceso del SSO, que luego se pueden usar para adquirir AWS credenciales. Se utilizan las siguientes configuraciones:

Defina una sección sso-session y asóciela a un perfil. sso_region ysso_start_url deben establecerse en la sección sso-session. Normalmente, sso_account_id y sso_role_name deben establecerse en la sección profile para que el SDK pueda solicitar las credenciales de SSO.

En el siguiente ejemplo se configura el SDK para que solicite credenciales de SSO y admita la actualización automática de tokens:

[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

Esto también permite reutilizar las configuraciones de sso-session en varios perfiles:

[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

No obstante, sso_account_id y sso_role_name no son necesarios para todos los escenarios de configuración de token de SSO. Si su aplicación solo utiliza servicios de AWS que admiten la autenticación de portador, no son necesarias las credenciales de AWS tradicionales. La autenticación de portador es un esquema de autenticación HTTP que utiliza tokens de seguridad denominados tokens de portador. En este escenario, no se necesitan sso_account_id ni sso_role_name. Consulta la guía individual de tu AWS servicio para determinar si admite la autorización de un token al portador.

Además, los ámbitos de registro pueden configurarse como parte de sso-session. El alcance es un mecanismo de OAuth 2.0 para limitar el acceso de una aplicación a la cuenta de un usuario. Una solicitud puede pedir uno o varios ámbitos y el token de acceso emitido a la solicitud se limitará a los ámbitos concedidos. Estos ámbitos definen los permisos cuya autorización se solicita para el cliente OIDC registrado y los tokens de acceso recuperados por el cliente. El siguiente ejemplo establece sso_registration_scopes para proporcionar acceso para enumerar cuentas/roles:

[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

El token de autenticación se almacena en caché en el disco en el directorio ~/.aws/sso/cache con un nombre de archivo basado en el nombre de la sesión.

Para obtener más información sobre este tipo de configuración, consulte Configure las credenciales del proveedor de token de IAM Identity Center AWS CLI para utilizar con la actualización automática de la autenticación.

Tipo de sección: services

La services sección es un grupo de ajustes que configura puntos finales personalizados para las solicitudes. Servicio de AWS A continuación, se vincula un perfil a una sección de services.

[profile dev] services = my-services

La sección de services se separa en subsecciones por líneas <SERVICE> = , donde <SERVICE> es la clave del identificador de Servicio de AWS . El Servicio de AWS identificador se basa en el modelo de API, sustituyendo todos los espacios serviceId por guiones bajos y minúsculas todas las letras. Para obtener una lista de todas las claves de identificación de servicio que se van a utilizar en la sección de services, consulte Utilice puntos finales en el AWS CLI. La clave del identificador del servicio va seguida de configuraciones anidadas, cada una en su propia línea y marcada con dos espacios.

En el siguiente ejemplo, se configura el punto de conexión que se utilizará en las solicitudes realizadas al servicio de Amazon DynamoDB en la sección my-services que se utiliza en el perfil de desarrollo. Todas las líneas inmediatamente siguientes que estén sangradas se incluyen en esa subsección y se aplican a ese servicio.

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

Para obtener más información sobre puntos de conexión específicos del servicio, consulte Utilice puntos finales en el AWS CLI.

Si el perfil tiene credenciales basadas en roles configuradas mediante un parámetro source_profile para la funcionalidad de asumir roles de IAM, el SDK solo usa configuraciones de servicio para el perfil especificado. No utiliza perfiles que estén vinculados a él por roles. Por ejemplo, mediante el siguiente archivo config compartido:

[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 usa el perfil B y realiza una llamada en el código a Amazon EC2, el punto de conexión se resuelve como https://profile-b-ec2-endpoint.aws. Si el código realiza una solicitud a cualquier otro servicio, la resolución del punto de conexión no seguirá ninguna lógica personalizada. El punto de conexión no se convierte en el punto de conexión global definido en el perfil A. Para que un punto de conexión global surta efecto en el perfil B, tendrá que configurar endpoint_url directamente dentro del perfil B.

¿Dónde se almacenan las opciones de configuración?

AWS CLI Almacena la información confidencial sobre las credenciales que especifique aws configure en un archivo local denominadocredentials, en una carpeta denominada .aws en su directorio principal. Las opciones de configuración menos confidenciales especificadas con aws configure se guardan en un archivo local denominado config, que también se almacena en la carpeta .aws del directorio principal.

Almacenamiento de credenciales en el archivo de configuración

Puede guardar toda la configuración de su perfil en un solo archivo, ya que AWS CLI puede leer las credenciales del config archivo. Si hay credenciales en ambos archivos para un perfil que comparte el mismo nombre, las claves del archivo de credenciales tienen prioridad. Sugerimos guardar las credenciales en los archivos credentials. Los kits de desarrollo de software (SDK) de varios lenguajes también utilizan estos archivos. Si utilizas uno de los SDK además del AWS CLI, confirma si las credenciales deben guardarse en su propio archivo.

La ubicación del directorio principal varía en función del sistema operativo, pero se hace referencia a él mediante las variables de entorno %UserProfile% en Windows y $HOME o ~ (tilde) en los sistemas basados en Unix. Puede especificar una ubicación no predeterminada para los archivos ‎configurando ‎las variables de entorno AWS_CONFIG_FILE y AWS_SHARED_CREDENTIALS_FILE en otra ruta local. Para obtener más información, consulte Variables de entorno para configurar el AWS CLI.

Cuando utilizas un perfil compartido que especifica un rol AWS Identity and Access Management (de IAM), AWS CLI llama a la AWS STS AssumeRole operación para recuperar las credenciales temporales. A continuación, se almacenan estas credenciales (en ~/.aws/cli/cache). AWS CLI Los comandos siguientes utilizan las credenciales temporales almacenadas en caché hasta que caduquen y, en ese momento, las actualizan AWS CLI automáticamente.

Usar perfiles con nombre

Si no se define explícitamente ningún perfil, se utilizará el perfil default.

Para usar un perfil con nombre, añada la opción --profile profile-name 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 user1.

$ aws ec2 describe-instances --profile user1

Si desea utilizar un perfil con nombre para varios comandos, puede evitar especificarlo en cada comando mediante el establecimiento de la variable de entorno AWS_PROFILE como el perfil predeterminado. Puede invalidar esta configuración con el parámetro --profile.

Linux or 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 el AWS CLI.

Definir y ver las opciones de configuración mediante comandos

Hay varias formas de ver y establecer las opciones de configuración mediante comandos.

aws configure

Ejecute este comando para establecer y ver rápidamente las credenciales de , la región y el formato de salida. En el ejemplo siguiente se muestran los valores de ejemplo.

$ 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

Puede establecer las credenciales o las opciones de configuración mediante aws configure set. Especifique el perfil que desea ver o modificar con la opción --profile.

Por ejemplo, el siguiente comando configura region en el perfil denominado integ.

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

Para quitar una opción, utilice una cadena vacía como valor o elimine manualmente la opción de los archivos config y credentials en un editor de texto.

$ aws configure set cli_pager "" --profile integ
aws configure get

Puede recuperar las credenciales o las opciones de configuración que haya establecido utilizando aws configure get. Especifique el perfil que desea ver o modificar con la opción --profile.

Por ejemplo, el siguiente comando recupera la opción region en el perfil denominado integ.

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

Si la salida está vacía, significa que la configuración no está establecida de forma explícita y se utiliza el valor predeterminado.

aws configure import

Importe las credenciales de CSV generadas desde la consola web de IAM. No es para las credenciales generadas desde Centro de identidades de IAM; los clientes que usen Centro de identidades de IAM deben usar aws configure sso. Se importa un archivo CSV con el nombre de perfil correspondiente al nombre de usuario. El archivo CSV debe contener los siguientes encabezados.

  • User Name

  • ID de clave de acceso

  • Clave de acceso secreta

nota

Durante la creación del par de claves inicial, una vez que cierre el cuadro de diálogo Download .csv file (Descargar archivo ‎.csv), no puede acceder a la clave de acceso secreta después de cerrar el cuadro de diálogo. Si necesita un archivo .csv, tendrá que crear uno usted mismo con los encabezados necesarios y la información del par de claves almacenada. Si no tiene acceso a la información del par de claves, debe crear un nuevo par de claves.

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

Para mostrar los datos de configuración, utilice el comando aws configure list. Este comando muestra el perfil, la clave de acceso, la clave secreta y la información de configuración de la región utilizada para el perfil especificado. Para cada elemento de configuración, muestra el valor, dónde se recuperó el valor de configuración y el nombre de la variable de configuración.

Por ejemplo, si proporciona el valor Región de AWS en una variable de entorno, este comando le mostrará el nombre de la región que ha configurado, que este valor proviene de una variable de entorno y el nombre de la variable de entorno.

En el caso de los métodos de credenciales temporales, como los roles y el Centro de identidades de IAM, este comando muestra la clave de acceso almacenada temporalmente en caché y se muestra la clave de acceso secreta.

$ 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

Para enumerar todos los nombres de perfil, utilice el comando aws configure list-profiles.

$ aws configure list-profiles default test
aws configure sso

Ejecute este comando para configurar y ver rápidamente sus AWS IAM Identity Center credenciales, región y formato de salida. En el ejemplo siguiente se muestran los valores de ejemplo.

$ 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

Ejecute este comando para configurar y ver rápidamente sus AWS IAM Identity Center credenciales, región y formato de salida en la sección sso-session de los archivos credentials yconfig. En el ejemplo siguiente se muestran los valores de ejemplo.

$ 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

Establecimiento de una nueva configuración y ejemplos de comandos de credenciales

En los siguientes ejemplos se muestra la configuración de un perfil predeterminado con credenciales, región y salida especificados para diferentes métodos de autenticación.

IAM Identity Center (SSO)

Este ejemplo es para AWS IAM Identity Center usar el aws configure sso asistente. Para obtener más información, consulte Configure las credenciales del proveedor de token de IAM Identity Center AWS CLI para utilizar con la actualización automática de la autenticación.

$ 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)

Este ejemplo es para el método tradicional de AWS IAM Identity Center uso del aws configure sso asistente. Para usar el SSO heredado, deje el nombre de la sesión en blanco. Para obtener más información, consulte Configuración heredada no actualizable para AWS IAM Identity Center.

$ 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

Este ejemplo corresponde a las credenciales de corta duración de AWS Identity and Access Management. El asistente aws configure se utiliza para establecer los valores iniciales y, a continuación, el comando aws configure set asigna el último valor necesario. Para obtener más información, consulte Autenticar con credenciales a corto plazo.

$ 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

Este ejemplo se usa para asumir un rol de IAM. Los perfiles que utilizan roles de IAM extraen las credenciales de otro perfil y, a continuación, aplican los permisos de rol de IAM. En los siguientes ejemplos, default es el perfil de origen de las credenciales y user1 toma prestadas las mismas credenciales y, a continuación, asume un nuevo rol. No existe ningún asistente para este proceso, por lo que cada valor se establece con el comando aws configure set. Para obtener más información, consulte Usar un rol de IAM de la 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

Este ejemplo corresponde a las credenciales obtenidas de los metadatos de la instancia de Amazon EC2 de alojamiento. No existe ningún asistente para este proceso, por lo que cada valor se establece con el comando aws configure set. Para obtener más información, consulte Utilizar credenciales para los metadatos de instancias de Amazon EC2.

$ 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
aviso

Para evitar riesgos de seguridad, no utilice a los usuarios de IAM para la autenticación cuando desarrolle software especialmente diseñado o trabaje con datos reales. En cambio, utilice la federación con un proveedor de identidades como AWS IAM Identity Center.

Este ejemplo corresponde a las credenciales de larga duración de AWS Identity and Access Management. Para obtener más información, consulte Autenticar con credenciales de usuario de IAM.

$ 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

Configuraciones del archivo config admitidas

Se admiten las siguientes opciones en el archivo config. Se utilizan los valores enumerados en el perfil especificado (o predeterminado) a menos que queden anulados por la presencia de una variable de entorno con el mismo nombre o una opción de línea de comandos con el mismo nombre. Para obtener más información sobre las opciones que tienen prioridad, consulte Configure el AWS CLI

Configuración global

aws_access_key_id

Especifica la clave de AWS acceso utilizada como parte de las credenciales para autenticar la solicitud de comando. Aunque puede estar almacenada en el archivo config, recomendamos almacenar esta información en el archivo credentials.

Se puede anular mediante la variable de entorno AWS_ACCESS_KEY_ID. No se puede especificar el ID de clave de acceso como una opción de línea de comandos.

aws_access_key_id = AKIAIOSFODNN7EXAMPLE
aws_secret_access_key

Especifica la clave AWS secreta utilizada como parte de las credenciales para autenticar la solicitud de comando. Aunque puede estar almacenada en el archivo config, recomendamos almacenar esta información en el archivo credentials.

Se puede anular mediante la variable de entorno AWS_SECRET_ACCESS_KEY. No se puede especificar la clave de acceso secreta como una opción de línea de comandos.

aws_secret_access_key = wJalrXUtnFEMI/K7MDENG/bPxRfiCYEXAMPLEKEY
aws_session_token

Especifica un token AWS de sesión. Un token de sesión solo es necesario si especifica manualmente credenciales de seguridad temporales. Aunque puede estar almacenada en el archivo config, recomendamos almacenar esta información en el archivo credentials.

Se puede anular mediante la variable de entorno AWS_SESSION_TOKEN. No se puede especificar un token de sesión como una opción de línea de comandos.

aws_session_token = AQoEXAMPLEH4aoAH0gNCAPyJxz4BlCFFxWNE1OPTgk5TthT+FvwqnKwRcOIfrRh3c/LTo6UDdyJwOOvEVPvLXCrrrUtdnniCEXAMPLE/IvU1dYUg2RVAJBanLiHb4IgRmpRV3zrkuWJOgQs8IZZaIv2BXIa2R4Olgk
ca_bundle

Especifica un paquete de certificados de CA (un archivo con la extensión .pem) que se utiliza para verificar certificados SSL.

Se puede anular mediante la variable de entorno AWS_CA_BUNDLE o la opción de línea de comandos --ca-bundle.

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

Activa el mensaje automático para la AWS CLI versión 2. Hay dos configuraciones que se pueden usar:

  • on utiliza el modo de petición automática completa cada vez que intenta ejecutar un comando de aws. Esto incluye presionar ENTER (INTRO) después de un comando completo o un comando incompleto.

    cli_auto_prompt = on
  • on-partial utiliza el modo de petición automática parcial. Si un comando está incompleto o no se puede ejecutar debido a errores de validación del lado del cliente, se utiliza la petición automática. Este modo es especialmente útil si tiene scripts preexistentes, runbooks, o solo desea que se le pregunte automáticamente sobre los comandos con los que no está familiarizado en lugar de preguntarle sobre cada comando.

    cli_auto_prompt = on-partial

Puede anular esta configuración mediante la variable de entorno de aws_cli_auto_prompt o los parámetros de la línea de comandos --cli-auto-prompt y --no-cli-auto-prompt.

Para obtener información sobre la función de aviso automático de la AWS CLI versión 2, consulteTener una solicitud de la AWS CLI para los comandos.

cli_binary_format

Especifica cómo interpreta la AWS CLI versión 2 los parámetros de entrada binarios. Puede ser uno de los siguientes valores:

  • base64: este es el valor predeterminado. Un parámetro de entrada escrito como un objeto binario grande (BLOB) acepta una cadena codificada en base64. Para pasar verdadero contenido binario, coloque el contenido en un archivo y proporcione la ruta y el nombre del archivo con el prefijo fileb:// como valor del parámetro. Para pasar el texto codificado en base64 incluido en un archivo, proporcione la ruta y el nombre del archivo con el prefijo file:// como valor del parámetro.

  • raw-in-base64 salidas: valor predeterminado para la AWS CLI versión 1. Si el valor de la configuración es raw-in-base64-out, los archivos a los que se hace referencia mediante el prefijo file:// se leen como texto y, a continuación, la AWS CLI intenta codificarlo en binario.

Esta entrada no tiene una variable de entorno equivalente. Puede especificar el valor en un solo comando mediante el parámetro --cli-binary-format raw-in-base64-out.

cli_binary_format = raw-in-base64-out

Si hace referencia a un valor binario en un archivo mediante la notación de fileb:// prefijo, AWS CLI siempre espera que el archivo contenga contenido binario sin procesar y no intenta convertir el valor.

Si hace referencia a un valor binario de un archivo mediante la notación de file:// prefijo, AWS CLI gestiona el archivo según la configuración actualcli_binary_format. Si el valor de esa configuración es base64 (el predeterminado cuando no se establece de forma explícita), se AWS CLI espera que el archivo contenga texto codificado en base64. Si el valor de esa configuración esraw-in-base64-out, se AWS CLI espera que el archivo contenga contenido binario sin procesar.

cli_history

Está deshabilitado de forma predeterminada. Esta configuración habilita el historial de comandos para la AWS CLI. Tras activar esta configuración, AWS CLI registra el historial de aws comandos.

cli_history = enabled

Puede hacer una lista de su historial con el comando aws history list y utilizar los command_ids resultantes en el comando aws history show para obtener más información. Para obtener más información, consulte aws history en la Guía de referencia de AWS CLI .

cli_pager

Especifica el programa de paginación utilizado para la salida. De forma predeterminada, AWS CLI la versión 2 devuelve todos los resultados a través del programa localizador predeterminado del sistema operativo.

Puede ser anulado por la variable de entorno AWS_PAGER.

cli_pager=less

Para deshabilitar todo el uso de un programa de paginación externo, establezca la variable en una cadena vacía como se muestra en el siguiente ejemplo.

cli_pager=
cli_timestamp_format

Especifica el formato de los valores de la marca temporal incluidos en la salida. Puede especificar cualquiera de los siguientes valores:

  • iso8601: el valor predeterminado de la AWS CLI versión 2. Si se especifica, AWS CLI reformatea todas las marcas de tiempo según la norma ISO 8601.

    Las marcas temporales con formato ISO 8601 se parecen a los siguientes ejemplos. El primer ejemplo muestra la hora en hora universal coordinada (UTC) mediante la inclusión de una Z después de la hora. La fecha y la hora están separadas por una T.

    2019-10-31T22:21:41Z

    Para especificar una zona horaria diferente, en lugar de Z, especifique + o - y el número de horas que esta zona horaria está por delante o por detrás de UTC mediante un valor de dos dígitos. En el siguiente ejemplo, se muestra la misma hora que en el ejemplo anterior, pero ajustada a la hora estándar del Pacífico, que va ocho horas por detrás de UTC:

    2019-10-31T14:21:41-08
  • wire: el valor por defecto de la versión 1. AWS CLI Si se especifica, AWS CLI muestra todos los valores de la marca de tiempo exactamente como se recibieron en la respuesta a la consulta HTTP.

Esta entrada no tiene una variable de entorno equivalente ni una opción de línea de comandos.

cli_timestamp_format = iso8601
credential_process

Especifica un comando externo que AWS CLI se ejecuta para generar o recuperar las credenciales de autenticación que se utilizarán en este comando. El comando debe devolver las credenciales en un formato específico. Para obtener más información sobre el uso de esta configuración, consulte Obtener credenciales con un proceso externo.

Esta entrada no tiene una variable de entorno equivalente ni una opción de línea de comandos.

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

Se utiliza en instancias o en contenedores de Amazon EC2 para especificar dónde la AWS CLI puede encontrar credenciales para usar a fin de asumir el rol que usted especificó con el parámetro role_arn. No puede especificar source_profile y credential_source en el mismo perfil.

Este parámetro puede tener uno de tres valores:

  • Entorno: especifica que debe recuperar las AWS CLI credenciales de origen de las variables de entorno.

  • Ec2 InstanceMetadata: especifica que AWS CLI se debe utilizar la función de IAM asociada al perfil de instancia de EC2 para obtener las credenciales de origen.

  • EcsContainer— Especifica que AWS CLI se utilizará la función de IAM asociada al contenedor ECS como credenciales de origen.

credential_source = Ec2InstanceMetadata
duration_seconds

Especifica la duración máxima de la sesión de rol, en segundos. Este valor puede oscilar entre 900 segundos (15 minutos) y el valor de la duración máxima de la sesión para el rol (que puede ser 43200 como máximo). Se trata de un parámetro opcional y, de forma predeterminada, el valor se establece en 3600 segundos.

endpoint_url

Especifica el punto de conexión que se utiliza para todas las solicitudes de servicio. Si esta configuración se usa en la sección de services del archivo config, el punto de conexión se usa solo para el servicio especificado.

En el siguiente ejemplo, se utiliza el punto de conexión global http://localhost:1234 y un punto de conexión específico del servicio de http://localhost:4567 para Amazon S3.

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

Los valores de configuración del punto final se encuentran en varios lugares, como las variables de entorno del sistema o del usuario, los archivos de AWS configuración locales, o se declaran explícitamente en la línea de comandos como parámetros. Los ajustes de configuración del punto de conexión de la AWS CLI tienen prioridad en el siguiente orden:

  1. La opción de línea de comandos --endpoint-url.

  2. Si está habilitada, la variable de entorno del punto de conexión AWS_IGNORE_CONFIGURED_ENDPOINT_URLS global o la configuración del perfil ignore_configure_endpoint_urls para ignorar los puntos de conexión personalizados.

  3. El valor proporcionado por una variable de entorno específica del servicio AWS_ENDPOINT_URL_<SERVICE>, como AWS_ENDPOINT_URL_DYNAMODB.

  4. Los valores proporcionados por las variables de entorno AWS_USE_DUALSTACK_ENDPOINT, AWS_USE_FIPS_ENDPOINT y AWS_ENDPOINT_URL.

  5. El valor de punto de conexión específico del servicio proporcionado por la configuración endpoint_url de una sección de services del archivo compartido config.

  6. El valor proporcionado por la configuración endpoint_url en un profile de un archivo compartido config.

  7. Configuración de use_dualstack_endpoint, use_fips_endpoint y endpoint_url.

  8. En último lugar, Servicio de AWS se utilizará cualquier URL de punto final predeterminada correspondiente. Para obtener una lista de los puntos de enlace de servicio estándar disponibles en cada región, consulte Regiones y puntos de enlace de AWS en la Referencia general de Amazon Web Services.

ignore_configure_endpoint_urls

Si está habilitada, AWS CLI ignora todas las configuraciones de punto final personalizadas especificadas en el config archivo. Los valores válidos son true y false.

ignore_configure_endpoint_urls = true

Los ajustes de configuración de los puntos finales se encuentran en varios lugares, como las variables de entorno del sistema o del usuario, los archivos de AWS configuración locales, o se declaran explícitamente en la línea de comandos como parámetros. Los ajustes de configuración del punto de conexión de la AWS CLI tienen prioridad en el siguiente orden:

  1. La opción de línea de comandos --endpoint-url.

  2. Si está habilitada, la variable de entorno del punto de conexión AWS_IGNORE_CONFIGURED_ENDPOINT_URLS global o la configuración del perfil ignore_configure_endpoint_urls para ignorar los puntos de conexión personalizados.

  3. El valor proporcionado por una variable de entorno específica del servicio AWS_ENDPOINT_URL_<SERVICE>, como AWS_ENDPOINT_URL_DYNAMODB.

  4. Los valores proporcionados por las variables de entorno AWS_USE_DUALSTACK_ENDPOINT, AWS_USE_FIPS_ENDPOINT y AWS_ENDPOINT_URL.

  5. El valor de punto de conexión específico del servicio proporcionado por la configuración endpoint_url de una sección de services del archivo compartido config.

  6. El valor proporcionado por la configuración endpoint_url en un profile de un archivo compartido config.

  7. Configuración de use_dualstack_endpoint, use_fips_endpoint y endpoint_url.

  8. En último lugar, Servicio de AWS se utilizará cualquier URL de punto final predeterminada correspondiente. Para obtener una lista de los puntos de enlace de servicio estándar disponibles en cada región, consulte Regiones y puntos de enlace de AWS en la Referencia general de Amazon Web Services.

external_id

Especifica un identificador único utilizado por terceros para adoptar un rol en las cuentas de los clientes. Se asigna al parámetro ExternalId en la operación AssumeRole. Este parámetro solo es necesario si la política de confianza del rol especifica un valor para ExternalId. Para obtener más información, consulte Cómo utilizar un ID externo para conceder acceso a sus AWS recursos a un tercero en la Guía del usuario de IAM.

max_attempts

Especifica el valor máximo de reintentos que utiliza el controlador de AWS CLI reintentos, donde la llamada inicial se tiene en cuenta para el max_attempts valor que usted proporciona.

Puede invalidar este valor mediante la variable de entorno de AWS_MAX_ATTEMPTS.

max_attempts = 3
mfa_serial

El número de identificación del dispositivo MFA que se debe utilizar al asumir un rol. Este valor solo es obligatorio si la política de confianza del rol que se ha asumido incluye una condición que requiere autenticación MFA. El valor puede ser un número de serie de un dispositivo de hardware (como GAHT12345678) o un nombre de recurso de Amazon (ARN) de un dispositivo MFA virtual (como arn:aws:iam::123456789012:mfa/user).

output

Especifica el formato de la salida predeterminado para los comandos solicitados con este perfil. Puede especificar cualquiera de los siguientes valores:

  • json: la salida se formatea como una cadena JSON.

  • yaml: la salida se formatea como una cadena YAML.

  • yaml-stream: la salida se transmite y se formatea como una cadena YAML. El streaming permite un manejo más rápido de tipos de datos de gran tamaño.

  • text: la salida tiene el formato de varias líneas de valores de cadena separados por tabuladores. Esto puede ser útil para pasar la salida a un procesador de texto, como grep, sed o awk.

  • table: el resultado tiene el formato de una tabla en la que se usan los caracteres +|- para los bordes de celda. Normalmente, la información se presenta en un formato que es más fácil de leer que los demás formatos, pero que no es útil para programar.

Se puede anular mediante la variable de entorno AWS_DEFAULT_OUTPUT o la opción de línea de comandos --output.

output = table
parameter_validation

Especifica si el AWS CLI cliente intenta validar los parámetros antes de enviarlos al punto final del AWS servicio.

  • true (verdadero): es el valor predeterminado. Si se especifica, AWS CLI realiza la validación local de los parámetros de la línea de comandos.

  • false: si se especifica, AWS CLI no valida los parámetros de la línea de comandos antes de enviarlos al punto final del AWS servicio.

Esta entrada no tiene una variable de entorno equivalente ni una opción de línea de comandos.

parameter_validation = false
region

Especifica el Región de AWS lugar al que se van a enviar las solicitudes para los comandos solicitados mediante este perfil.

  • Puede especificar cualquiera de los códigos de región disponibles para el servicio elegido que se muestran en Regiones y puntos de conexión de AWS en la Referencia general de Amazon Web Services.

  • aws_globalle permite especificar el punto de enlace global para los servicios que admiten un punto de enlace global además de los puntos de enlace regionales, como AWS Security Token Service (AWS STS) y Amazon Simple Storage Service (Amazon S3).

Puede invalidar este valor mediante la variable de entorno AWS_REGION, variable de entorno AWS_DEFAULT_REGION o la opción de línea de comandos --region.

region = us-west-2
retry_mode

Especifica qué modo AWS CLI de reintento se utiliza. Hay tres modos de reintento disponibles: heredado (predeterminado), estándar y adaptativo. Para obtener más información acerca de los reintentos, consulte Reintentos de AWS CLI.

Puede invalidar este valor mediante la variable de entorno de AWS_RETRY_MODE.

retry_mode = standard
role_arn

Especifica el nombre de recurso de Amazon (ARN) de una función de IAM que desee utilizar para ejecutar los comandos. AWS CLI También debe especificar uno de los siguientes parámetros para identificar las credenciales que tienen permiso para asumir este rol:

  • source_profile

  • credential_source

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

La variable de entorno AWS_ROLE_ARN anula esta configuración.

Para obtener más información sobre el uso de las identidades web, consulte Adopción de un rol con una identidad web.

role_session_name

Especifica el nombre que se va a asociar a la sesión de rol. Este valor se proporciona al parámetro RoleSessionName cuando la AWS CLI llama a la operación AssumeRole y pasa a formar parte del ARN del usuario del rol asumido: arn:aws:sts::123456789012:assumed-role/role_name/role_session_name. Se trata de un parámetro opcional. Si no proporciona este valor, se genera automáticamente un nombre de sesión. Este nombre aparece en los registros de AWS CloudTrail correspondientes a las entradas asociadas a esta sesión.

role_session_name = maria_garcia_role

La variable de entorno AWS_ROLE_SESSION_NAME anula esta configuración.

Para obtener más información sobre el uso de las identidades web, consulte Adopción de un rol con una identidad web.

services

Especifica la configuración del servicio que se utilizará en el perfil.

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

Para obtener más información sobre la sección de services, consulte Tipo de sección: services.

La variable de entorno AWS_ROLE_SESSION_NAME anula esta configuración.

Para obtener más información sobre el uso de las identidades web, consulte Adopción de un rol con una identidad web.

source_profile

Especifica un perfil con nombre con credenciales duraderas que la AWS CLI puede utilizar para asumir el rol que ha especificado con el parámetro role_arn. No puede especificar source_profile y credential_source en el mismo perfil.

source_profile = production-profile
sso_account_id

Especifica el ID de AWS cuenta que contiene el rol de IAM con el permiso que desea conceder al usuario asociado del Centro de Identidad de IAM.

Esta configuración no tiene ninguna variable de entorno ni ninguna opción de línea de comandos.

sso_account_id = 123456789012
sso_region

Especifica la AWS región que contiene el host del portal de AWS acceso. Esto es independiente (y puede ser una región diferente) del parámetro region predeterminado de la CLI.

Esta configuración no tiene ninguna variable de entorno ni ninguna opción de línea de comandos.

sso_region = us_west-2
sso_registration_scopes

Una lista delimitada por comas de los ámbitos que deben autorizarse para la sso-session. Los ámbitos autorizan el acceso a los puntos de conexión autorizados por el token de portador del Centro de identidades de IAM. Un ámbito válido es una cadena, por ejemplo, sso:account:access. Esta configuración no es aplicable a la configuración heredada no actualizable.

sso_registration_scopes = sso:account:access
sso_role_name

Especifica el nombre descriptivo del rol de IAM que define los permisos que tiene el usuario cuando utiliza este perfil.

Esta configuración no tiene ninguna variable de entorno ni ninguna opción de línea de comandos.

sso_role_name = ReadAccess
sso_start_url

Especifica la URL que apunta al portal de AWS acceso de la organización. AWS CLI Utiliza esta URL para establecer una sesión con el servicio del Centro de Identidad de IAM a fin de autenticar a sus usuarios. Para encontrar la URL del portal de AWS acceso, utilice una de las siguientes opciones:

  • Abra el correo electrónico de invitación y aparecerá la URL del portal de AWS acceso.

  • Abra la AWS IAM Identity Center consola en https://console.aws.amazon.com/singlesignon/. La URL del portal de AWS acceso aparece en su configuración.

Esta configuración no tiene ninguna variable de entorno ni ninguna opción de línea de comandos.

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

Permite el uso de puntos finales de doble pila para enviar AWS solicitudes. Para obtener más información sobre los puntos de conexión de doble pila, que admiten tráfico de IPv4 e IPv6, consulte Uso de puntos de conexión de doble pila de Amazon S3 en la Guía del usuario de Amazon Simple Storage Service. Los puntos de conexión de doble pila están disponibles para algunos servicios en algunas regiones. Si no existe un punto final de doble pila para el servicio o si la solicitud Región de AWS falla. Esta opción está deshabilitada de forma predeterminada.

Es mutuamente excluyente con la configuración use_accelerate_endpoint.

Los ajustes de configuración del punto final se encuentran en varios lugares, como las variables de entorno del sistema o del usuario, los archivos de AWS configuración locales, o se declaran explícitamente en la línea de comandos como parámetros. Los ajustes de configuración del punto de conexión de la AWS CLI tienen prioridad en el siguiente orden:

  1. La opción de línea de comandos --endpoint-url.

  2. Si está habilitada, la variable de entorno del punto de conexión AWS_IGNORE_CONFIGURED_ENDPOINT_URLS global o la configuración del perfil ignore_configure_endpoint_urls para ignorar los puntos de conexión personalizados.

  3. El valor proporcionado por una variable de entorno específica del servicio AWS_ENDPOINT_URL_<SERVICE>, como AWS_ENDPOINT_URL_DYNAMODB.

  4. Los valores proporcionados por las variables de entorno AWS_USE_DUALSTACK_ENDPOINT, AWS_USE_FIPS_ENDPOINT y AWS_ENDPOINT_URL.

  5. El valor de punto de conexión específico del servicio proporcionado por la configuración endpoint_url de una sección de services del archivo compartido config.

  6. El valor proporcionado por la configuración endpoint_url en un profile de un archivo compartido config.

  7. Configuración de use_dualstack_endpoint, use_fips_endpoint y endpoint_url.

  8. En último lugar, Servicio de AWS se utilizará cualquier URL de punto final predeterminada correspondiente. Para obtener una lista de los puntos de enlace de servicio estándar disponibles en cada región, consulte Regiones y puntos de enlace de AWS en la Referencia general de Amazon Web Services.

use_fips_endpoint

Algunos AWS servicios ofrecen terminales que, en algunos casos, son compatibles con la Norma Federal de Procesamiento de Información (FIPS) 140-2. Regiones de AWS Cuando el AWS servicio es compatible con FIPS, esta configuración especifica qué punto final de FIPS se debe usar. AWS CLI A diferencia de AWS los puntos finales estándar, los puntos finales de FIPS utilizan una biblioteca de software TLS que cumple con la norma FIPS 140-2. Las empresas que trabajan con el gobierno de los Estados Unidos pueden requerir estos puntos de conexión.

Si esta configuración está habilitada, pero no existe un punto final FIPS para el servicio en su servidor, es posible que se produzca un error en el comando. Región de AWS AWS En este caso, especifique manualmente el punto de conexión que se va a utilizar en el comando mediante la opción --endpoint-url o utilice los puntos de conexión específicos del servicio.

Para obtener más información sobre cómo especificar los puntos de enlace de FIPS por Región de AWS, consulte Puntos de enlace de FIPS por servicio.

Los ajustes de configuración de los terminales se encuentran en varios lugares, como las variables de entorno del sistema o del usuario, los archivos de AWS configuración locales, o se declaran explícitamente en la línea de comandos como parámetros. Los ajustes de configuración del punto de conexión de la AWS CLI tienen prioridad en el siguiente orden:

  1. La opción de línea de comandos --endpoint-url.

  2. Si está habilitada, la variable de entorno del punto de conexión AWS_IGNORE_CONFIGURED_ENDPOINT_URLS global o la configuración del perfil ignore_configure_endpoint_urls para ignorar los puntos de conexión personalizados.

  3. El valor proporcionado por una variable de entorno específica del servicio AWS_ENDPOINT_URL_<SERVICE>, como AWS_ENDPOINT_URL_DYNAMODB.

  4. Los valores proporcionados por las variables de entorno AWS_USE_DUALSTACK_ENDPOINT, AWS_USE_FIPS_ENDPOINT y AWS_ENDPOINT_URL.

  5. El valor de punto de conexión específico del servicio proporcionado por la configuración endpoint_url de una sección de services del archivo compartido config.

  6. El valor proporcionado por la configuración endpoint_url en un profile de un archivo compartido config.

  7. Configuración de use_dualstack_endpoint, use_fips_endpoint y endpoint_url.

  8. En último lugar, Servicio de AWS se utilizará cualquier URL de punto final predeterminada correspondiente. Para obtener una lista de los puntos de enlace de servicio estándar disponibles en cada región, consulte Regiones y puntos de enlace de AWS en la Referencia general de Amazon Web Services.

web_identity_token_file

Especifica la ruta de un archivo que contiene un token de acceso de OAuth 2.0 o un token de ID de OpenID Connect proporcionado por un proveedor de identidades. La AWS CLI carga el contenido de este archivo y lo pasa como argumento WebIdentityToken a la operación AssumeRoleWithWebIdentity.

La variable de entorno AWS_WEB_IDENTITY_TOKEN_FILE anula esta configuración.

Para obtener más información sobre el uso de las identidades web, consulte Adopción de un rol con una identidad web.

tcp_keepalive

Especifica si el AWS CLI cliente utiliza paquetes TCP Keep-Alive.

Esta entrada no tiene una variable de entorno equivalente ni una opción de línea de comandos.

tcp_keepalive = false

Configuración de comandos personalizados de S3

Amazon S3 admite varios ajustes que configuran la forma en que AWS CLI realiza las operaciones de Amazon S3. Algunos se aplican a todos los comandos de S3 tanto en los espacios de nombres s3 como s3api. Otros son específicos para los comandos «personalizados» de S3, que resumen las operaciones comunes y hacen algo más que un one-to-one mapeo a una operación de API. Los comandos de aws s3 de transferencia cp, sync, mv y rm tienen opciones adicionales que puede utilizar para controlar las transferencias de S3.

Para configurar todas estas opciones, especifique la configuración s3 anidada en su archivo config. A continuación, se introduce con sangría cada configuración en su propia línea.

nota

Estos ajustes son completamente opcionales. Debe poder utilizar los comandos de transferencia de aws s3 sin configurar ninguno de estos ajustes. Estas opciones se ofrecen para afinar el rendimiento o para tener en cuenta el entorno específico en el que se ejecutan estos comandos de aws s3.

Estos ajustes se establecen con una clave de s3 de alto nivel en el archivo config, tal y como se muestra en el siguiente ejemplo del perfil 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

Los siguientes ajustes se aplican a cualquier comando de S3 en el espacio de nombres s3 o s3api.

addressing_style

Especifica qué estilo de direccionamiento debe usarse. Esto controla si el nombre del bucket está en el hostname o es parte de la URL. Los valores válidos son path, virtual y auto. El valor predeterminado es auto.

Hay dos estilos para crear un punto enlace de Amazon S3. El primero se llama virtual e incluye el nombre del bucket como parte del nombre de host. Por ejemplo: https://bucketname.s3.amazonaws.com. Si lo desea, también puede utilizar el estilo path, que tratará el nombre del bucket como si fuera una ruta del URI; por ejemplo, https://s3.amazonaws.com/bucketname. El valor predeterminado en la CLI es utilizar auto, que intenta utilizar el estilo virtual siempre que puede, pero usará el estilo path cuando sea necesario. Por ejemplo, si el nombre del bucket no es compatible con DNS, el nombre del bucket no puede formar parte del nombre de host y debe estar en la ruta. Con auto, la CLI detectará esta condición y cambiará automáticamente al estilo path. Si estableces el estilo de direccionamiento enpath, debes asegurarte de que la AWS región en la que configuraste AWS CLI coincida con la región de tu bucket.

payload_signing_enabled

Especifica si firma con SHA256 cargas de sigv4. De forma predeterminada, esta opción está deshabilitada para cargas de streaming (UploadPart y PutObject) cuando se utiliza https. De forma predeterminada, la opción está configurada en false para cargas de streaming (UploadPart y PutObject), pero solo si está presente un ContentMD5 (se genera de forma predeterminada) y el punto de enlace utiliza HTTPS.

Si se establece en verdadero, las solicitudes de S3 reciben validación de contenido adicional en forma de suma de comprobación SHA256 que se calcula automáticamente y se incluye en la firma de la solicitud. Si se establece en falso, la suma de comprobación no se calcula. Deshabilitar esta opción puede ser útil para reducir la sobrecarga de rendimiento creada por el cálculo de la suma de comprobación.

use_accelerate_endpoint

Utilice el punto de enlace de aceleración de Amazon S3 para todos los comandos s3 y s3api. El valor predeterminado es false. Es mutuamente excluyente con la configuración use_dualstack_endpoint.

Si se establece en true, AWS CLI dirige todas las solicitudes de Amazon S3 al S3 Accelerate punto de conexión ens3-accelerate.amazonaws.com. Para utilizar este punto de enlace, debe habilitar el bucket para que use S3 Accelerate. Todas las solicitudes se envían mediante el direccionamiento al bucket de estilo virtual: my-bucket.s3-accelerate.amazonaws.com. Las solicitudes ListBuckets, CreateBucket y DeleteBucket no se envían al punto de enlace de S3 Accelerate, ya que este punto de enlace no admite estas operaciones. Este comportamiento también se puede establecer si el parámetro --endpoint-url está establecido en https://s3-accelerate.amazonaws.com o http://s3-accelerate.amazonaws.com para cualquier comando s3api o s3.

Estos ajustes de configuración solo se aplican a los comandos del conjunto de comandos del espacio de nombres de s3:

max_bandwidth

Especifica el ancho de banda máximo que puede ser consumido para cargar y descargar datos desde y hacia Amazon S3. El valor predeterminado es sin límite.

Esto limita el ancho de banda máximo que los comandos de S3 pueden utilizar para transferir datos desde y hacia Amazon S3. Este valor se aplica únicamente a cargas y descargas; no se aplica a copias o eliminaciones. El valor se expresa como bytes por segundo. El valor puede especificarse como:

  • Un número entero. Por ejemplo, 1048576 establece el uso de ancho de banda máximo en 1 megabyte por segundo.

  • Un número entero seguido de un sufijo de velocidad. Puede especificar sufijos de velocidad mediante: KB/s, MB/s o GB/s. Por ejemplo, 300KB/s, 10MB/s.

En general, se recomienda intenta reducir primero el consumo de ancho de banda, disminuyendo las max_concurrent_requests. Si así no se reduce el consumo de ancho de banda lo suficiente para conseguir la velocidad deseada, puede utilizar la opción max_bandwidth para limitar más el consumo de ancho de banda. Esto se debe a que max_concurrent_requests controla la cantidad de subprocesos se están ejecutando en este momento. Si en su lugar reduce primero max_bandwidth pero deja max_concurrent_requests en un valor alto, puede provocar que los subprocesos tengan que esperar innecesariamente. Esto puede provocar un consumo excesivo de recursos y que se agoten los tiempos de espera de conexión.

max_concurrent_requests

Especifica el número máximo de solicitudes concurrentes. El valor predeterminado es 10.

Los comandos de transferencia de aws s3 tienen varios subprocesos. En un momento dado, es posible que se estén ejecutando varias solicitudes de Amazon S3. Por ejemplo, cuando usas el comando aws s3 cp localdir s3://bucket/ --recursive para cargar archivos en un bucket de S3, AWS CLI puedes cargar los archivos localdir/file1 y localdir/file3 en paralelo. localdir/file2 La configuración max_concurrent_requests especifica el número máximo de operaciones de transferencia que se pueden ejecutar al mismo tiempo.

Es posible que tenga que cambiar este valor por varios motivos:

  • Reducir el valor: en algunos entornos, el valor predeterminado de 10 solicitudes simultáneas puede ser demasiado para un sistema. Esto puede provocar tiempos de espera de conexión o ralentizar la capacidad de respuesta del sistema. Al reducir este valor, los comandos de transferencia de S3 consumen menos recursos. La desventaja es que las transferencias de S3 puede tardar más en completarse. Puede ser necesario reducir este valor si utiliza una herramienta para limitar el ancho de banda.

  • Aumentar el valor: en algunos casos, puede ser conveniente que las transferencias de Amazon S3 se completen lo más rápido posible, con el mayor ancho de banda de red según sea necesario. En este caso, el número predeterminado de solicitudes simultáneas podría no ser suficiente para utilizar todo el ancho de banda de red disponible. Al aumentar este valor puede mejorar el tiempo que se tarda en completar una transferencia de Amazon S3.

max_queue_size

Especifica el número máximo de tareas en la cola. El valor predeterminado es 1000.

AWS CLI Internamente, utiliza un modelo en el que pone en cola las tareas de Amazon S3 que luego son ejecutadas por consumidores cuyo número está limitado pormax_concurrent_requests. Una tarea, por lo general, se asigna a una sola operación de Amazon S3. Por ejemplo, una tarea puede ser PutObjectTask, GetObjectTask o UploadPartTask. La velocidad a la que se añaden tareas a la cola puede ser mucho más rápida que la velocidad en la que los consumidores finalizan las tareas. Para evitar el crecimiento ilimitado, el tamaño de la cola de tareas se limita a un tamaño específico. Esta configuración cambia el valor de ese número máximo.

Por lo general, no tendrá que cambiar este ajuste. Esta configuración también corresponde al número de tareas que AWS CLI sabe que deben ejecutarse. Esto significa que, de forma predeterminada, solo AWS CLI puede ver 1000 tareas por delante. Si se aumenta este valor, AWS CLI se puede saber más rápidamente el número total de tareas necesarias, suponiendo que el ritmo de espera sea más rápido que el ritmo de finalización de las tareas. La desventaja es que un valor mayor en max_queue_size, exige también más memoria.

multipart_chunksize

Especifica el tamaño del fragmento que se AWS CLI utiliza para las transferencias multipartes de archivos individuales. El valor predeterminado es 8 MB, con un mínimo de 5 MB.

Cuando la transferencia de un archivo supera el multipart_threshold, la AWS CLI divide el archivo en fragmentos de este tamaño. Este valor puede especificarse utilizando la misma sintaxis que en multipart_threshold, ya sea especificando el número de bytes como un número entero o especificando un tamaño y un sufijo.

multipart_threshold

Especifica el umbral de tamaño que se AWS CLI utiliza para las transferencias multipartes de archivos individuales. El valor predeterminado es 8 MB.

Al cargar, descargar o copiar un archivo, los comandos de Amazon S3 cambian a operaciones multiparte si el archivo supera este tamaño. Puede especificar este valor de una de las dos formas siguientes:

  • El tamaño del archivo en bytes. Por ejemplo, 1048576.

  • El tamaño del archivo con un sufijo de tamaño. Puede utilizar KB, MB, GB o TB. Por ejemplo: 10MB, 1GB.

    nota

    S3 puede imponer restricciones en los valores válidos que se pueden utilizar para las operaciones multiparte. Para obtener más información, consulte la documentación Carga multiparte de S3 en la Guía de del usuario de Amazon Simple Storage Service.