Comment puis-je obtenir des informations d'identification temporaires pour un utilisateur AWS Single Sign-On à l'aide d'AWS CLI ?

Date de la dernière mise à jour : 06/08/2021

Je souhaite obtenir des informations d'identification temporaires pour un utilisateur AWS Single Sign-On (AWS SSO).

Brève description

La configuration d'un profil nommé pour utiliser AWS SSO crée un fichier JSON dans le répertoire $ cd ~/.aws/sso/cache. Le fichier JSON contient un Jeton Web JSON (JWT) utilisé pour obtenir les informations d'identification de sécurité temporaires avec l'appel d'API get-role-credentials. Le jeton d'accès est valide pendant 8 heures, comme indiqué dans l'horodatage expiresAt du fichier JSON. Les jetons expirés doivent être réauthentifiés à l'aide de l'appel d'API get-role-credentials.

Résolution

Vous pouvez utiliser l'AWS Command Line Interface (AWS CLI) pour obtenir les informations d'identification temporaires d'un utilisateur AWS SSO.

Remarque : si vous recevez des erreurs lors de l'exécution des commandes AWS CLI, assurez-vous d'utiliser la version la plus récente d'AWS CLI.

Ouvrez le fichier JSON et copiez le jeton d'accès :

$ cat 535a8450b05870c9045c8a7b95870.json

{"startUrl": "https://my-sso-portal.awsapps.com/start", "region": "us-east-1", "accessToken": "eyJlbmMiOiJBM….”, "expiresAt": "2020-06-17T10:02:08UTC"}

Exécutez la commande d'AWS CLI get-role-credentials pour obtenir les informations d'identification de l'authentification unique (SSO) similaires à ce qui suit :

$ aws sso get-role-credentials --account-id 123456789012 --role-name <permission-set-name> --access-token eyJlbmMiOiJBM…. --region <enter_the_same_sso_region_same_in_the_JSON_file>

Exemple de sortie :

{
    "roleCredentials": {
        "accessKeyId": "ASIA*************”,
        "secretAccessKey": “**********************************”,
        "sessionToken": “****************************************”,
        "expiration": 1592362463000
    }
}

Cet article vous a-t-il été utile ?


Besoin d'aide pour une question technique ou de facturation ?