基于最小权限原则,权限控制策略的结果默认为Deny, 显式的Deny始终优先于Allow。例如,IAM策略授权了用户对对象的访问权限,但是桶策略拒绝了该用户访问对象的权限,且没有ACL时,该用户不能访问对象。
没有策略授权Allow权限时,默认情况即为拒绝访问权限。当有策略授权Allow权限,且没有其他策略Deny该权限时,Allow的权限才能允许访问。例如,某个桶已经存在多条Allow权限的桶策略,再新增Allow权限的桶策略,会在原权限的基础上进行叠加,增大用户的权限;如果新增Deny权限的桶策略,则会根据Deny优先原则调整用户的权限,即使Deny策略中定义的动作在其他桶策略中Allow。
桶策略、IAM策略和ACL的Allow和Deny作用结果如下图所示。