0x00 前言
无论是创建IAM User的时候,还是在配置Policy的时候,都可以看到Policy中的Condition中是有一个aws:SourceIp属性的。
0x01 如何写这个Polciy
12345678910111213141516 |
{ "Version": "2012-10-17", "Statement": [ { "Sid": "VisualEditor0", "Effect": "Allow", "Action": "*", "Resource": "*", "Condition": { "IpAddress": { "aws:SourceIp": "54.222.xxx.xxx/32" } } } ]} |
aws:SourceIp键对应的值修改为办公网出口IP即可(保险起见要确定出口IP是固定不变的,而不是采用的动态IP)。
那你可能就要说了,如果我有多个IP段那该咋整呢?简单,可以跟着这个Policy改改就行了:
12345678910111213141516171819 |
{ "Version": "2012-10-17", "Statement": [ { "Sid": "VisualEditor0", "Effect": "Allow", "Action": "*", "Resource": "*", "Condition": { "ForAnyValue:IpAddress": { "aws:SourceIp": [ "54.222.xxx.xxx/32", "192.168.1.1" ] } } } ]} |
上述Policy可同时限制CLI和console。
0x02 Policy 参数解读
在上面的示例Policy中,有几个参数还是比较有价值的,一一解读一下ForAnyValue、IpAddress、aws:SourceIp:
- ForAnyValue,只要有一个值在符合要求,那就是符合要求
- IpAddress,IP地址,支持普通的地址格式、CIDR格式
- aws:SourceIp,请求的客户端IP
0x03 总结
额,这种直接测一下就行了,生产环境上头还是先测测,确认可行再上生产。
0x04 参考链接
[1] Creating a Condition with Multiple Keys or Values, https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_multi-value-conditions.html[2] Request, https://docs.aws.amazon.com/IAM/latest/UserGuide/intro-structure.html
- source:tonghuaroot.com
免责声明:文章中涉及的程序(方法)可能带有攻击性,仅供安全研究与教学之用,读者将其信息做其他用途,由读者承担全部法律及连带责任,本站不承担任何法律及连带责任;如有问题可邮件联系(建议使用企业邮箱或有效邮箱,避免邮件被拦截,联系方式见首页),望知悉。
- 左青龙
- 微信扫一扫
-
- 右白虎
- 微信扫一扫
-
评论