Tutorial: uso de IAM Identity Center para ejecutar comandos de Amazon S3 en la AWS CLI
En este tema se describe cómo configurar la AWS CLI para autenticar a los usuarios con AWS IAM Identity Center (IAM Identity Center) actual, de manera que se recuperen las credenciales para ejecutar comandos de la AWS Command Line Interface (AWS CLI) para Amazon Simple Storage Service (Amazon S3).
Temas
- Paso 1: autenticación en IAM Identity Center
- Paso 2: recopilación de la información de IAM Identity Center
- Paso 3: creación de buckets de Amazon S3
- Paso 4: Instalar la AWS CLI
- Paso 5: configuración del perfil de la AWS CLI
- Paso 6: inicio de sesión en IAM Identity Center
- Paso 7: ejecución de comandos de Amazon S3
- Paso 8: cierre de sesión en IAM Identity Center
- Paso 9: eliminación de recursos
- Resolución de problemas
- Recursos adicionales de
Paso 1: autenticación en IAM Identity Center
Obtenga acceso a la autenticación de SSO en IAM Identity Center. Elija uno de los siguientes métodos para acceder a las credenciales de AWS.
Siga las instrucciones en Introducción en la Guía del usuario de AWS IAM Identity Center. Este proceso activa IAM Identity Center, crea un usuario administrativo y agrega un conjunto apropiado de permisos de privilegio mínimo.
nota
Cree un conjunto de permisos que aplique los permisos de privilegio mínimo. Le recomendamos que utilice el conjunto de permisos predefinido PowerUserAccess
, a menos que su empleador haya creado un conjunto de permisos personalizado para este fin.
Salga del portal e inicie sesión de nuevo para ver las Cuentas de AWS, los detalles sobre el acceso programático y las opciones para Administrator
o PowerUserAccess
. Seleccione PowerUserAccess
cuando trabaje con el SDK.
Inicie sesión en AWS a través del portal de su proveedor de identidades. Si su administrador de la nube le ha concedido permisos PowerUserAccess
(desarrollador), verá las Cuentas de AWS a las que tiene acceso y su conjunto de permisos. Junto al nombre de su conjunto de permisos, verá las opciones para acceder a las cuentas de forma manual o programática mediante ese conjunto de permisos.
Las implementaciones personalizadas pueden dar lugar a experiencias diferentes, como distintos nombres de conjuntos de permisos. Si no está seguro de qué configuración de permisos debe utilizar, contacte con su equipo de TI para obtener ayuda.
Inicie sesión en AWS a través del portal de acceso de AWS. Si su administrador de la nube le ha concedido permisos PowerUserAccess
(desarrollador), verá las Cuentas de AWS a las que tiene acceso y su conjunto de permisos. Junto al nombre de su conjunto de permisos, verá las opciones para acceder a las cuentas de forma manual o programática mediante ese conjunto de permisos.
Contacte con su equipo de TI para obtener ayuda.
Paso 2: recopilación de la información de IAM Identity Center
Tras acceder a AWS, recopile la información que este contiene realizando lo siguiente:
-
En el portal de acceso de AWS, seleccione el conjunto de permisos que utiliza para el desarrollo y seleccione el enlace Claves de acceso.
-
En el cuadro de diálogo Obtener credenciales, elija la pestaña que coincida con su sistema operativo.
-
Elija el método de credenciales del centro de identidades de IAM para obtener los valores
SSO Start URL
ySSO Region
que necesita para ejecutaraws configure sso
. Para obtener información sobre qué ámbitos se deben registrar, consulte Ámbitos de acceso de OAuth 2.0 en la Guía del usuario del IAM Identity Center.
Paso 3: creación de buckets de Amazon S3
Inicie sesión AWS Management Console Management Console y abra la consola de Amazon S3 en https://console.aws.amazon.com/s3/
Para este tutorial, cree algunos buckets que pueda recuperar más tarde en una lista.
Paso 4: Instalar la AWS CLI
Para instalar la AWS CLI, siga las instrucciones de su sistema operativo. Para obtener más información, consulte Instalación o actualización de la versión más reciente de AWS CLI.
Una vez instalada, puede verificar la instalación abriendo el terminal que prefiera y ejecutando el siguiente comando. Debería aparecer la versión instalada de la AWS CLI.
$
aws --version
Paso 5: configuración del perfil de la AWS CLI
Configure su perfil con uno de los siguientes métodos.
La sección sso-session
del archivo config
se usa para agrupar las variables de configuración para adquirir los tokens de acceso SSO, que luego se pueden usar para adquirir credenciales de AWS. Se utilizan las siguientes configuraciones:
-
(Obligatorio)
sso_start_url
-
(Obligatorio)
sso_region
Defina una sección sso-session
y asóciela a un perfil. Los ajustes de sso_start_url
y sso_region
se deben definir dentro de la sección sso-session
. Normalmente, sso_account_id
y sso_role_name
deben establecerse en la sección profile
para que el SDK pueda solicitar las credenciales de SSO.
En el siguiente ejemplo se configura el SDK para que solicite credenciales de SSO y admita la actualización automática de tokens:
[profile
dev
] sso_session =my-sso
sso_account_id =111122223333
sso_role_name =SampleRole
[sso-sessionmy-sso
] sso_region =us-east-1
sso_start_url =https://my-sso-portal.awsapps.com/start
La sección sso-session
del archivo config
se usa para agrupar las variables de configuración para adquirir los tokens de acceso SSO, que luego se pueden usar para adquirir credenciales de AWS. Se utilizan las siguientes configuraciones:
-
(Obligatorio)
sso_start_url
-
(Obligatorio)
sso_region
Defina una sección sso-session
y asóciela a un perfil. sso_region
ysso_start_url
deben establecerse en la sección sso-session
. Normalmente, sso_account_id
y sso_role_name
deben establecerse en la sección profile
para que el SDK pueda solicitar las credenciales de SSO.
En el siguiente ejemplo se configura el SDK para que solicite credenciales de SSO y admita la actualización automática de tokens:
[profile
my-dev-profile
] sso_session =my-sso
sso_account_id =111122223333
sso_role_name =SampleRole
[sso-sessionmy-sso
] sso_region =us-east-1
sso_start_url =https://my-sso-portal.awsapps.com/start
sso_registration_scopes =sso:account:access
El token de autenticación se almacena en caché en el disco en el directorio ~/.aws/sso/cache
con un nombre de archivo basado en el nombre de la sesión.
Paso 6: inicio de sesión en IAM Identity Center
nota
El proceso de inicio de sesión puede pedirle que permita que la AWS CLI acceda a sus datos. Dado que la AWS CLI se ha creado con el SDK para Python, los mensajes de permiso pueden contener variaciones del nombre botocore
.
Para recuperar y almacenar en caché las credenciales de IAM Identity Center, ejecute el siguiente comando de la AWS CLI para abrir su navegador predeterminado y compruebe que ha iniciado sesión en IAM Identity Center.
$
aws sso login --profile my-dev-profile
Paso 7: ejecución de comandos de Amazon S3
Para generar una lista de los buckets que creó anteriormente, utilice el comando aws s3
ls
$
aws s3 ls
2018-12-11 17:08:50 my-bucket 2018-12-14 14:55:44 my-bucket2
Paso 8: cierre de sesión en IAM Identity Center
Cuando haya terminado de utilizar su perfil de IAM Identity Center, ejecute el siguiente comando para eliminar las credenciales almacenadas en caché.
$
aws sso logout
Successfully signed out of all SSO profiles.
Paso 9: eliminación de recursos
Cuando termine este tutorial, elimine todos los recursos que haya creado durante el tutorial y que ya no necesite, incluidos los buckets de Amazon S3.
Resolución de problemas
Si tiene problemas con la AWS CLI, consulte Solución de errores para la AWS CLI para ver los pasos comunes de solución de problemas.
Recursos adicionales de
Los recursos adicionales son los siguientes.
-
Configuración de la autenticación de IAM Identity Center con la AWS CLI
-
Instalación o actualización de la versión más reciente de AWS CLI
-
Opciones de los archivos de configuración y credenciales en la AWS CLI
-
aws configure sso
en la AWS CLI version 2 Reference -
aws configure sso-session
en la AWS CLI version 2 Reference -
aws sso login
en la AWS CLI version 2 Reference -
aws sso logout
en la AWS CLI version 2 Reference -
Setting up to use the AWS CLI with CodeCatalyst en la Guía del usuario de Amazon CodeCatalyst
-
Ámbitos de acceso de OAuth 2.0 en la Guía del usuario del IAM Identity Center
-
Tutoriales de introducción en la Guía del usuario del IAM Identity Center