策略鉴权逻辑

本文介绍了在SAM中使用不同身份访问资源时的鉴权逻辑及规则,帮助您理解授权策略。

概述

在SAM中访问资源分为以主账号身份、以子账号身份和扮演角色身份三种情形;针对每种情形,系统的授权判断条件如下表所示。

访问身份允许访问条件(同时满足)
主账号主账号是资源所有者
子账号子账号所属的主账号对资源有访问权限;
主账号对子账号有显式的allow授权策略
角色角色所属的主账号对资源有访问权限;
主账号对角色有显式的allow授权策略;
主账号对角色有安全访问令牌(STS-Token)显式的授权

子账号鉴权逻辑

子账号访问资源时,默认没有任何权限,除非有进行显式的授权(给子账号绑定授权策略,或者让子账号加入已绑定策略的群组)。授权策略语句支持 allow(允许)和 deny(禁止)两种授权类型,当多个授权语句对一个资源操作分别出现 allow 和 deny 授权时,遵循 deny 优先 原则。

当创建请求时,云基础服务决定是否应允许或拒绝该请求的鉴权逻辑遵循以下规则:

  • 默认情况下,所有请求都将被拒绝;
  • 显式允许将取代此默认设置;
  • 显式拒绝将覆盖任何允许;
  • 评估策略的顺序对于评估结果没有影响,将评估所有策略,而且结果始终是允许或拒绝请求。

以下流程图提供了详细的逻辑:

角色鉴权逻辑

子账号通过扮演角色(使用角色访问令牌)访问资源时,角色绑定的策略将会完全覆盖子账号绑定的策略(以及子账号加入的群组绑定的策略),之后的角色鉴权逻辑与子账号鉴权逻辑完全相同。