Archivos config y credentials compartidos - AWS SDKsy herramientas

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.

Archivos config y credentials compartidos

Lo compartido AWS configy credentials los archivos contienen un conjunto de perfiles. Un perfil es un conjunto de valores de configuración, en pares clave-valor, que utiliza el AWS Command Line Interface (AWS CLI), el AWS SDKs, y otras herramientas. Los valores de configuración se adjuntan a un perfil para configurar algún aspecto de la SDK /tool cuando se utiliza ese perfil. Estos archivos se «comparten», ya que los valores se aplican a cualquier aplicación o proceso o SDKs al entorno local del usuario.

Tanto los archivos compartidos config como credentials los archivos son archivos de texto sin formato que contienen solo ASCII caracteres (codificados con el UTF código -8). Adoptan la forma de lo que generalmente se denomina INIarchivos.

Perfiles

Los ajustes de los archivos compartidos config y credentials están asociados a un perfil específico. Se pueden definir varios perfiles en el archivo para crear diferentes configuraciones de configuración que se puedan aplicar en diferentes entornos de desarrollo.

El [default] perfil contiene los valores que utiliza una operación de una SDK herramienta si no se especifica un perfil con nombre específico. También puede crear perfiles independientes a los que pueda hacer referencia de forma explícita por su nombre. Cada perfil puede usar diferentes configuraciones y valores según lo necesite la aplicación y el escenario.

nota

[default] es simplemente un perfil sin nombre. Este perfil recibe su nombre default porque es el perfil predeterminado que utiliza SDK si el usuario no especifica ningún perfil. No proporciona valores predeterminados heredados a otros perfiles. Si establece algo en el [default] perfil y no lo establece en un perfil con nombre, el valor no se establece cuando usa el perfil con nombre.

Establece un perfil con nombre

El [default] perfil y varios perfiles con nombre pueden existir en el mismo archivo. Usa la siguiente configuración para seleccionar qué configuración de perfil usará tu herramienta SDK o tu herramienta al ejecutar el código. Los perfiles también se pueden seleccionar dentro del código o mediante un comando cuando se trabaja con AWS CLI.

Configure esta funcionalidad mediante una de las siguientes opciones:

AWS_PROFILE- variable de entorno

Cuando esta variable de entorno se establece en un perfil con nombre o «predeterminado», todo el SDK código y AWS CLI los comandos utilizan la configuración de ese perfil.

Ejemplo de configuración de variables de entorno en Linux/macOS mediante la línea de comandos:

export AWS_PROFILE="my_default_profile_name";

Ejemplo de configuración de variables de entorno en Windows mediante la línea de comandos:

setx AWS_PROFILE "my_default_profile_name"
aws.profile- propiedad JVM del sistema

SDKPara Kotlin on the JVM y SDK para Java 2.x, puede establecer la propiedad del aws.profile sistema. Cuando SDK crea un cliente de servicio, utiliza la configuración del perfil indicado, a menos que la configuración se anule en el código. La versión 1.x SDK para Java no admite esta propiedad del sistema.

Formato del archivo de configuración

El archivo config está organizado en secciones. 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.

El archivo config es un archivo de texto sin formato que utiliza el formato siguiente:

  • 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 (#).

Tipo de sección

La definición de una sección es una línea que aplica un nombre a un conjunto de ajustes. Las líneas de definición de sección comienzan y terminan con corchetes ([ ]). Dentro de los corchetes, hay un identificador de tipo de sección y un nombre personalizado para la sección. Puede utilizar letras, números, guiones (-) y guiones bajos (_), pero no espacios.

Tipo de sección: default

Ejemplo de línea de definición de sección: [default]

[default]es el único perfil que no requiere el identificador de profile sección.

En el siguiente ejemplo, se muestra un archivo config con un perfil [default]. Establece la configuración region. Todos los ajustes que siguen esta línea, hasta que se encuentre otra definición de sección, forman parte de este perfil.

[default] #Full line comment, this text is ignored. region = us-east-2

Tipo de sección: profile

Ejemplo de línea de definición de sección: [profile dev]

La línea de definición de la profile sección es una agrupación de configuraciones con nombre que se puede aplicar a distintos escenarios de desarrollo. Para conocer mejor los perfiles con nombre, consulte la sección anterior sobre Perfiles.

El siguiente ejemplo muestra un config archivo con una línea de definición de profile sección y un perfil con nombre denominadofoo. Todos los ajustes que siguen esta línea, hasta que se encuentre otra definición de sección, forman parte de este perfil con nombre.

[profile foo] ...settings...

Algunas configuraciones tienen su propio grupo anidado de subconfiguraciones, como la configuración s3 y las subconfiguraciones del siguiente ejemplo. Para asociar los subajustes al grupo, indéntelos con uno o más espacios.

[profile test] region = us-west-2 s3 = max_concurrent_requests=10 max_queue_size=1000

Tipo de sección: sso-session

Ejemplo de línea de definición de sección: [sso-session my-sso]

La línea de definición de la sso-session sección nombra un grupo de ajustes que se utilizan para configurar un perfil para resolverlos AWS credenciales mediante AWS IAM Identity Center. Para obtener más información sobre la configuración de la autenticación de inicio de sesión único, consulte. Autenticación del Centro de identidades de IAM Un perfil está vinculado a una sección sso-session mediante un par clave-valor en el que sso-session es la clave y el nombre de la sección sso-session es el valor, como sso-session = <name-of-sso-session-section>.

El siguiente ejemplo configura un perfil que será de corta duración AWS credenciales para el IAM rol «SampleRole» en la cuenta «111122223333" utilizando un token de «my-sso». La sección “my-sso” sso-session se menciona en la sección profile por su nombre mediante la clave sso-session.

[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

Tipo de sección: services

Ejemplo de línea de definición de sección: [services dev]

nota

La services sección admite personalizaciones de terminales específicas del servicio y solo está disponible en las herramientas que incluyen esta función. SDKs Para ver si esta función está disponible para sus puntos de conexión específicos del servicioSDK, consulte los puntos de conexión específicos del Compatibilidad con AWS SDKs servicio.

La línea de definición de la services sección indica un grupo de ajustes que configuran puntos de conexión personalizados para Servicio de AWS solicitudes. Un perfil está vinculado a una sección services mediante un par clave-valor en el que services es la clave y el nombre de la sección services es el valor, como services = <name-of-services-section>.

La services sección se divide a su vez en subsecciones por <SERVICE> = líneas, donde <SERVICE> está la Servicio de AWS clave de identificación. La Servicio de AWS el identificador se basa en el API modelo 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 Identificadores de punto de conexión específicos del servicio. 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 utiliza una services definición para configurar el punto final que se utilizará únicamente en las solicitudes realizadas al Amazon DynamoDB servicio. La sección "local-dynamodb" de services se menciona en la sección profile por su nombre mediante la clave services. La Servicio de AWS la clave identificadora esdynamodb. La Amazon DynamoDB la subsección de servicio comienza en la líneadynamodb = . 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 = local-dynamodb [services local-dynamodb] dynamodb = endpoint_url = http://localhost:8000

Para obtener más información sobre la configuración de punto de conexión, consulte Puntos de conexión específicos del servicio.

Formato del archivo de credenciales

Por lo general, las reglas del archivo credentials son idénticas a las del archivo config, con la salvedad de que las secciones del perfil no comienzan por la palabra “profile”. Utilice únicamente el propio nombre del perfil entre corchetes. En el siguiente ejemplo se muestra un credentials archivo con una sección de perfil con nombre denominadafoo.

[foo] ...credential settings...

En el credentials archivo solo se pueden almacenar las siguientes configuraciones que se consideran «secretas» o confidenciales: aws_access_key_idaws_secret_access_key, yaws_session_token. Si bien estas configuraciones también se pueden colocar en el config archivo compartido, le recomendamos que mantenga estos valores confidenciales en un credentials archivo independiente. De esta forma, puede proporcionar permisos independientes para cada archivo, si es necesario.

En el siguiente ejemplo, se muestra un archivo credentials con un perfil [default]. Establece la configuración global aws_access_key_idaws_secret_access_key, y la configuración aws_session_token global.

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

Independientemente de si utiliza un perfil con nombre o «default» en el credentials archivo, cualquier configuración que aparezca aquí se combinará con la configuración del config archivo que utilice el mismo nombre de perfil. Si hay credenciales en ambos archivos para un perfil que comparte el mismo nombre, las claves del archivo de credenciales tienen prioridad.