必须通过角色级访问控制(ACL)规则实现精细化权限隔离:一、创建专用角色并绑定模型切换能力;二、配置细粒度ACL规则限制可选模型范围;三、将用户加入角色并验证上下文隔离;四、在Claw沙箱环境中同步应用模型约束。
☞☞☞AI 智能聊天, 问答助手, AI 智能搜索, 多模态理解力帮你轻松跨越从0到1的创作门槛☜☜☜

如果您在WorkBuddy企业部署中需为特定成员(如算法研究员、合规审计员、部门主管)赋予独立切换本地大模型的能力,而其他成员仅能使用默认模型,则必须通过角色级访问控制(ACL)规则实现精细化权限隔离。以下是设置该权限的具体操作路径:
一、创建专用角色并绑定模型切换能力
WorkBuddy的模型切换权限不直接授予用户,而是通过角色(Role)定义能力集合,并将角色与用户关联。系统预置角色不包含模型切换权,需新建自定义角色并显式启用该能力标识。
1、以管理员身份登录WorkBuddy管理控制台,进入【权限中心】→【角色管理】→【新建角色】。
2、在角色基础信息中填写名称,例如“高级建模员”,描述字段注明“允许手动切换本地LLM与沙箱推理引擎”。
3、在权限策略配置区,展开【AI服务】节点,勾选“模型选择器控制权”和“Claw沙箱执行模式切换”两项能力。
4、点击【保存角色】,系统生成唯一role_id,如wb-role-ml-switcher-7a2f。
二、配置细粒度ACL规则限制可选模型范围
仅授予切换权不足以保障安全,还需限定该角色成员仅能切换至经审批的模型列表,防止误选高风险或未备案模型。ACL规则在此阶段生效,作用于模型注册中心(Model Registry)的读取接口。
1、进入【权限中心】→【访问控制策略】→【新增ACL规则】。
2、设置规则匹配条件:在【主体】栏选择上一步创建的角色wb-role-ml-switcher-7a2f;在【资源】栏选择类型为“model:registry”;在【操作】栏勾选“GET”与“SELECT”。
3、在【条件表达式】输入框中,粘贴如下JSON策略片段:
{ "allowed_models": ["qwen2.5-7b-int4", "phi-3.5-mini-4k-instruct", "claw-sandbox-v3"] }
4、启用该规则并设置生效优先级为最高(Level 1),确保覆盖默认模型白名单策略。
三、将用户加入角色并验证上下文隔离
ACL规则生效依赖于用户运行时携带正确的角色上下文。WorkBuddy通过JWT Token中的role_ids声明传递角色信息,因此必须确保用户登录后Token内包含新角色ID,且服务端启用上下文注入校验。
1、进入【用户管理】,搜索目标成员姓名,点击编辑其资料页。
2、在【所属角色】区域,取消勾选默认的“普通员工”,勾选“高级建模员”,保存变更。
3、通知该成员退出当前WorkBuddy客户端并重新登录,触发Token刷新。
4、登录后,进入【设置】→【AI模型选择】页面,确认下拉列表中仅显示ACL规则指定的三个模型,且无“Qwen-VL”、“DeepSeek-R1”等未授权模型项。
四、在Claw沙箱环境中同步应用模型约束
当用户通过Claw协议调用本地沙箱执行代码或文档解析任务时,若未同步ACL模型约束,可能绕过UI层限制直接加载禁用模型。因此需在沙箱启动阶段强制注入模型白名单环境变量。
1、编辑Claw沙箱配置文件claw-sandbox-config.yml,定位到env节点。
2、添加键值对:WORKBUDDY_ALLOWED_MODELS: "qwen2.5-7b-int4,phi-3.5-mini-4k-instruct,claw-sandbox-v3"。
3、重启Claw沙箱服务进程,执行命令:systemctl restart claw-sandbox@default。
4、在Claw界面发起一次PDF文本提取任务,检查日志输出中加载的模型名是否严格匹配上述白名单字符串。











