如何灵活地调整Amazon EC2的IAM角色?
作者: CBISMB
责任编辑: 贾西贝
来源: AWS
时间: 2017-03-08 08:00
关键字: AWS,Amazon EC2,AWSFA
浏览: 0
点赞: 0
收藏: 0
例如,应用程序必须通过AWS证书签署API请求。因此,如果您是应用程序开发人员,您需要一个策略来为EC2实例上运行的应用程序管理证书。您可以安全地将您的AWS证书分配至实例,从而允许这些实例上运行的应用程序使用您的证书签署请求,并保护其免受其他用户的影响。但是,要将凭证安全地分配至每项实例是有一定难度的,尤其是AWS以您的名义创建的实例,例如竞价型实例或Auto Scaling组中的实例。当您更换AWS证书时,您还必须能够更新每项实例上的证书。IAM角色能够委托授权以发出API请求,而不用创建并分配您的AWS证书。详细解决方案,请查阅文档适用于Amazon EC2的IAM角色:
http://docs.aws.amazon.com/zh_cn/AWSEC2/latest/UserGuide/iam-roles-for-amazon-ec2.html#instance-metadata-security-credentials
之前,IAM角色只能在实例创建设置时添加,这导致了过去创建的实例和忘记添加IAM角色的实例无法使用IAM角色操作实例,从而被迫重新部署实例及应用程序。从现在开始,您可以通过将IAM角色附加到现有的尚未被角色附加的EC2实例,来使用AWS提供的临时安全证书操作EC2实例。您还可以随时替换附加到现有EC2实例的IAM角色。
适用范围
文中的操作步骤已于2017年2月23日验证通过,其中AWS CLI版本为1.11.48,在AWS全球和AWS中国区均能正常使用。
解决方案
1. 创建IAM角色
2. 将IAM角色附加给现有EC2实例(为最初没有IAM角色的实例附加)
3. 更换附加到Amazon EC2的IAM角色
4. 移除附加到Amazon EC2的IAM角色
本文假设您具有创建IAM角色的权限,并具有调用EC2 API的权限。
AWS命令行操作步骤中所有出现的占位符{Some Words},都应该替换为实际资源名称。
AWS控制台操作步骤
1. 打开EC2控制面板,并选择左侧边栏的“实例”。
图一
2. 选择您的实例,依次点击上方的操作->实例设置->Attach/Replace IAM role
图二
3. 打开IAM role下拉菜单,选择您想要附加给当前EC2的IAM角色,No Role代表不附加角色,选好后点击右侧的Apply按钮。选择并应用的过程实际上包含了:将IAM角色附加给现有EC2实例(最初没有IAM角色附加);更换附加到Amazon EC2的IAM角色;移除附加到Amazon EC2的IAM角色。
图三
4. 如果您选择了No Rule(即移除EC2上的IAM角色),会显示如下页面:
图四
5. 如果您未作出有效的修改,会显示如下页面:
图五
6. 如果您的修改有效,会显示如下页面:
图六
