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.
Autenticación AWS mediante el uso del AWS SDK for Java 2.x
Al utilizar el AWS SDK for Java 2.x, algo importante que hay que saber sobre la autenticación es que el SDK gestiona automáticamente el complejo proceso de firma de solicitudes con las credenciales de su entorno o funciones de IAM sin necesidad de implementar ningún algoritmo criptográfico.
El SDK gestiona la detección de credenciales, la creación de firmas y la actualización de credenciales de forma totalmente oculta, lo que le permite centrarse en la lógica de la aplicación.
Prepárese para la autenticación
En el tema Autenticación AWS SDKs y acceso de la Guía de referencia y herramientas se describen los distintos enfoques de autenticación. Le recomendamos que siga las instrucciones para configurar el acceso al Centro de identidades de IAM para que el SDK pueda adquirir las credenciales.
Tras seguir las instrucciones AWS SDKs y la Guía de referencia de herramientas, el sistema debería estar configurado para permitir que el SDK firme las solicitudes:
1. Configuración para el acceso mediante inicio de sesión único al SDK
Tras completar el paso 2 de la sección de acceso mediante programación para que el SDK pueda utilizar la autenticación del IAM Identity Center, el sistema debe contener los siguientes elementos.
-
El AWS CLI, que se utiliza para iniciar una sesión en el portal de AWS acceso antes de ejecutar la aplicación.
-
Un archivo
~/.aws/config
que contiene un perfil predeterminado. El SDK para Java utiliza la configuración de proveedor de token de SSO del perfil para adquirir las credenciales antes de enviar las solicitudes a AWS. El valorsso_role_name
, que es un rol de IAM conectado a un conjunto de permisos del Centro de identidades de IAM, debería permitir el acceso a los Servicios de AWS utilizados en la aplicación.El siguiente archivo
config
de ejemplo muestra la configuración de un perfil predeterminado con el proveedor de token de SSO. La configuraciónsso_session
del perfil hace referencia a la secciónsso-session
nombrada. La secciónsso-session
contiene la configuración para iniciar una sesión en el portal de acceso a AWS.[default] sso_session = my-sso sso_account_id =
111122223333
sso_role_name =SampleRole
region = us-east-1 output = json [sso-session my-sso] sso_region = us-east-1 sso_start_url =https://provided-domain.awsapps.com/start
sso_registration_scopes = sso:account:access
Para obtener más información sobre los ajustes utilizados en la configuración del proveedor de token de SSO, consulte Configuración del proveedor de token de SSO en la Guía de referencia de herramientas AWS SDKs y herramientas.
Si tu entorno de desarrollo no está configurado para el acceso mediante programación como se ha mostrado anteriormente, sigue el paso 2 de la SDKs guía de referencia.
2. Inicie sesión con el AWS CLI
Antes de ejecutar una aplicación que acceda Servicios de AWS, necesita una sesión activa en el portal de AWS acceso para que el SDK utilice la autenticación del IAM Identity Center para resolver las credenciales. Ejecute el siguiente comando AWS CLI para iniciar sesión en el portal de AWS acceso.
aws sso login
Como tiene una configuración de perfil predeterminada, no necesita llamar al comando con una opción --profile
. Si la configuración del proveedor de token de SSO utiliza un perfil con nombre, el comando es aws sso login --profile
.named-profile
Para comprobar si ya tiene una sesión activa, ejecute el siguiente comando de la AWS CLI .
aws sts get-caller-identity
La respuesta a este comando debe indicar la cuenta y el conjunto de permisos del Centro de identidades de IAM configurados en el archivo compartido config
.
nota
Si ya tiene una sesión activa en el portal de AWS acceso y la ejecutaaws sso
login
, no tendrá que proporcionar credenciales.
Sin embargo, verá un cuadro de diálogo en el que se solicita permiso para que botocore
acceda a su información. botocore
es la base de la AWS CLI .
Seleccione Permitir para autorizar el acceso a su información para el AWS CLI SDK for Java.
Opciones de autenticación adicionales
Para obtener más opciones de autenticación para el SDK, como el uso de perfiles y variables de entorno, consulte el capítulo de configuración de la Guía de referencia de herramientas AWS SDKs y herramientas.