Esta es la guía para AWS CDK desarrolladores de la versión 2. La primera versión del CDK pasó a la etapa de mantenimiento el 1.° de junio de 2022 y no cuenta con soporte desde el 1.° de junio de 2023.
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.
En este ejemplo, configuramos el AWS Command Line Interface (AWS CLI) para autenticar a nuestro usuario con la configuración del proveedor de tokens del AWS IAM Identity Center. La configuración del proveedor de tokens del SSO permite recuperar AWS CLI automáticamente los tokens de autenticación actualizados para generar credenciales a corto plazo que podemos usar con la AWS Cloud Development Kit (AWS CDK) interfaz de línea de comandos (AWS CDK CLI).
Temas
Requisitos previos
En este ejemplo se supone que se completaron los siguientes requisitos previos:
-
Se requieren requisitos previos para configurar AWS e instalar nuestro sistema de inicio CLI herramientas. Para obtener más información, consulte Requisitos previos.
-
Nuestra organización estuvo a cargo de crear el IAM Identity Center como método de administración de usuarios.
-
Se creó al menos un usuario en IAM Identity Center.
Paso 1: Configure el AWS CLI
Para obtener instrucciones detalladas sobre este paso, consulte Configurar las AWS CLI credenciales de proveedor de tokens del IAM Identity Center con actualización automática de la autenticación en la Guía del AWS Command Line Interface usuario.
Iniciamos sesión en el portal de AWS acceso proporcionado por nuestra organización para recopilar la información de nuestro centro de identidad de IAM. Esto incluye la URL de inicio del SSO y la región del SSO.
A continuación, utilizamos el AWS CLI aws configure sso
comando para configurar un perfil del centro de identidad de IAM y, sso-session
en nuestro equipo local:
$
aws configure sso
SSO session name (Recommended):my-sso
SSO start URL [None]:https://my-sso-portal.awsapps.com/start
SSO region [None]:us-east-1
SSO registration scopes [sso:account:access]:<ENTER>
Los AWS CLI intentos de abrir nuestro navegador predeterminado para iniciar el proceso de inicio de sesión en nuestra cuenta del IAM Identity Center. Si no puede abrir nuestro navegador, se proporcionan instrucciones para iniciar manualmente el proceso de inicio de sesión. AWS CLI Este proceso asocia la sesión del IAM Identity Center con nuestra AWS CLI sesión actual.
Tras establecer nuestra sesión, se AWS CLI muestra lo que tenemos a nuestra Cuentas de AWS disposición:
There are 2 AWS accounts available to you. > DeveloperAccount, developer-account-admin@example.com (
123456789011
) ProductionAccount, production-account-admin@example.com (123456789022
)
Usamos las teclas de flecha para seleccionar nuestra DeveloperAccount.
A continuación, se AWS CLI muestran las funciones de IAM disponibles para nosotros en la cuenta seleccionada:
Using the account ID
123456789011
There are 2 roles available to you. > ReadOnly FullAccess
Usamos las teclas de flecha para FullAccessseleccionarlos.
A continuación, nos AWS CLI pide que completemos la configuración especificando un formato de salida predeterminado, un valor predeterminado Región de AWS y un nombre para nuestro perfil:
CLI default client Region [None]:
us-west-2
<ENTER>
> CLI default output format [None]:json
<ENTER>
CLI profile name [123456789011_FullAccess]:my-dev-profile
<ENTER>
AWS CLI Muestra un mensaje final en el que se muestra cómo utilizar el perfil indicado con: AWS CLI
To use this profile, specify the profile name using --profile, as shown: aws s3 ls --profile
my-dev-profile
Después de completar este paso, nuestro archivo config
tendrá el siguiente aspecto:
[profilemy-dev-profile
] sso_session =my-sso
sso_account_id =123456789011
sso_role_name =fullAccess
region =us-west-2
output =json
[sso-sessionmy-sso
] sso_region =us-east-1
sso_start_url =https://my-sso-portal.awsapps.com/start
sso_registration_scopes =sso:account:access
Ahora podemos usar este sso-session
y el perfil designado para solicitar credenciales de seguridad.
Paso 2: utilícelo AWS CLI para generar credenciales de seguridad
Para obtener instrucciones detalladas sobre este paso, consulte Usar un perfil del IAM Identity Center con nombre designado en la Guía del usuario de AWS Command Line Interface .
Usamos el AWS CLI aws sso login
comando para solicitar las credenciales de seguridad para nuestro perfil:
$
aws sso login --profile
my-dev-profile
AWS CLI Intenta abrir nuestro navegador predeterminado y verifica nuestro inicio de sesión en IAM. Si aún no hemos iniciado sesión en IAM Identity Center, se nos pedirá que completemos el proceso de inicio de sesión. Si no puede abrir nuestro navegador, se proporcionan instrucciones para iniciar manualmente el proceso de autorización. AWS CLI
Tras iniciar sesión correctamente, almacena en AWS CLI caché nuestras credenciales de sesión del IAM Identity Center. Estas credenciales incluyen una marca de tiempo de vencimiento. Cuando caduquen, AWS CLI solicitarán que volvamos a iniciar sesión en el Centro de Identidad de IAM.
Al utilizar credenciales válidas del Centro de Identidad de IAM, recupera de AWS CLI forma segura las AWS credenciales para la función de IAM especificada en nuestro perfil. Desde aquí, podemos usar el AWS CDK CLI con nuestras credenciales.
Paso 3: use la del CDK CLI
Con cualquier CDK CLI comando, utilizamos la --profile
opción para especificar el perfil con nombre para el que generamos las credenciales. Si nuestras credenciales son válidas, el CDK CLI ejecutará correctamente el comando. A continuación, se muestra un ejemplo:
$
cdk diff --profile
Stack CdkAppStack Hold on while we create a read-only change set to get a diff with accurate replacement information (use --no-change-set to use a less accurate but faster template-only diff) Resources [-] AWS::S3::Bucket amzn-s3-demo-bucket amzn-s3-demo-bucket5AF9C99B destroy Outputs [-] Output BucketRegion: {"Value":{"Ref":"AWS::Region"}} ✨ Number of stacks with differences: 1my-dev-profile
Cuando nuestras credenciales hayan vencido, aparecerá un mensaje de error como el siguiente:
$
cdk diff --profile
Stack CdkAppStack Unable to resolve AWS account to use. It must be either configured when you define your CDK Stack, or through the environmentmy-dev-profile
Para actualizar nuestras credenciales, utilizamos el AWS CLI aws sso login
comando:
$
aws sso login --profile
my-dev-profile