Amazon Verified Permissions

Verified Permissions 是 AWS 的细粒度授权服务,让应用程序可以外置权限管理逻辑,使用 Cedar 策略语言定义"谁可以对什么资源做什么操作”。

Verified Permissions解决的问题:

image-20260315231354012

核心组件

组件 说明
Policy Store 存储策略和 Schema 的容器
Schema 定义实体类型 (User, Role, Resource) 和关系
Policy Cedar 语言编写的授权规则
Policy Template 可复用的策略模板

image-20260315230945342

Cedar 策略语言示例

// 允许文档所有者执行任何操作
permit (
    principal,
    action,
    resource
)
when {
    resource.owner == principal
};

// 允许 Admin 角色删除任何文档
permit (
    principal in Role::"Admin",
    action == Action::"DeleteDocument",
    resource in ResourceType::"Document"
);

// 禁止在非工作时间访问敏感数据
forbid (
    principal,
    action,
    resource in ResourceType::"SensitiveData"
)
when {
    context.time.hour < 9 || context.time.hour > 18
};

适用场景

场景 示例
多租户 SaaS 租户 A 只能访问自己的数据
文档协作 所有者/编辑者/查看者权限
医疗系统 医生只能看自己病人的病历
金融应用 基于角色+金额的审批流程

与 IAM 的区别

image-20260315231421611

定价

按 授权请求次数 计费,每百万次请求约 $1.50。