Я предлагаю вам взглянуть на это: http://docs.aws.amazon.com/IAM/latest/UserGuide/role-usecase-ec2app.html
Представьте, что вы являетесь администратором, который управляет ресурсами AWS вашей организации.Разработчики в вашей организации имеют приложения, которые работают на экземплярах Amazon EC2.Этим приложениям требуется доступ к другим ресурсам AWS, например, для обновления корзин Amazon S3.
Приложения, работающие на экземпляре Amazon EC2, должны подписывать свои запросы API AWS с учетными данными AWS.Один из способов сделать так, чтобы разработчики передавали свои учетные данные AWS в экземпляр Amazon EC2, позволяя приложениям использовать эти учетные данные для подписи запросов.
Однако при вращении учетных данных AWS разработчики должны обновить каждый Amazon EC2.экземпляр, который использует свои учетные данные.
и чтобы узнать, как сделать это с python: https://groups.google.com/forum/?fromgroups=#!topic/boto-users/RPoFskVw1gc
Основная процедура выглядит следующим образом:
Во-первых, вы должны создать документ политики JSON, который представляет, к каким службам и ресурсам должна иметь доступ роль IAM.например, эта политика разрешает все действия S3 для группы «my_bucket».Вы можете использовать любую политику, подходящую для вашего приложения.BUCKET_POLICY = "" "{
" Выписка ": [{*
"Effect":"Allow",
"Action":["s3:*"],
"Resource":["arn:aws:s3:::my_bucket"]}]}"""
Далее необходимо создать профиль экземпляра в IAM.
import boto
c = boto.connect_iam ()
instance_profile = c.create_instance_profile ('myinstanceprofile')
Если у вас есть профиль экземпляра, вам нужно создать роль, добавить ее в профиль экземпляра и связать политику с ролью.
role = c.create_role ('myrole')
c.add_role_to_instance_profile ('myinstanceprofile', 'myrole')
c.put_role_policy ('myrole', 'mypolicy', BUCKET_POLICY)
Теперь вы можете использовать этот профиль экземпляра при запуске экземпляра:
ec2 = boto.connect_ec2 () ec2.run_instances ('ami-xxxxxxx ', ..., instance_profile_name =' myinstanceprofile ')
И новый экземпляр должен иметь соответствующую роль и учетные данныеассоциируется с ним после запуска.
Существуют те же учебные пособия для Java, Ruby, ... на сайте Amazon.Вы можете обратиться к первому URL, чтобы увидеть другие учебники.