La AWS SDK for Java versión 1.x entró en modo de mantenimiento el 31 de julio de 2024 y estará disponible el 31 de end-of-support
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.
Configurar credenciales temporales de AWS y Región de AWS para desarrollo
Para conectarse a cualquiera de los servicios compatibles con AWS SDK for Java, debe proporcionar las credenciales de AWS. Los SDK de AWS y las CLI de AWS usan cadenas de proveedores para buscar las credenciales de AWS en diversos lugares; por ejemplo, en las variables de entorno del sistema o del usuario y en los archivos de configuración de AWS.
En este tema se proporciona información básica acerca de cómo configurar las credenciales de AWS para el desarrollo de aplicaciones locales mediante AWS SDK for Java. Si necesita configurar las credenciales para utilizarlas en una instancia EC2 o si utiliza el IDE de Eclipse para desarrollo, consulte los siguientes temas:
-
Cuando utilice una instancia EC2, cree un rol de IAM y conceda acceso a la instancia EC2 a dicho rol como se indica en Uso de roles de IAM para conceder acceso a los recursos de AWS en Amazon EC2.
-
Configurar credenciales de AWS en Eclipse mediante AWS Toolkit for Eclipse
. Consulte Configuración de credenciales de AWS en la Guía del usuario de AWS Toolkit for Eclipse.
Configurar credenciales temporales
Puede configurar las credenciales temporales para el AWS SDK for Java de varias maneras, pero a continuación se indican los enfoques recomendados:
-
Configure las credenciales temporales en el archivo de perfil de credenciales de AWS del sistema local, situado en:
-
~/.aws/credentials
en Linux, macOS o Unix -
C:\Users\USERNAME\.aws\credentials
en Windows
Consulte las Configure credenciales temporales para el SDK en esta guía para sabre cómo obtener sus credenciales temporales.
-
-
Establezca las variables de entorno
AWS_ACCESS_KEY_ID
,AWS_SECRET_ACCESS_KEY
yAWS_SESSION_TOKEN
.Para establecer estas variables en Linux, MacOS, o Unix, utilice :
export AWS_ACCESS_KEY_ID=your_access_key_id export AWS_SECRET_ACCESS_KEY=your_secret_access_key export AWS_SESSION_TOKEN=your_session_token
Para establecer estas variables en Windows, utilice :
set AWS_ACCESS_KEY_ID=your_access_key_id set AWS_SECRET_ACCESS_KEY=your_secret_access_key set AWS_SESSION_TOKEN=your_session_token
-
Para una instancia EC2, especifique un rol de IAM y conceda a la instancia EC2 acceso a dicho rol. Consulte los roles de IAM para Amazon EC2 en la Guía del usuario de Amazon EC2 para instancias de Linux para obtener información detallada sobre su funcionamiento.
Una vez que haya establecido sus credenciales de AWS utilizando alguno de estos métodos, AWS SDK for Java las cargará automáticamente mediante la cadena predeterminada de proveedores de credenciales. Para obtener más información sobre cómo trabajar con credenciales de AWS en sus aplicaciones Java, consulte Uso de credenciales de AWS.
Actualización de credenciales IMDS
El AWS SDK for Java admite seleccionar la actualización de credenciales IMDS en segundo plano cada 1 minuto, independientemente del plazo de vencimiento de la credencial. Esto le permite actualizar las credenciales con más frecuencia y reduce la posibilidad de que no alcanzar IMDS afecte a la disponibilidad de AWS percibida.
1. // Refresh credentials using a background thread, automatically every minute. This will log an error if IMDS is down during 2. // a refresh, but your service calls will continue using the cached credentials until the credentials are refreshed 3. // again one minute later. 4. 5. InstanceProfileCredentialsProvider credentials = 6. InstanceProfileCredentialsProvider.createAsyncRefreshingProvider(true); 7. 8. AmazonS3Client.builder() 9. .withCredentials(credentials) 10. .build(); 11. 12. // This is new: When you are done with the credentials provider, you must close it to release the background thread. 13. credentials.close();
Definir la Región de AWS
Debe definir la región de Región de AWS predeterminada que se usará para obtener acceso a los servicios de AWS con el AWS SDK for Java. Para disfrutar de un rendimiento de red óptimo, elija una región que esté geográficamente cerca de usted (o de sus clientes). Para ver una lista de las regiones, consulte Regiones y puntos de conexión en la Referencia general de Amazon Web Services.
nota
Si no selecciona una región, se usará us-east-1 de forma predeterminada.
Puede utilizar técnicas similares a las de la configuración de credenciales para definir la región de AWS predeterminada:
-
Defina la región de Región de AWS en el archivo de configuración de AWS en su sistema local, situado en:
-
~/.aws/config en Linux, macOS o Unix
-
C:\Users\USERNAME\.aws\config on Windows
Este archivo debe contener líneas con el siguiente formato:
+
[default] region = your_aws_region
+
Sustituya su Región de AWS (por ejemplo, "us-east-1") por su_region_aws.
-
-
Establezca la variable de entorno
AWS_REGION
.En Linux, macOS o Unix, utilice
:
export AWS_REGION=your_aws_region
En Windows, use
:
set AWS_REGION=your_aws_region
Donde su_región_de_aws es el nombre de la región de Región de AWS que desee.