Skip to main content

角色与权限

三档角色对应的 capability、每个功能落在哪一档、ES 写回和数据接入需要的 Splunk 权限、登录如何沿用 Splunk。

没有自己的账号体系。用户用 Splunk 登录,App 按角色带的 capability 决定能做什么;账号菜单只有「偏好设置」,改密码去 Splunk。

三档角色

default/authorize.conf 定义三个 capability 和三个角色,逐级继承:

角色capability能做什么
rst_copilot_viewercopilot_use提问、解读、看所有页面;只写自己的数据(会话、反馈、偏好、常用查询)
rst_copilot_analyst+ copilot_write分诊、调查、生成检测规则、生成报告、上传知识库、通知试发、写回 ES、开工单、存为 Report
rst_copilot_admin+ copilot_adminAI 配置、系统设置、许可、通道与工单配置、规则部署 / 启停 / 删除、资产导入、应用改写 / 降噪 / 数据接入写入、MCP 令牌

Splunk 自带的 adminsc_admin 拿到全部三个 capability。1.5.x 的旧角色 copilot_user 等价 analyst,下一大版删除。

给用户分配角色在 Splunk 的 Settings → Roles / Users,或 authorize.conf。没有任何 rst 角色的普通 user 能打开 App 但没有 copilot_use,所有 AI 请求返回 forbidden

闸门在哪

  • 纯管理端点(AI 配置、许可、部署、资产导入、告警源设置)在 restmap.conf 上要求 copilot_admin,请求到不了 handler。
  • 混合端点(知识库、基线、通道、报告、分诊结果、数据接入、MCP)在 handler 里按动作查 capability:读开放,写按上表分档。
  • 被拒返回 {"code":"forbidden","params":{"capability":"copilot_write"}},界面上按钮显示原因而不是直接隐藏。
  • 搜索栏命令 | copilot / | splexplain 和 MCP 工具走同一套闸:MCP 令牌绑定签发者的档位,签不出高于自己的令牌。

功能需要的 Splunk 权限

App 用当前用户的会话跑搜索,用户在 Splunk 里看不到的索引,Copilot 也看不到。以下功能另需:

功能需要
实时告警 / 安全态势对告警索引(默认 notable)的搜索权限
写回 ES notableEnterprise Security 已安装;用户对 notable_update 有权(ES 的 ess_analyst 及以上)
检测规则部署 / 存为 Report / Alertschedule_search;写到 search app 的 saved searches
数据接入「写入」目标 app local/props.conf 的写权限(edit_props 或 admin)
SPL 性能顾问_audit 索引的搜索权限(默认只有 admin)
平台健康/services/server/healthlicenserkvstore/status 的读权限(默认只有 admin;普通用户看到的项标 unknown)
基线巡检CIM Endpoint / Change 数据模型的搜索权限
资产台账有 ES 时读 asset_lookup_by_str / identity_lookup_expanded;没有 ES 用 CSV 导入
定时任务(基线、KB 同步、自动分诊、MCP)脚本输入以 splunk-system-user 跑;Splunk Free 许可没有这个用户,定时任务拿不到会话

脱敏与出网的管理员钉死

  • RST_MASKING_MODE 环境变量(写在 splunk-launch.conf)钉死脱敏档位,界面改不了。
  • [limits] agentic_index_whitelist 限制模型自主探查范围。
  • 威胁情报、工单、通道、MCP 各自的出网开关默认关。

本页内容