AWS的权限判断循环以下原则:
deny
语句,则该部分优先级最高。整个流程如下:
所以,有两种拒绝方式,一种是显式拒绝(Explict Deny
),另一种是隐式拒绝(Deny by Default
)。
如果不给用户分配某项服务权限,那么用户就不能使用这个服务。这是隐式拒绝
。
如果明确声明禁止用户使用某项服务。则用户也不能使用这个服务,这是显式拒绝
。
跨帐号场景跟单帐号不一样。
例如,单帐号场景中,用户A想要访问某个S3, 则有两种方式:
identity based
,在IAM里为他加一条policy可以访问S3;Resource-based
,在S3的bucket policy
中添加一条权限,允许用户A访问。上面满足任意一条即可。
但在跨帐号场景中,上面两个条件都要满足: