本文介绍 TOS 收到请求后,鉴权的过程及说明,方便您快速理解及选择授权方式。
TOS 收到请求后,将按照以下顺序判断是否允许该请求。
TOS 将收集以下请求信息以判断策略内容:
TOS 将根据收集的请求信息查找相关的所有策略并判断,TOS 支持的策略类型如下:
注意
任意策略中的显式 Deny
将覆盖显式 Allow
,即如果策略中有显式 Deny
,请求将直接被拒绝。
策略类型 | 说明 | |
---|---|---|
基于身份的策略 | IAM 策略 | 访问控制 IAM 是火山引擎为您提供的一套权限管理系统,用于控制不同身份对云资源的访问权限。如果该请求仅有基于身份的策略,则策略内容中至少需要有一个 |
基于资源的策略 注意 如果该请求有基于身份和资源的策略,则策略内容中至少需要有一个 | 桶策略 | 存储桶策略是针对单独存储桶及桶内资源设置的策略,您可以通过桶策略授予用户或角色相应资源的权限。 |
桶 ACL | 桶 ACL 仅支持公共读、公共读写和私有。 | |
对象 ACL | 对象 ACL 仅支持继承桶、公共读、公共读写和私有。如果您在上传对象时没有指定 ACL,也没有设置对象 ACL 默认策略,则对象 ACL 默认为私有。 | |
其他策略 注意 其他策略中,无显式 | Session Policy(inline Policy) | 会话策略,通过 AssumeRole 接口通过角色扮演获取临时安全令牌,可在临时 Session 中通过 |
VPC Policy | 通过设置 VPC 终端节点策略和桶策略,实现存储桶内资源 VPC 粒度的权限控制。即您可以在私有网络限制 VPC 访问特定的 TOS 存储桶资源,同时在对象存储限制存储桶内资源被特定的 VPC 访问。 |
发送请求后,TOS 将按照以下流程判断请求结果:
说明
Deny
语句,则请求会导致显式拒绝。如果策略包含一个 Allow
语句和一个 Deny
语句,Deny
语句优先于 Allow
语句,请求会被拒绝。Deny
语句但也没有适用的 Allow
语句时,会发生隐式拒绝。因此授权策略必须包含 Allow
语句,才会授权成功。Allow
,则该请求会被隐式 Deny
,请求被拒绝;如果有 Allow
,则判断下一步。Deny
,则请求被拒绝;如果没有,则判断下一步Allow
,则请求被允许,判断结束。Deny
和 Allow
均不存在,则表示隐式拒绝,判断下一步。Allow
,则允许访问。Allow
,则拒绝访问。