Dans ce cas d’utilisation, vous vous connecterez à l’AWS CLI avec Okta via AWS IAM Identity Center.
AWS CLI v2 prend en charge l’intégration directe avec AWS IAM Identity Center. Vous pouvez désormais créer des profils CLI liés aux comptes et rôles SSO. L’interface de ligne de commande récupère automatiquement les informations d’identification AWS à partir de l’authentification unique et les actualise en votre nom. De nouvelles commandes aident à gérer les profils CLI SSO. Vous n’avez plus besoin de copier et coller les informations d’identification AWS temporaires à partir de la console AWS IAM Identity Center.
Ouvrez le tableau de bord du AWS IAM Identity Center et cliquez sur Command line or programmatic access. Plusieurs options d’accès à la ligne de commande s’offrent alors à vous.
Exécutez dans un terminal aws configure sso et suivez les instructions.
$ aws configure sso
Le résultat sera
$ aws configure sso
SSO start URL [None]: https://d-99xxxxxx75.awsapps.com/start
SSO Region [None]: eu-central-1
Attempting to automatically open the SSO authorization page in your default browser.
If the browser does not open or you wish to use a different device to authorize this request, open the following URL:
https://device.sso.eu-central-1.amazonaws.com/
Then enter the code:
RXPC-JNHZ
The only AWS account available to you is: 00xxxxxxxx56
Using the account ID 00xxxxxxxx56
Vous serez invité à vous connecter à votre AWS IAM Identity Center via Okta. Si vous avez activé MFA, vous devez également fournir un 2e facteur. De plus, vous serez également invité par AWS IAM Identity Center à autoriser l’accès.
Après une authentification réussie, vous serez invité à sélectionner l’un des rôles que nous configurons dans le cadre de l’atelier. Sélectionnez l’un d’eux pour créer un profil local.
There are 2 roles available to you.
> PowerUserAccess
ViewOnlyAccess
Using the role name "PowerUserAccess"
CLI default client Region [eu-central-1]:
CLI default output format [None]: json
CLI profile name [PowerUserAccess-00xxxxxxxx56]:
Par exemple, dans notre cas, nous avons utilisé la commande :
$ aws sts get-caller-identity --profile PowerUserAccess-00xxxxxxxx56
$ aws sts get-caller-identity --profile PowerUserAccess-00xxxxxxxx56
{
"UserId": "AROAXXXXXXXXXXXXXUN6N:name@domain.com",
"Account": "00xxxxxxxx56",
"Arn": "arn:aws:sts::00xxxxxxxx56:assumed-role/AWSReservedSSO_PowerUserAccess_7aXXXXXXXXXXXX17/name@domain.com"
}
Ce cas d’utilisation est basé sur cet article et cet article de blog. Bravo à ces auteurs !