IAM 权限策略是不是可以用于允许访问跨账户资源?

Posted

技术标签:

【中文标题】IAM 权限策略是不是可以用于允许访问跨账户资源?【英文标题】:Can IAM permission policy used to allow access to cross account resource?IAM 权限策略是否可以用于允许访问跨账户资源? 【发布时间】:2020-06-01 23:42:08 【问题描述】:

我的理解是,

服务控制策略基于资源的策略主要用于允许/拒绝跨账户访问资源。

从here 解释的策略评估过程中,我了解到 IAM 权限策略(托管或内联)用于授予/拒绝对 AWS 账户内的Principal 的权限



 "Version": "2012-10-17",
 "Statement": [

     
         "Action": "sts:AssumeRole",
         "Resource": "arn:aws:iam::*:role/Somerole",
         "Effect": "Allow"
     
 ]

但上面是 IAM 权限策略,用于授予源账户中的Principal 权限,以访问(sts::AssumeRole) 其他账户资源(Somerole)。


是否可以定义 IAM 权限策略以允许源 AWS 账户中的 Principal 获得权限 (sts:AssumeRole) 以访问其他账户 (*:role) 中存在的资源 (Somerole)?在我们的例子中,Principal 是源 AWS 账户中的 IAM 角色

【问题讨论】:

“我了解到 IAM 权限策略(托管或内联)用于在 AWS 账户中授予/拒绝对 Principal 的权限。” 我不确定您能否证明其合理性这个断言基于她的陈述。 【参考方案1】:

其他帐户需要已授予对该帐户的访问权限。另一个帐户中的角色需要与此类似的信任关系(通常还添加了条件):


  "Version": "2012-10-17",
  "Statement": [
    
      "Effect": "Allow",
      "Principal": 
        "AWS": "arn:aws:iam::<AccountId_A>:root"
      ,
      "Action": "sts:AssumeRole"
    
  ]

此示例假定您授予 IAM 权限的帐户。

【讨论】:

是的,目标账户中的角色与源账户中的角色有信任关系.. 是的。 但是,根据 IAM 权限策略的定义,允许跨账户访问资源的权限是否有意义?

以上是关于IAM 权限策略是不是可以用于允许访问跨账户资源?的主要内容,如果未能解决你的问题,请参考以下文章

编写 IAM 策略,其中任何具有 EC2 完全访问权限的用户都不能删除 AWS 账户中任何其他用户的实例

IAM Access Analyzer现支持在编写期间实时检验策略

AWS IAM Cloudformation YAML 模板错误:不允许使用“空”值

访问其他账户的 S3 IAM 策略

亚马逊云科技IAM Access Analyzer现支持在编写期间实时检验策略

仅允许用户为他创建/拥有的资源创建其他用户和策略