IAM策略评估逻辑

5 篇文章 0 订阅

目录

1. 策略决策图

2. IAM策略评估逻辑处理过程

2.1 策略逻辑

2.2 策略测试

2.2.1 隐式拒绝和评估附加策略

2.2.2 显示拒绝


1. 策略决策图

这个图是我引用自AWS官方文档。包括了几乎所有AWS策略相关,比如组织 SCP、基于资源的策略、IAM 权限边界、会话策略以及基于身份的策略。

2. IAM策略评估逻辑处理过程

2.1 策略逻辑

根据决策图的第1,2步来看,在AWS,所有的访问比如访问S3存储桶,或者是启动EC2实例等,默认情况下这些请求都会被拒绝。

  1. 默认的情况下,所有请求都被拒绝,这称为隐式拒绝
  2. 评估所有附加策略;
  3. 检查策略中是否有应用于请求的Deny语句,如果有会决定允许;
  4. 如有没有显示拒绝,检查是否有允许请求的操作,如果有会决定允许;
  5. 如果没有语句允许请求的操作,则请求被隐式拒绝。

2.2 策略测试

2.2.1 隐式拒绝和评估附加策略

1) 假设我们现在有两个aws用户,并且root用户bastriver有个bucket(bas-demo-bucket)。

 2) 登入bas-developer用户,这个用户是没有权限查看这个bucket的。

 3) 关于如何配置跨账户访问可以参考:配置跨账户S3存储桶的访问

2.2.2 显示拒绝

1) 这里创建一个新的bucket(bas-demo-bucket2),并且附加拒绝策略,也就是bas-developer账户不能访问这个bucket。

{
    "Version": "2012-10-17",
    "Statement": [
        {
            "Sid": "cross",
            "Effect": "Deny",
            "Principal": {
                "AWS": "arn:aws:iam::004398020230:root"
            },
            "Action": "s3:*",
            "Resource": [
                "arn:aws:s3:::bas-demo-bucket2",
                "arn:aws:s3:::bas-demo-bucket2/*"
            ]
        }
    ]
}

2) 测试(profile为dev对应的是账户bas-developer)。

 2.2.3 同时存在拒绝和允许策略。

1) 同时给bas-demo-bucket2附加上两个策略。 

2) 测试,可以看到在对同一个资源同时附加了允许和拒绝策略时,拒绝策略会生效

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值