EC2 インスタンスから AWS を利用する場合、AccessKey などを直接 AMI 内に配置する必要はありません。起動時に IAM ロールを指定すれば EC2 はそのロールに付与された権限で AWS を利用できます。鍵を直接 AMI 内に配置しないためセキュリティ上も安心です。
s3_full_access
)AWS S3 サブコマンドが実行できる権限が付与されています。
$ aws s3 ls
2015-06-08 15:01:20 hogehoge1234
一般に EC2 インスタンスは自分のメタ情報を、リンクローカルアドレスに対して curl を実行することで確認できます。IAM ロールを付与して起動したため、特に今回は meta-data に iam が追加されています。
$ curl http://169.254.169.254/latest/meta-data/iam/security-credentials/
s3_full_access
鍵情報の存在が確認できます。
$ curl http://169.254.169.254/latest/meta-data/iam/security-credentials/s3_full_access
{
"Code" : "Success",
"LastUpdated" : "2015-06-08T14:47:01Z",
"Type" : "AWS-HMAC",
"AccessKeyId" : "XXXXXXXXXXXXXXXXXXX",
"SecretAccessKey" : "XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX",
"Token" : "XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX",
"Expiration" : "2015-06-08T21:16:06Z"
}