2015-03-10 4 views
8

Comment puis-je spécifier que je souhaite utiliser les informations d'identification du profil d'instance lors de l'utilisation de l'AWS CLI à partir de mon instance EC2? les docs disent:AWS CLI utilisant les informations d'identification du profil d'instance

Instance profile credentials – these credentials can be used on EC2 
instances with an assigned instance role, and are delivered through 
the Amazon EC2 metadata service. 

Est-ce automatique ou dois-je appeler le service de métadonnées et enregistrer les informations d'identification renvoyées au fichier ~/.aws/credentials ... puis faire l'appel?

Répondre

9

Vous parlez de IAM Roles. Ceux-ci sont attachés à l'instance EC2 et les clés sont roulées/pivotées toutes les quatre heures.

Vous n'avez pas pas besoin de tirer ceux de la métadonnée de l'instance et de le fournir à l'aws-cli ou un SDK, ils vont le tirer automatiquement.

Si vous exécutez aws-cli avec le drapeau --debug, vous devriez voir les informations d'identification sont ramassées:

$ aws --debug s3 ls 
... 
2015-03-10 18:15:04,459 - MainThread - botocore.credentials - DEBUG - Looking for credentials via: iam-role 
2015-03-10 18:15:04,465 - MainThread - botocore.vendored.requests.packages.urllib3.connectionpool - INFO - Starting new HTTP connection (1): 169.254.169.254 
2015-03-10 18:15:04,466 - MainThread - botocore.vendored.requests.packages.urllib3.connectionpool - DEBUG - "GET /latest/meta-data/iam/security-credentials/ HTTP/1.1" 200 37 
2015-03-10 18:15:04,468 - MainThread - botocore.vendored.requests.packages.urllib3.connectionpool - INFO - Starting new HTTP connection (1): 169.254.169.254 
2015-03-10 18:15:04,469 - MainThread - botocore.vendored.requests.packages.urllib3.connectionpool - DEBUG - "GET /latest/meta-data/iam/security-credentials/myrole-snipped HTTP/1.1" 200 898 
2015-03-10 18:15:04,469 - MainThread - botocore.credentials - INFO - Found credentials from IAM Role: myrole-snipped