Le jeton de sécurité inclus dans la demande est expiré

J'ai un script qui tire beaucoup de paramètres à partir de Cloudwatch pour nos propres rapports internes.

Le script parcourt toutes les instances EC2 dans une région spécifique et demander 5 cloudwatch métriques (toutes les statistiques disponibles) pour les 2 dernières semaines (à chaque fois 5 jours de retour dans 5 minutes d'intervalle ce qui est exactement le 1440 quota). Je suis en utilisant une hypothèse de session:

session = Session(aws_access_key_id=AWS_ACCESS_KEY_ID, aws_secret_access_key=AWS_SECRET_ACCESS_KEY, region_name=regionName)
sts = session.client('sts')
response = sts.assume_role(
    RoleArn=arn, # External role arn
    RoleSessionName='role-name',
    ExternalId='<some-id-here>',
)
tempAccessKeyId = response['Credentials']['AccessKeyId']
tempSecretAccessKey = response['Credentials']['SecretAccessKey']
tempSessionToken = response['Credentials']['SessionToken']
assumedSession = Session(
    aws_access_key_id=tempAccessKeyId,
    aws_secret_access_key=tempSecretAccessKey,
    aws_session_token=tempSessionToken,
    region_name=regionName)

Lors de l'exécution du script que j'ai eu cette exception:

botocore.exceptions.ClientError: An error occurred (ExpiredToken) when calling the GetMetricStatistics operation: The security token included in the request is expired

Est-il un moyen de vérifier que le jeton n'est pas à expiration lors de l'exécution du script? Je suis en utilisant boto3.

InformationsquelleAutor Avi | 2016-02-28