限制每个地区角色的假设

时间:2019-01-23 22:15:20

标签: amazon-web-services amazon-iam aws-iam

我正在阅读AWS博客上的文章,该文章涉及按区域限制权限-https://aws.amazon.com/blogs/security/easier-way-to-control-access-to-aws-regions-using-iam-policies/

我具有以下设置-帐户A和帐户B。

帐户A在多个区域中具有DynamoDB全局表的集合。 帐户B基本上在帐户A中扮演角色,以获得对这些DynamoDB表的访问。

为了具有基于区域的分隔,我在crossAcountTrustedRole-格式的accountA中具有IAM角色。流程如下:accountB在us-east-1中运行时,它将承担名为crossAccountTrustedRole-us-east-1的角色,并访问数据。

现在,在承担角色策略文档中,我将受信任实体设为整个帐户本身。我不想专门将其范围缩小为一个角色。我需要安全性,以使地区us-west-2中的accountB不能在accountA中承担名称crossAccountTrustedRole-us-east-1的角色。阅读该文章使我认为现在从技术上讲可以做到这一点。我当时在想我可以编写一个IAM策略,以限制authenticRole API调用,使请求的区域与传入请求的区域相同。

{
        "Effect": "Allow",
        "Action": [
            "sts:AssumeRole"
        ],
        "Resource": "*",
  "Condition": {"StringEquals": {"aws:RequestedRegion": "eu-central-1"}
}

这可能吗?还是以前有人给过这个镜头?

1 个答案:

答案 0 :(得分:0)

  

我当时想我可以写一份IAM政策来限制   假设API调用使请求的区域为同一区域   作为传入请求。

否,您不能基于区域将IAM策略应用于用户/组-IAM用户没有区域。您可以将基于区域的IAM策略应用于资源。 Lambda,S3,EC2等资源。

区域条件的目的是防止或控制在何处创建/管理资源。您可以阻止用户在美国创建资源,阻止用户在欧洲删除资源,等等。