最小权限,贯穿始终
每个路由在执行前都会校验一个已声明的权限,取自 32 种范围。API 密钥只持有其中一部分以及可选的过期时间——绝不是整个工作区的钥匙。
32 种权限范围、只持有其中一部分的 API 密钥、加密的密钥保管库,以及由你自己设定的速率限制。
具体能力
- 范围化 API 密钥 — 可以创建一个能触发工作流、却读不到密钥也邀请不了成员的密钥。每个密钥都带有自己明确的权限清单和可选过期时间,第三方集成永远拿不到超出所需的权限。
- 基于角色的团队访问 — 按角色把成员邀请进工作区,每个接口在执行前都会校验它所声明的权限。部署、查看密钥明文、批准暂停中的运行、解锁重试,都是可以分别授予的独立权限。
- 加密的密钥保管库 — 按工作区保存签名密钥和凭证,并在工作流中按名称引用。列出密钥与查看明文是两个不同的权限——可以确认凭证存在,却始终读不到它的值。
- 由你掌控的速率限制 — 按工作区和按出站域名配置吞吐上限,避免某个吵闹的集成耗尽生产工作流所依赖的容量,也避免异常的合作方 API 把整个账号一起拖垮。
平台能力
- 32: 权限范围
- 默认拒绝: 未声明权限的路由的行为
- 2: 列出密钥与读取其值是两项独立权限
可以创建只能做一件事的 API 密钥吗?
可以。密钥在创建时会带上一份从 32 种可用范围中选出的明确权限清单,以及可选的过期时间。只被限定为触发执行的密钥,无法读取密钥、变更成员或部署工作流。
如果某个接口上线时没有声明权限会怎样?
它会拒绝所有范围化凭证。访问是靠声明获得而非靠排除,因此从未声明过权限的路由不会给任何 API 密钥或角色授权——漏写的注解会以“拒绝”方式失败,而不是悄悄暴露接口。
工作流用到了某个密钥,就意味着有人能读到它的值吗?
不会。列出密钥与查看明文是两项独立权限。工作流在运行时解析密钥,同事可以确认它存在且被正确引用,而无需任何人拥有显示其值的权限。