【发布时间】:2019-08-23 00:52:06
【问题描述】:
我有以下 IAM 角色:
- AmazonEC2FullAccess
- 自定义策略
在我的自定义政策中,我有:
{
"Version": "2012-10-17",
"Statement": [
{
"Sid": "VisualEditor1",
"Effect": "Allow",
"Action": "iam:ListRoles",
"Resource": "*",
"Condition": {
"IpAddress": {
"aws:SourceIp": "10.0.0.0/16"
}
}
}
]
}
然后我创建一个新的 EC2 实例并将这个角色附加到它。
在我尝试做的 EC2 实例内部:
aws iam list-roles
但我收到此错误:
调用 ListRoles 操作时发生错误 (AccessDenied): 用户:arn:aws:sts::XXXXXXX:assumed-role/My-Role/i-XXXXXX 不是 授权执行:iam:ListRoles 对资源: arn:aws:iam::XXXXXXX:role/
请问您知道为什么它不起作用吗?谢谢。
PS:EC2实例的IP是10.0.0.XX
【问题讨论】:
-
这不是 IAM 看到的 IP。您可以通过删除 IP 地址条件来确认它。并且也许改为使用您的 EC2 实例的公共 IP 来满足您的条件。
-
您想通过添加 IP 限制来控制什么?您是否担心该角色被其他地方或其他人使用?
-
谢谢你们,这很有意义,而且有效!
标签: amazon-web-services amazon-ec2 amazon-iam