Boto3 assumer le rôle avec IAM identification de l'utilisateur

0

La question

Comment peut-on assumer un rôle IAM à l'aide de IAM informations d'identification des utilisateurs?

import boto3

sts_client = boto3.client(
      'sts',
      aws_access_key_id=ACCESS_KEY,
      aws_secret_access_key=SECRET_KEY,
    )
)

sts_client.assume_role(RoleArn=some-role, RoleSessionName='boto3_client')

Le code ci-dessus pour une raison quelconque produit:

An error occurred (InvalidClientTokenId) when calling the AssumeRole operation: The security token included in the request is invalid.

J'ai testé le aws_access_key_id et aws_secret_access_key à l'aide de aws sts assume-role et je ne peux en effet jouer ce rôle à l'aide de la CLI. Ce que je fais mal?

Si cela fait une différence, l'utilisateur IAM est en chine, dans la partition de AWS.

amazon-web-services aws-sdk boto3
2021-11-12 14:28:24
1

La meilleure réponse

1

Réglage AWS_DEFAULT_REGION (même pas AWS_REGION) la variable d'environnement fixe.

AWS_DEFAULT_REGION n'est mentionné nulle part dans boto3 de la documentation. Et il s'avère qu'on peut passer à la région de boto3.client() avec region_name argument. Drôle de nom (aws_region il serait plus cohérent de choix), et ce n'est pas mentionné dans la documention soit. J'espère que cela aide quelqu'un un jour.

2021-11-13 10:27:27

Dans d'autres langues

Cette page est dans d'autres langues

Русский
..................................................................................................................
Italiano
..................................................................................................................
Polski
..................................................................................................................
Română
..................................................................................................................
한국어
..................................................................................................................
हिन्दी
..................................................................................................................
Türk
..................................................................................................................
Česk
..................................................................................................................
Português
..................................................................................................................
ไทย
..................................................................................................................
中文
..................................................................................................................
Español
..................................................................................................................
Slovenský
..................................................................................................................