AWS SDKs y referencia de configuración de herramientas - AWS SDKs y 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.

AWS SDKs y referencia de configuración de herramientas

SDKs proporcionan un idioma específico para APIs . 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, SDKs disponen de estrategias flexibles para obtener credenciales que utilizar en sus solicitudes, mantener la configuración que se utilizará con cada servicio y obtener valores para utilizarlos en la configuración global.

Puede encontrar información detallada sobre los ajustes de configuración en las siguientes secciones:

Cómo crear clientes de servicio

Para acceder mediante programación Servicios de AWS, SDKs utilice una clase/objeto de cliente para cada uno. Servicio de AWS Por ejemplo, si tu aplicación necesita acceder a Amazon EC2, crea un objeto EC2 cliente de Amazon 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 casos SDKs, 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

La configuración global configura las funciones, los proveedores de credenciales y otras funcionalidades compatibles con la mayoría SDKs y que tienen un amplio impacto en todos los ámbitos. Servicios de AWS Todos SDKs tienen una serie de lugares (o fuentes) que comprueban para encontrar un valor para la configuración global. La siguiente es la configuración de la prioridad de búsqueda:

  1. 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 del parámetro AWS CLI o Herramientas de AWS para PowerShell, estos parámetros 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 Servicio de AWS cliente o un objeto de configuración o, a veces, al llamar a una API individual.

  2. Solo en Java/Kotlin: la propiedad del sistema JVM correspondiente a la configuración está marcada. Si se ha establecido, se usa ese valor para configurar el cliente.

  3. Se comprueba la variable de entorno . Si se ha establecido, se usa ese valor para configurar el cliente.

  4. El SDK comprueba la configuración en el credentials archivo compartido. Si está configurado, el cliente lo usa.

  5. El config archivo compartido de la configuración. Si la configuración está presente, el SDK la usa.

    • La variable de AWS_PROFILE entorno o la propiedad del sistema aws.profile JVM se pueden usar para especificar el perfil que carga el SDK.

  6. Los valores predeterminados proporcionados por el propio código fuente del SDK se utilizan en último lugar.

nota

Es posible que algunas SDKs herramientas se muestren en un orden diferente. Además, algunas SDKs herramientas admiten otros métodos de almacenamiento y recuperación de parámetros. Por ejemplo, AWS SDK for .NET es compatible con una fuente adicional llamada SDK Store. 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.

Descripción de 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 Java y Kotlin SDKs) los ajustes de la JVM que se pueden utilizar fuera del código para configurar la función. Cada tema vinculado de cada lista te lleva a la página de configuración correspondiente.

Cada función 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 añadiendo la configuración a un archivo de configuración, estableciendo una variable de entorno o (solo para Java y Kotlin) configurando una propiedad del sistema JVM. Cada configuración muestra todos los métodos admitidos para establecer el valor en un bloque situado 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 Compresión de solicitudes características.

La información de la configuración de disable_request_compression ejemplo documenta lo siguiente:

  • Hay tres formas equivalentes de controlar la compresión de las solicitudes fuera del código base. Puede:

    • Configúralo en tu archivo de configuración usando disable_request_compression

    • Configúralo como una variable de entorno usando 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 esta cuestión, ya que es exclusiva de cada SDK. Si quieres establecer tu configuración en el propio código, consulta la guía específica del SDK o la referencia de la API.

  • Si no haces nada, el valor predeterminado seráfalse.

  • Los únicos valores válidos para esta configuración booleana son true y. false

En la parte inferior de cada página de características hay una tabla de Support by AWS SDKs and tools.

En esta tabla se muestra si tu SDK admite las configuraciones que aparecen en la página. La Supported columna 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. PartialEn efecto, 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 AWS config archivo compartido. Son globales y afectan a todos Servicios de AWS. SDKs y las herramientas también pueden admitir configuraciones y variables de entorno únicas. Para ver los ajustes y las variables de entorno compatibles únicamente con un SDK o herramienta individual, consulta el SDK o la guía de herramientas específicos.

Nombre del conjunto Detalles
account_id_endpoint_mode Puntos finales basados en cuentas
api_versions Ajustes de configuración general
aws_access_key_id AWS claves de acceso
aws_account_id puntos finales basados en cuentas
aws_secret_access_key AWS claves de acceso
aws_session_token AWS claves de acceso
ca_bundle Ajustes de configuración general
credential_process Proveedor de credenciales de proceso
credential_source Asumir el rol de proveedor de credenciales
defaults_mode Valores predeterminados de configuración inteligente
disable_request_compression Compresión de solicitudes
duration_seconds Asumir el rol de proveedor de credenciales
ec2_metadata_service_endpoint Proveedor de credenciales IMDS
ec2_metadata_service_endpoint_mode Proveedor de credenciales IMDS
ec2_metadata_v1_disabled Proveedor de credenciales IMDS
endpoint_discovery_enabled Detección de puntos de conexión
endpoint_url Puntos de conexión específicos del servicio
external_id Asumir el rol de proveedor de credenciales
ignore_configured_endpoint_urls Puntos de conexión específicos del servicio
max_attempts Comportamiento de los reintentos
metadata_service_num_attempts Metadatos de EC2 instancias de Amazon
metadata_service_timeout Metadatos de EC2 instancias de Amazon
mfa_serial Asumir el rol de proveedor de credenciales
output Ajustes de configuración general
parameter_validation Ajustes de configuración general
region Región de AWS
request_checksum_calculation Protecciones de integridad de datos para Amazon S3
request_min_compression_size_bytes Compresión de solicitudes
response_checksum_validation Protecciones de integridad de datos para Amazon S3
retry_mode Comportamiento de los reintentos
role_arn Asumir el rol de proveedor de credenciales
role_session_name Asumir el rol de proveedor de credenciales
s3_disable_multiregion_access_points Puntos de acceso multirregión de Amazon S3
s3_use_arn_region Puntos de acceso de Amazon S3
sdk_ua_app_id Application ID
source_profile Asumir el rol de proveedor de credenciales
sso_account_id Proveedor de credenciales del IAM Identity Center
sso_region Proveedor de credenciales del IAM Identity Center
sso_registration_scopes Proveedor de credenciales del IAM Identity Center
sso_role_name Proveedor de credenciales del IAM Identity Center
sso_start_url Proveedor de credenciales del IAM Identity Center
sts_regional_endpoints AWS STS Puntos de conexión regionales
use_dualstack_endpoint Puntos de conexión de doble pila y FIPS
use_fips_endpoint Puntos de conexión de doble pila y FIPS
web_identity_token_file Asumir el rol de proveedor de credenciales

Lista de ajustes de archivos Credentials

Los ajustes que se indican en la siguiente tabla se pueden asignar al AWS credentials archivo compartido. Son globales y afectan a todos Servicios de AWS. SDKs y las herramientas también pueden admitir configuraciones y variables de entorno únicas. Para ver los ajustes y las variables de entorno compatibles únicamente con un SDK o herramienta individual, consulta el SDK o la guía de herramientas específicos.

Nombre del conjunto Detalles
aws_access_key_id AWS claves de acceso
aws_secret_access_key AWS claves de acceso
aws_session_token AWS claves de acceso

Lista de variables de entorno

Las variables de entorno compatibles con la mayoría SDKs se muestran en la siguiente tabla. Son globales y afectan a todos Servicios de AWS. SDKs y las herramientas también pueden admitir configuraciones y variables de entorno únicas. Para ver los ajustes y las variables de entorno compatibles únicamente con un SDK o herramienta individual, consulta el SDK o la guía de herramientas específicos.

Nombre del conjunto Detalles
AWS_ACCESS_KEY_ID AWS claves de acceso
AWS_ACCOUNT_ID puntos finales basados en cuentas
AWS_ACCOUNT_ID_ENDPOINT_MODE Puntos de enlace basados en cuentas
AWS_CA_BUNDLE Ajustes de configuración general
AWS_CONFIG_FILE Ubicación de los archivos compartidos config y credentials
AWS_CONTAINER_AUTHORIZATION_TOKEN Proveedor de credenciales de contenedor
AWS_CONTAINER_AUTHORIZATION_TOKEN_FILE Proveedor de credenciales de contenedor
AWS_CONTAINER_CREDENTIALS_FULL_URI Proveedor de credenciales de contenedor
AWS_CONTAINER_CREDENTIALS_RELATIVE_URI Proveedor de credenciales de contenedor
AWS_DEFAULTS_MODE Valores predeterminados de configuración inteligente
AWS_DISABLE_REQUEST_COMPRESSION Compresión de solicitudes
AWS_EC2_METADATA_DISABLED Proveedor de credenciales IMDS
AWS_EC2_METADATA_SERVICE_ENDPOINT Proveedor de credenciales IMDS
AWS_EC2_METADATA_SERVICE_ENDPOINT_MODE Proveedor de credenciales IMDS
AWS_EC2_METADATA_V1_DISABLED Proveedor de credenciales IMDS
AWS_ENABLE_ENDPOINT_DISCOVERY Detección de puntos de conexión
AWS_ENDPOINT_URL Puntos de conexión específicos del servicio
AWS_ENDPOINT_URL_<SERVICE> Puntos de conexión específicos del servicio
AWS_IGNORE_CONFIGURED_ENDPOINT_URLS Puntos de conexión específicos del servicio
AWS_MAX_ATTEMPTS Comportamiento de los reintentos
AWS_METADATA_SERVICE_NUM_ATTEMPTS Metadatos de EC2 instancias de Amazon
AWS_METADATA_SERVICE_TIMEOUT Metadatos de EC2 instancias de Amazon
AWS_PROFILE Archivos compartidos config y credentials
AWS_REGION Región de AWS
AWS_REQUEST_CHECKSUM_CALCULATION Protecciones de integridad de datos para Amazon S3
AWS_REQUEST_MIN_COMPRESSION_SIZE_BYTES Compresión de solicitudes
AWS_RESPONSE_CHECKSUM_VALIDATION Protecciones de integridad de datos para Amazon S3
AWS_RETRY_MODE Comportamiento de los reintentos
AWS_ROLE_ARN Asumir el rol de proveedor de credenciales
AWS_ROLE_SESSION_NAME Asumir el rol de proveedor de credenciales
AWS_S3_DISABLE_MULTIREGION_ACCESS_POINTS Puntos de acceso multirregión de Amazon S3
AWS_S3_USE_ARN_REGION Puntos de acceso de Amazon S3
AWS_SDK_UA_APP_ID Application ID
AWS_SECRET_ACCESS_KEY AWS claves de acceso
AWS_SESSION_TOKEN AWS claves de acceso
AWS_SHARED_CREDENTIALS_FILE Ubicación de los archivos compartidos config y credentials
AWS_STS_REGIONAL_ENDPOINTS AWS STS Puntos de conexión regionales
AWS_USE_DUALSTACK_ENDPOINT Puntos de conexión de doble pila y FIPS
AWS_USE_FIPS_ENDPOINT Puntos de conexión de doble pila y FIPS
AWS_WEB_IDENTITY_TOKEN_FILE Asumir el rol de proveedor de credenciales

lista de propiedades del sistema JVM

Puede utilizar las siguientes propiedades del sistema JVM para AWS SDK for Java y para AWS SDK para Kotlin (dirigidas a la JVM). Consulte ¿Cómo configurar las propiedades del sistema JVM para obtener instrucciones sobre cómo configurar las propiedades del sistema JVM.

Nombre del conjunto Detalles
aws.accessKeyId AWS claves de acceso
aws.accountId puntos finales basados en cuentas
aws.accountIdEndpointMode Puntos de enlace basados en cuentas
aws.configFile Ubicación de los archivos compartidos config y credentials
aws.defaultsMode Valores predeterminados de configuración inteligente
aws.disableEc2MetadataV1 Proveedor de credenciales IMDS
aws.disableRequestCompression Compresión de solicitudes
aws.ec2MetadataServiceEndpoint Proveedor de credenciales IMDS
aws.ec2MetadataServiceEndpointMode Proveedor de credenciales IMDS
aws.endpointDiscoveryEnabled Detección de puntos de conexión
aws.endpointUrl Puntos de conexión específicos del servicio
aws.endpointUrl<ServiceName> Puntos de conexión específicos del servicio
aws.ignoreConfiguredEndpointUrls Puntos de conexión específicos del servicio
aws.maxAttempts Comportamiento de los reintentos
aws.profile Archivos compartidos config y credentials
aws.region Región de AWS
aws.requestChecksumCalculation Protecciones de integridad de datos para Amazon S3
aws.requestMinCompressionSizeBytes Compresión de solicitudes
aws.responseChecksumValidation Protecciones de integridad de datos para Amazon S3
aws.retryMode Comportamiento de los reintentos
aws.roleArn Asumir el rol de proveedor de credenciales
aws.roleSessionName Asumir el rol de proveedor de credenciales
aws.s3DisableMultiRegionAccessPoints Puntos de acceso multirregión de Amazon S3
aws.s3UseArnRegion Puntos de acceso de Amazon S3
aws.secretAccessKey AWS claves de acceso
aws.sessionToken AWS claves de acceso
aws.sharedCredentialsFile Ubicación de los archivos compartidos config y credentials
aws.useDualstackEndpoint Puntos de conexión de doble pila y FIPS
aws.useFipsEndpoint Puntos de conexión de doble pila y FIPS
aws.userAgentAppId Application ID
aws.webIdentityTokenFile Asumir el rol de proveedor de credenciales