外观
API 认证
GraphQL PAT
HTTPS POST /v1/graphql,Content-Type 为 application/json,Authorization 为 Bearer PAT。 请求体为 query、variables 和可选 operationName;有效 token 不能写入 URL 或日志。 公开目录和下载使用 S3/CDN binding,不发送 token、cookie 或管理 header。
当前权限
| 能力 | 范围与当前角色 |
|---|---|
| 私有读取 / tokens / receipts | plugins:read,并检查资源或回执权限 |
| 创建 / metadata / listing / ownership / lifecycle | plugins:write,并检查 ownership;特殊流程由契约控制 |
| upload / submit_release | releases:write,并检查 ownership |
| review_change | reviews:write,管理员 |
| set_visibility | plugins:write,管理员 |
| 用户角色 / suspend / policy | admin:write,管理员 |
| publication_status | plugins:read,当前owner/admin;跨actor仅管理员 |
| recover_publication | admin:write,当前管理员;原publication、CAS与幂等 |
scope 不扩权;转让、撤销、到期、suspend 都在提交和重放处重新检查。 不允许移除最后一个活动管理员;账号删除不重新开放首次管理员 bootstrap。
服务内部边界
BFF service key 不代表用户权限;worker lease/fence 只负责被领取工作。 不要将内部服务凭据提供给浏览器、插件或 Agent。