+86 135 410 16684Mon. - Fri. 10:00-22:00

Amazon EC2分配IAM角色

Amazon EC2分配IAM角色

Amazon EC2分配IAM角色

IAM角色

IAM角色(IAM Role)是通常是关联到用户及组,但是也可以关联到Amazon EC2,Amazon EC2实例可以使用IAM角色访问各种AWS资源。

在这里创建[CloudWatchLogsFullAccess]权限的角色后分配给Amazon EC2,这样就可以简单的使用CloudWatch Logs监控。

创建IAM角色

登录AWS管理界面后点击[IAM] -> [角色] -> [创建新角色]。

Create-New-User在这里角色名称填写CloudWatch-User后,点击[下一步]。

User-Name选择[Amazon EC2]。

IAM-Amazon-EC2勾选[CloudWatchLogsFullAccess]后,点击[下一步]。

Add-Role确认内容点击[创建角色]。

IAM-Review成功创建了CloudWatch-User角色。

Check-IAM-User

创建Amazon EC2时配置IAM角色

在创建Amazon EC2实例过程的[配置实例]的IAM角色里选择[CloudWatch-User]就可以,其他步骤和参照 >> 5分钟创建AWS EC2

IAM_Role_for_EC2

获取元数据(MetaData)

在启动的Amazon EC2实例内部通过HTTP获取EC2自身的各种元数据(MetaData).,这是调用Amazon EC2独有的REST API,向”169.254.169.254″请求GET方式获取元数据。

可获取的有3种类型[dynamic],[meta-data],[user-data]。

# curl http://169.254.169.254/latest/
dynamic
meta-data
user-data

可确认元数据(MetaData)里有iam。

# curl http://169.254.169.254/latest/meta-data/
ami-id
ami-launch-index
ami-manifest-path
block-device-mapping/
hostname
iam/
instance-action
instance-id
instance-type
local-hostname
local-ipv4
mac
metrics/
network/
placement/
product-codes
profile
public-hostname
public-ipv4
public-keys/
reservation-id
security-groups
services/

获取security-credentials下面的IAM角色的元数据。

# curl http://169.254.169.254/latest/meta-data/iam/security-credentials/CloudWatch-User
{
  "Code" : "Success",
  "LastUpdated" : "2015-05-04T07:07:06Z",
  "Type" : "AWS-HMAC",
  "AccessKeyId" : "XXXXXXXXXXXXXXXXXXXX",
  "SecretAccessKey" : "XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX",
  "Token" : "XXXXXXXXXXXXXXXXXX",
  "Expiration" : "2015-05-04T13:09:38Z"
}

也可以获取Amazon EC2的AMI ID等等信息。

# curl http://169.254.169.254/latest/meta-data/ami-id
ami-89634988

结语

给Amazon EC2分配IAM角色以后,在Amazon EC2访问AWS资源时不必在配置AccessID和SecretKey了。