安全管理
先决条件
- 功能菜单:需具备 AI 工作台 / 安全运营 / 安全管理 功能菜单权限。
- 操作权限:维护内容安全关键词、维护命令安全名单需 AI 工作台读写权限;只读权限仅支持查看。
- 数据权限:与安全管理整体一致,按账号 / 环境 / 资源域隔离(以平台权限表为准)。
概述
安全管理是 AI 工作台的统一安全策略入口,下设两个同级子模块,分别负责不同风险面:
| 子模块 | 英文名 | 管什么 | 主要作用时机 |
|---|---|---|---|
| 内容安全 | Content Security | Skill / 智能体等文本内容是否合规(提示词、摘要、描述等) | 创作空间保存 / 发布时检测并拦截 |
| 命令安全 | Command Security | Sage AI、IM 渠道等场景中命令实际执行的放行 / 询问 / 拦截 | 对话触发命令执行前判定 |
进入 安全运营 > 安全管理 后,可在页面内切换 内容安全 / 命令安全(同一菜单路由,子模块并列)。两者互不替代:内容合规解决「写进资源的文字」,命令安全解决「真正跑起来的命令」。
平台提示语(内容安全):系统对 Skill 和智能体文本进行关键词检测,命中将在保存时自动拦截(具体提示以界面为准)。
平台提示语(命令安全):用于管控关键命令的执行权限,为命令前缀配置匹配名单。优先级顺序:拦截名单 > 询问名单 > 放行名单 > 审批模式。未命中任何名单时,按当前审批模式处理。

价值
- 双轨治理:文本合规与命令执行分册管理,职责清晰。
- 发布前拦截(内容安全):问题描述进不了生产资源与公共市场。
- 执行前管控(命令安全):高危命令可强制拦截或人工确认,并与对话审批模式协同。
- 可审计:策略变更与命令终态可在 审计日志 追溯。
使用场景
内容安全:维护禁用词
禁止提示词中出现破坏性指令、未授权导出等描述。在 内容安全 中添加关键词并选择匹配模式;创作者保存/发布命中时被拦截。
命令安全:管控危险命令前缀
将 rm、kubectl delete 等写入拦截名单;将 python、shell 等保留在询问名单(默认内置,可删)。运维在 Sage AI 中执行相关命令时按名单与审批模式处理。
与上架审核配合
内容安全在保存/发布环节拦截;已进入审核流的资源仍由 审核列表 人工处理。命令安全不替代上架审核。
内容安全
做什么
维护关键词库。系统检测 Skill、智能体的提示词、摘要、描述等文本;命中策略时在保存或发布环节拦截并提示原因,创作者需修改后重新提交。
操作步骤
- 进入 AI 工作台 > 安全运营 > 安全管理,切换到 内容安全。
- 点击 添加:
- 关键词(必填,长度以界面为准,如不超过 20 字符);
- 匹配模式:
- 精准匹配:文本与关键词一致才命中(如关键词「知识库」,「我创建知识库」命中,「我创建知识」不命中);
- 模糊匹配:在精准基础上扩展简繁体、拼音、大小写、全半角等变体。
- 使用搜索框「可根据关键词、匹配模式进行过滤」。
- 勾选记录后 删除 并确认。

注意事项(内容安全)
- 策略主要影响后续保存与发布;已上架资源的合规问题可结合下架审核处理。
- 不能替代公共市场上架的人工审核。
- 误拦时可改为精准匹配或调整词条粒度。
命令安全
做什么
为命令前缀配置三类匹配名单,在 Sage AI、IM 渠道等实际执行命令前决定:直接拦截、必须询问(审批)、直接放行,或回落到对话里的审批模式。
与内容安全的区别:
| 对比 | 内容安全 | 命令安全 |
|---|---|---|
| 对象 | 资源文本(提示词等) | 待执行的命令字符串 |
| 时机 | 保存 / 发布 | 执行前 |
| 结果 | 禁止写入资源 | 拦截 / 询问 / 放行 / 跟审批模式 |
页面结构
命令安全
├── 说明区(优先级与未命中说明)
├── 拦截名单 [重置默认]
├── 询问名单 [重置默认]
└── 放行名单 [重置默认]
每个名单右上角有独立的 「重置默认」:仅重置该类名单的自定义规则为系统默认,三类互不影响;点击后二次确认,文案分别为:
- 拦截名单:将清空拦截名单的自定义规则,恢复为系统默认状态,是否继续?
- 询问名单:将清空询问名单的自定义规则,恢复为系统默认状态,是否继续?
- 放行名单:将清空放行名单的自定义规则,恢复为系统默认状态,是否继续?
删除单条命令时统一二次确认:删除后该命令不再生效,是否确认删除?
三类名单效果
| 名单 | 命中后效果 |
|---|---|
| 拦截名单 | 直接拦截,不执行;任意审批模式下均拦截 |
| 询问名单 | 必须审批,通过后才执行;任意审批模式下均须审批 |
| 放行名单 | 直接执行,不审批;任意审批模式下均放行 |
说明文案:用于管控关键命令的执行权限,为命令前缀配置匹配名单。优先级顺序:拦截名单 > 询问名单 > 放行名单 > 审批模式。未命中任何名单时,按当前审批模式处理。

与审批模式的关系
审批模式由用户在 Sage AI 对话中选择,仅当命令未命中任何名单时生效:
| 审批模式 | 行为 |
|---|---|
| 始终审批 | 全部须审批(含澄清意图确认) |
| 风险审批 | 有风险的命令须审批;澄清意图确认(仅确认意图、无实际操作,如「是否重启 prod 的 nginx?」)不审批 |
| 完全访问 | 直接执行 |
决策顺序可理解为:
待执行命令
→ 命中拦截? → 拦截,结束
→ 命中询问? → 弹窗/对话确认,通过后执行
→ 命中放行? → 直接执行
→ 都未命中 → 按当前「审批模式」处理
命令匹配规则
预处理(规则保存与实际匹配时相同):
| 规则 | 示例 |
|---|---|
| 去首尾空格 | kubectl get → kubectl get |
| 转小写 | Kubectl GET → kubectl get |
| 按空格拆成词元 | kubectl get pods → kubectl · get · pods |
单条匹配(前缀整词):
| 规则 | 示例 |
|---|---|
| 规则前 N 个词元须与命令前 N 个词元完全一致 | 规则 cat csd 匹配 cat csd file,不匹配 cat n csd |
| 命令词数须 ≥ 规则词数 | 规则 kubectl delete 不匹配 kubectl |
| 须前缀整词相等 | 规则 cat 匹配 cat file,不匹配 category |
复合命令:按 &&、||、;、| 拆段,每段独立匹配;多段取最严结果(一段放行、一段拦截 → 整体拦截)。
名单优先级:
| 规则 | 示例 |
|---|---|
| 判定顺序:拦截 → 询问 → 放行 → 审批模式;命中前一类即停止 | 拦截含 cat、询问含 cat n csd,命令 cat n csd → 直接拦截 |
| 同一名单内任一规则命中即算命中 | 拦截含 rm 与 kubectl delete,命中任一即拦截 |
| 跨名单比类型优先级,不比规则长短 | 询问 cat n csd 优先于放行 cat,但拦截 cat 优先于一切 |
添加规则与校验
| 字段 | 是否必填 | 说明 | 默认值 | 校验规则 |
|---|---|---|---|---|
| 命令 | 必填 | 写入当前名单的命令规则 | 无 | 见下文 |
含 |、&&、||、;、|& 的规则会按「谁、怎么连、按什么顺序」做结构理解,不能只看有没有这些符号。例如规则 curl | sh 表示拦「curl 的输出交给 sh」:curl URL | sh 会命中,curl URL | echo、sh | curl URL 不会。
不含上述连接符的单命令(如 rm -rf、curl $)仍按原有字符串 / 前缀规则,不走下面的结构校验。
保存失败分两层:页面即时校验(未提交)与 提交后结构校验(提示「命令规则无法编译:…」)。输入为空或不合规时,添加按钮置灰;仅校验通过后方可添加成功。
页面即时校验
| 你配的内容 | 提示 | 说明 |
|---|---|---|
| 空着不填,或与本名单已有规则重复 | 请填写命令,同类名单内不可重复 | 必须有内容,且同一名单内不可重复 |
| 超过 64 个字符 | 不可超出 64 字符 | 页面输入上限 |
出现允许字符以外的字符(如引号、括号、>) | 仅支持输入字母、数字、空格、-_./: & $ | | 允许:字母、数字、空格、- _ . / : & $ |。if ...; then、(curl | sh)、> file 等通常会先被页面拦住 |
$、&、| 可以输入;能否最终保存,还取决于下方结构校验。
提交后结构校验
提交后若提示 「命令规则无法编译:…」,说明系统无法按命令结构识别该规则。常见情况如下。
管道未写完
| 示例 | 说明 |
|---|---|
curl |、curl $ | | 管道右边为空,左右两段都必须有命令。对比:curl $ | curl 可保存($ 只是参数) |
不支持的规则结构
名单只配「几段命令 + 中间怎么连」,不要写成脚本或括号表达式。
| 示例 | 提示要点 |
|---|---|
(curl | sh)、{ curl | sh; } | 不支持的规则结构;规则本身不要加括号 |
if ...; then curl | sh; fi、for ...; do ...; done | 同上;直接写 curl | sh 即可 |
把 if / for / [[ 当程序名 | 不支持的 shell 语法 |
同一条规则不能混用两种连法
|、|&、&&、|| 均可单独使用,但同一条规则内不要混用:
| 示例 | 能否保存 | 说明 |
|---|---|---|
curl | sh、curl |& sh | 能 | 只用了一种管道 |
curl && sh、curl || sh | 能 | 只用了一种逻辑连接 |
curl | cat |& sh | 不能 | 不能混合 | 与 |& |
curl && cat || sh | 不能 | 不能混合 && 与 || |
curl & sh(中间的 &) | 不能 | 中间 & 表示后台,不是管道;& 只能写在整条末尾,如 curl | sh & |
每一段都必须是明确的程序名
配 curl | sh 时,系统要能认出左边是 curl、右边是 sh。程序名须写死,不能空着、不能是变量、不能拆开写、也不能套一层「再去跑别的命令」。
| 示例 | 提示要点 |
|---|---|
| 某一段为空 | 规则命令缺少可执行程序 |
FOO=1 | sh | 仅有赋值、缺少可执行程序 |
$cmd | sh | 不允许动态可执行程序标识(对比:curl $ | sh 可保存) |
c""url | sh | 不允许混淆的可执行程序标识 |
eval / source / . file / exec … | 不支持动态 shell 启动器 |
find ... -exec ... | 不支持 find 的执行类动作 |
只有 > file 这类重定向 | 重定向规则缺少命令 |
可正常保存的示例
| 示例 | 说明 |
|---|---|
curl | sh | 合法两段管道 |
curl | sh & | 末尾 & 表示后台,与 curl | sh 不是同一条规则 |
curl $ | curl | $ 是参数,不是程序名 |
curl | sh && rm | 管道与并且可组合 |
bash -c curl | sh | 按外层理解(bash 管道给 sh),不等于 curl | sh |
rm -rf、curl $ | 无复合连接符,仍按原字符串规则 |
默认规则
| 名单 | 内置规则 |
|---|---|
| 询问名单 | python、shell(允许用户删除) |
| 拦截 / 放行 | 以系统默认为准;「重置默认」可恢复 |
在 Sage AI 中因询问名单弹出确认时,界面会引导:若不需每次询问,可到 安全运营 / 安全管理 / 命令安全 的询问名单中删除对应规则。
命中详情展示
仅当命中拦截 / 询问 / 放行名单时展示,格式为 {名单类型} · {规则内容}(如 拦截名单 · cat)。出现在拦截提示、审批弹窗、直接执行提示中。未命中任何名单时不展示名单信息(走审批模式)。
与执行审计
命令执行的终态结果记入 审计日志 的 执行审计(成功、失败、已拦截、已取消、已跳过、已超时等)。审批等待中、审批拒绝且未执行的不落库。列表可展示 命令安全规则、名单类型 等字段,并支持按规则与名单类型过滤。
注意事项
- 内容安全与命令安全同级,请按治理目标分别维护,勿混用。
- IM 渠道对话同样遵循绑定账号 / 环境 / 资源域下的内容安全与命令安全策略。
- 维护权限应仅授予安全 / 平台治理角色。
- 重置默认与删除规则均需二次确认,操作前请确认影响面。
延伸阅读
- 安全运营 · 使用指南
- 审核列表
- 审计日志
- 创作空间 · 使用指南
- 企业微信对接指南(IM 场景同样生效命令安全)