百积木文档
UseConcepts

权限与成员

管理成员角色,控制项目、模块、日志和发布权限。

工作区成员可以拥有不同角色。角色会影响成员能否创建项目、安装 Bundle、配置由 Bundle 物化的模块、查看日志、配置渠道和发布应用。

常见权限

  • 工作区访问权限:进入工作区并查看资产。
  • 项目管理权限:编辑应用、网站、后端服务和智能体。
  • Bundle 与模块配置权限:安装或升级 Bundle、修改其物化模块的属性和调用模块能力。
  • 发布权限:发布正式版本并变更线上入口。
  • 日志权限:查看运行时日志和任务执行记录。

Bundle 内资源的作者权限由 Bundle Service 统一检查。资源编辑或创建版本不逐服务重复检查同一份作者权限;项目源码归属、资源定义合法性、不可变版本与 Runtime 执行权限仍按各自合同校验。

开发者权限决策表

机制身份与授权对象作用范围及授权时机撤销或变更语义
工作区与项目权限当前成员;项目、Bundle 安装与配置等管理动作工作区边界内,在执行管理操作时校验移除成员或管理权限后,后续操作按当前权限拒绝;不凭旧安装记录继续授权
PERMISSION 与 ROLE业务用户或主体;权限 Locator 对应的方法,角色组合权限权限、角色定义随 Bundle 交付;成员分配和直接授权属于目标工作区运行数据取消分配、移除 grant 或撤销直接授权后,后续调用重新检查;安装定义不等于分配角色
平台应用能力与用户授权应用身份及当前用户;明确的 Runtime 方法范围应用绑定或更新授权时确认精确版本和能力,调用时仍检查用户权限解绑、撤销会话或缩减能力范围后,旧声明不能继续扩大调用范围
ServiceReference调用来源资源;其 Interface 属性路径及目标方法配置模块属性时提交绑定意图;Runtime 校验来源、接口和有效绑定,调用时检查当前关系清空或修改属性使旧属性路径的目标关系失效;资源来源身份与具体绑定关系分别管理
用户委托当前同步请求中已验证的用户;下游业务调用Runtime 注入短期 Actor assertion;服务在当前请求内转发,由 Runtime 按跳验证和轮换请求结束后不得复用或持久化;没有用户的后台任务不得借用安装人或固定管理员
Bundle 管理器资源授权已认证的 Bundle 管理器和该安装的本包资源平台按当前来源关系、目标 Runtime、安装与资源归属校验读写和凭据操作每次操作校验当前关系与资源归属。移除资源或卸载后,对应安装资源凭据撤销
Hosted Service Consumer 授权调用方服务;指定 Environment 的 Endpoint 与 scope后端部署和服务接入时独立配置,不由 Bundle 安装隐式创建轮换或撤销对应凭据,后续后端请求按当前授权拒绝

跨 Bundle 调用先配置本包 Interface 属性,再使用 Runtime 交付的来源属性访问配置。服务来源认证不能 代替最终用户权限;需要用户的方法还要校验本次请求的用户委托。字段中携带 userId 或完整 Locator 都只表达数据或定位,不能自行授予权限。

新 Bundle 使用独立 PERMISSION、ROLE 资源;旧 PERMISSION_DEFINITION_SET、ROLE_TEMPLATE_SET 属于历史迁移边界, 顶层请求与提供权限字段不能用于新清单。权限与角色的定义、主体分配、服务凭据应分别维护。 详见ServiceReference、 用户委托和 平台应用授权。

Git 权限与 main 策略

项目 Git 写权限决定成员能否提交代码;main 写入策略决定有写权限的成员应当直推,还是必须先推个人分支再合并。两者不能互相替代:把成员加入工作区不会自动关闭分支保护,开启分支保护也不会给成员新增项目权限。

操作前应读取项目的实际策略。默认 DIRECT 允许有写权限的成员快进直推 main;项目显式切换为 PROTECTED 后,成员必须推个人分支并通过平台合并。完整规则见项目:Git main 写入策略。

本页内容