Anunciamos
Autenticación de SDK con AWS
Debe establecer cómo se autentica el código con AWS cuando se desarrolla con servicios de AWS. Puede configurar el acceso mediante programación a los recursos de AWS de diferentes maneras, según el entorno y el acceso de AWS disponibles.
Para elegir el método de autenticación y configurarlo para el SDK, consulte Autenticación y acceso en la Guía de referencia de herramientas y SDK de AWS.
Recomendamos que los nuevos usuarios que se desarrollen localmente y no dispongan de un método de autenticación por parte de su empleador configuren AWS IAM Identity Center. Este método incluye la instalación de AWS CLI para facilitar la configuración y para iniciar sesión con regularidad en el portal de acceso a AWS. Si elige este método, su entorno debería contener los siguientes elementos después de completar el procedimiento de Autenticación del Centro de Identidad de IAM descrito en la Guía de referencia de las herramientas y los SDK de AWS:
-
AWS CLI, que se utiliza para iniciar una sesión en el portal de acceso a AWS antes de ejecutar la aplicación.
-
Un archivo
config
compartido de AWS que tiene un perfil[default]
con un conjunto de valores de configuración a los que se puede hacer referencia desde el SDK. Para encontrar la ubicación de este archivo, consulte Ubicación de los archivos compartidos en la Guía de referencia de las herramientas y los SDK de AWS. -
El archivo compartido de
config
establece la configuración deregion
. Esto establece la región de AWS predeterminada que el SDK usa para las solicitudes de AWS. Esta región se usa para las solicitudes de servicio del SDK que no tienen especificadas una región. -
El SDK utiliza la configuración de proveedor de token de SSO del perfil para adquirir las credenciales antes de enviar las solicitudes a AWS. El valor
sso_role_name
, que es un rol de IAM conectado a un conjunto de permisos del Centro de identidades de IAM, permite 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ón llamadasso-session
. 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
El SDK para JavaScript no necesita que se agreguen paquetes adicionales (como SSO
y SSOOIDC
) a la aplicación para utilizar la autenticación de IAM Identity Center.
Iniciar una sesión en el portal de acceso a AWS
Antes de ejecutar una aplicación que accede a Servicios de AWS, necesita una sesión activa en el portal de acceso a AWS para que SDK utilice la autenticación del IAM Identity Center para resolver las credenciales. En función de la duración de las sesiones configuradas, el acceso terminará por caducar y SDK detectará un error de autenticación. Para iniciar sesión en el portal de acceso a AWS, ejecute el siguiente comando en AWS CLI.
aws sso login
Si sigue la guía y utiliza 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 AWS CLI.
aws sts get-caller-identity
Si su sesión está activa, la respuesta a este comando debe indicar la cuenta y el conjunto de permisos del Centro de identidades de IAM configurados en el archivo config
compartido.
nota
Si ya tiene una sesión activa en el portal de acceso a AWS y ejecuta aws sso
login
, no tendrá que proporcionar credenciales.
Es posible que el proceso de inicio de sesión le permita el acceso de AWS CLI a los datos. Como AWS CLI se ha creado con el SDK para Python, los mensajes de permiso pueden contener variaciones del nombre botocore
.
Información adicional de autenticación
Los usuarios humanos, que también reciben el nombre de identidades humanas, son las personas, los administradores, los desarrolladores, los operadores y los consumidores de las aplicaciones. Deben tener una identidad para acceder a los entornos y aplicaciones de AWS. Los usuarios humanos que son miembros de su organización (es decir, usted, el desarrollador) se conocen como identidades de personal.
Utilice credenciales temporales al acceder a AWS. Puede utilizar un proveedor de identidades para los usuarios humanos para proporcionar acceso federado a las cuentas de AWS asumiendo roles, que proporcionan credenciales temporales. Si desea administrar el acceso de manera centralizada, se recomienda utilizar (IAM Identity Center) para administrar el acceso a las cuentas y los permisos de esas cuentas. Para obtener más alternativas, consulte lo siguiente:
-
Para obtener más información sobre las prácticas recomendadas, consulte Prácticas recomendadas de seguridad en IAM en la Guía del usuario de IAM.
-
Para crear credenciales de AWS de corta duración, consulte Credenciales de seguridad temporales en la Guía del usuario de IAM.
-
Para obtener más información sobre otros proveedores de credenciales de SDK para JavaScript, consulte los proveedores de credenciales estandarizados en la Guía de referencia de las herramientas y los SDK de AWS.