Referencia de configuración de SDK y herramientas de AWS
Los SDK proporcionan API específicas del lenguaje para Servicios de AWS. Se encargan de algunas de las tareas pesadas necesarias para realizar correctamente las llamadas a la API, como la autenticación, el comportamiento de reintentos y mucho más. Para ello, los SDK cuentan con estrategias flexibles que permiten obtener credenciales para utilizarlas en tus solicitudes, mantener la configuración que se utilizará con cada servicio y obtener valores para utilizarlos en la configuración global.
Encontrará información detallada sobre los ajustes de configuración en las siguientes secciones:
-
Proveedores de credenciales estandarizados de SDK y herramientas de AWS: los proveedores de credenciales comunes están estandarizados en varios SDK.
-
Características estandarizadas de SDK y herramientas de AWS: funciones comunes estandarizadas en varios SDK.
Cómo crear clientes de servicio
Para acceder a los Servicios de AWS mediante programación, los SDK utilizan una clase de cliente u objeto para cada Servicio de AWS. Por ejemplo, si su aplicación necesita acceder a Amazon EC2, su aplicación crearía un objeto de cliente de Amazon EC2 para interactuar con ese servicio. A continuación, utiliza el cliente de servicio para realizar solicitudes al mismo Servicio de AWS. En la mayoría de los SDK, un objeto de cliente de servicio es inmutable, por lo que debe crear un cliente nuevo para cada servicio al que realice solicitudes y para realizar solicitudes al mismo servicio con una configuración diferente.
Prioridad de los ajustes
Los ajustes globales configuran las funciones, los proveedores de credenciales y otras funcionalidades compatibles con la mayoría de los SDK y que tienen un amplio impacto en todos los Servicios de AWS. Todos los SDK tienen una serie de lugares (o fuentes) que se comprueban para encontrar un valor para la configuración global. La siguiente es la configuración de la prioridad de búsqueda:
-
Cualquier configuración explícita establecida en el código o en el propio cliente de servicio tiene prioridad sobre cualquier otra.
-
Algunos ajustes se pueden establecer por operación y se pueden cambiar según sea necesario para cada operación que se invoque. En el caso de las operaciones de la AWS CLI o Herramientas de AWS para PowerShell, adoptan la forma de parámetros por operación que se introducen en la línea de comandos. En el caso de un SDK, las asignaciones explícitas pueden adoptar la forma de un parámetro que se establece al crear una instancia de un cliente Servicio de AWS o un objeto de configuración o, a veces, al llamar a una API individual.
-
-
Solo en Java/Kotlin: la propiedad del sistema JVM para la configuración está marcada. Si se ha establecido, se usa ese valor para configurar el cliente.
-
Se comprueba la variable de entorno . Si se ha establecido, se usa ese valor para configurar el cliente.
-
El SDK verifica la configuración en el archivo de
credentialscompartido. Si está configurado, el cliente lo usa. -
El archivo
configcompartido para la configuración. Si la configuración está presente, el SDK la usa.-
La variable de entorno
AWS_PROFILEo la propiedad del sistema JVMaws.profilese pueden utilizar para personalizar el perfil que carga el SDK.
-
-
Los valores predeterminados proporcionados por el código de origen del SDK se utilizan en último lugar.
nota
Es posible que algunos SDK y herramientas se muestren en un orden diferente. Además, algunos SDK y herramientas admiten otros métodos de almacenamiento y recuperación de parámetros. Por ejemplo, AWS SDK para .NET admite una fuente adicional llamada Tienda SDK. Para obtener más información sobre los proveedores exclusivos de un SDK o una herramienta, consulta la guía específica del SDK o la herramienta que estés utilizando.
El orden determina qué métodos tienen prioridad y sustituyen a los demás. Por ejemplo, si configuras un perfil en el archivo compartido config, solo se encuentra y se usa después de que el SDK o la herramienta comprueben primero los demás lugares. Esto significa que si colocas una configuración en el archivo credentials, se utilizará en lugar de la que se encuentra en el archivo config. Si configura una variable de entorno con una configuración y un valor, anulará esa configuración en los archivos credentials y config. Por último, una configuración en la operación individual (parámetro de la línea de comandos de la AWS CLI o parámetro de API) o en el código anularía todos los demás valores de ese comando.
Comprender las páginas de configuración de esta guía
Las páginas de la sección de referencia de configuración de esta guía detallan las configuraciones disponibles que se pueden configurar mediante varios mecanismos. En las tablas siguientes se enumeran los ajustes de los archivos de configuración y credenciales, las variables de entorno y (en el caso de los SDK de Java y Kotlin) los ajustes de la JVM que se pueden utilizar fuera del código para configurar la característica. Cada tema vinculado de cada lista lleva a la página de configuración correspondiente.
Cada característica o proveedor de credenciales tiene una página en la que se enumeran los ajustes que se utilizan para configurar esa funcionalidad. Para cada configuración, normalmente se puede establecer el valor al agregar el ajuste a un archivo de configuración, al etablecer una variable de entorno o (solo para Java y Kotlin) al ajustar una propiedad del sistema JVM. Cada configuración muestra todos los métodos admitidos para establecer el valor en un bloque situado por encima de los detalles de la descripción. Aunque la prioridad varía, la funcionalidad resultante es la misma independientemente de cómo se establezca.
La descripción incluirá el valor predeterminado, si lo hay, que surtirá efecto si no se hace nada. También define qué valor es válido para esa configuración.
Por ejemplo, veamos una configuración de la página de características Compresión de solicitudes.
La información de la configuración del ejemplo disable_request_compression documenta lo siguiente:
-
Hay tres formas equivalentes de controlar la compresión de las solicitudes fuera del código base. Puede:
-
Establecerlo en su archivo de configuración con
disable_request_compression -
Establecerlo como una variable de entorno con
AWS_DISABLE_REQUEST_COMPRESSION -
O bien, si utiliza el SDK de Java o Kotlin, configúrelo como una propiedad del sistema JVM mediante
aws.disableRequestCompression
nota
También puede haber una forma de configurar la misma funcionalidad directamente en el código, pero esta referencia no cubre este tema, ya que es exclusiva de cada SDK. Si quiere establecer su configuración en el propio código, consulte la guía específica del SDK o la referencia de la API.
-
-
Si no hace nada, el valor predeterminado será
false. -
Los únicos valores válidos para esta configuración booleana son
trueyfalse.
En la parte inferior de cada página de características hay una tabla de Soporte mediante herramientas y SDK de AWS.
En esta tabla se muestra si su SDK admite las configuraciones que aparecen en la página. La columna Supported indica el nivel de soporte con los siguientes valores:
-
Yes: la configuración es totalmente compatible con el SDK tal como está escrito. -
Partial: algunas de las configuraciones son compatibles o el comportamiento se aparta de la descripción. ParaPartial, una nota adicional indica la desviación. -
No: no se admite ninguno de los ajustes. Esto no indica si se podría lograr la misma funcionalidad en el código; solo indica que los ajustes de configuración externos enumerados no son compatibles.
Lista de ajustes de archivos Config
Los ajustes que se muestran en la siguiente tabla se pueden asignar en el archivo compartido config de AWS. Son globales y afectan a todos los Servicios de AWS. Los SDK y las herramientas también pueden admitir configuraciones y variables de entorno únicas. Para ver la configuración y las variables de entorno que solo admiten un SDK o una herramienta individual, consulte esa guía de SDK o de herramientas específica.
Lista de ajustes de archivos Credentials
Los ajustes que se muestran en la siguiente tabla se pueden asignar en el archivo compartido credentials de AWS. Son globales y afectan a todos los Servicios de AWS. Los SDK y las herramientas también pueden admitir configuraciones y variables de entorno únicas. Para ver la configuración y las variables de entorno que solo admiten un SDK o una herramienta individual, consulte esa guía de SDK o de herramientas específica.
| Nombre del conjunto | Detalles |
|---|---|
aws_access_key_id
|
AWS Claves de acceso de |
aws_secret_access_key
|
AWS Claves de acceso de |
aws_session_token
|
AWS Claves de acceso de |
Lista de variables de entorno
Las variables de entorno admitidas por la mayoría de los SDK se indican en la siguiente tabla. Son globales y afectan a todos los Servicios de AWS. Los SDK y las herramientas también pueden admitir configuraciones y variables de entorno únicas. Para ver la configuración y las variables de entorno que solo admiten un SDK o una herramienta individual, consulte esa guía de SDK o de herramientas específica.
Lista de propiedades del sistema JVM
Puede utilizar las siguientes propiedades del sistema JVM para AWS SDK para Java y para AWS SDK para Kotlin (dirigidas a JVM). Consulte Cómo establecer propiedades del sistema JVM para ver instrucciones sobre cómo configurar las propiedades del sistema JVM.