> ## Documentation Index
> Fetch the complete documentation index at: https://docs.molesignal.com/llms.txt
> Use this file to discover all available pages before exploring further.

# 为团队和程序规划访问权限

> 按职责给人分配角色，通过单点登录接入，用团队承载归属，给程序独立的身份，并定期复核访问权限。

访问权限总是在例外中膨胀：有人今天需要多一项权限，外包同事需要看一个仪表盘，脚本需要一个 Token。没有规划的话，一年后谁也说不清谁能删除数据流、哪个 Token 还在写入数据。先一次性定好模型，再让例外落到模型里。

## 把职责对应到角色

从这个人做什么出发，选能覆盖它的最窄角色。每个角色持有哪些权限，参见[权限参考](https://docs.molesignal.com/zh-Hans/identity/roles.md#权限参考)。

| 职责 | 角色 | 说明 |
| - | - | - |
| 查看仪表盘、日志和事件 | **Viewer** | 大多数人的默认角色。Viewer 也能与 Mole Agent 对话。 |
| 搭建仪表盘、告警规则和流水线，处理告警 | **Editor** | Editor 可以确认和静默事件，但不能修改成员、Token 或设置。 |
| 管理工作区：成员、角色、Token、设置、拨测、状态页 | **Admin** | 每个工作区少数几个人。 |
| 负责整个实例 | **Owner** | 每个 Owner 都能进入平台组织 `_sys`。保持两三个，不要更多。 |
| 内置角色都不合适的职责，例如告警管理员，或还要管理拨测的 Editor | [自定义角色](https://docs.molesignal.com/zh-Hans/identity/roles.md#角色) | 从最接近的 **权限模板** 开始，再增删权限。 |

通过[访问授权](https://docs.molesignal.com/zh-Hans/identity/roles.md#访问授权)把角色授予[团队](https://docs.molesignal.com/zh-Hans/identity/teams.md#团队)，而不是逐个授予个人，访问权就会随团队成员关系变化。

## 通过单点登录接入

1. 在[身份与访问 → SSO 服务商](https://docs.molesignal.com/zh-Hans/identity/sso.md)中连接公司的身份服务商，并用 **认证平台用户组 → 本平台角色** 把它的用户组映射到角色。之后每次登录，角色都跟随目录同步。
2. 把 **默认角色** 设为 **Viewer**，给没有命中任何用户组的人。
3. 添加公司的[邮箱域名](https://docs.molesignal.com/zh-Hans/identity/sso.md#邮箱域名)，让邀请和单点登录只接受这些地址。
4. 关闭[自助加入](https://docs.molesignal.com/zh-Hans/settings/organization.md#注册与访问)，或保留它并开启 **需要管理员审批**。

root 用户，也就是 `[auth].root_email` 对应的账号，是平台管理员，使用密码登录。把密码保存在密码库中，只在单点登录不可用时使用这个账号。

## 只对一个资源、在一段时间内授权

有些需求范围小而且是临时的：外包同事只看一个仪表盘，分析师只查询一个数据流。在该资源上创建带 **到期时间** 的[访问授权](https://docs.molesignal.com/zh-Hans/identity/roles.md#访问授权)，而不是给整个工作区的角色。**环境** 限制条件（例如 `staging`）会进一步把授权限定在该环境的请求上。

对于其他组织的人，[跨组织共享](https://docs.molesignal.com/zh-Hans/identity/roles.md#跨组织共享资源)在对方组织的管理员接受后，允许访问选定的仪表盘或数据流。它只对选定的资源和组织生效，不会被转授。

## 用团队承载归属

团队不只是一群人：[值班排班](https://docs.molesignal.com/zh-Hans/alerting/on-call.md)和升级步骤、[兜底路由](https://docs.molesignal.com/zh-Hans/notification-channels#配置兜底路由)，以及 [Mole Agent](https://docs.molesignal.com/zh-Hans/agent#组织、团队与个人资源) 的团队对话、知识、技能和 MCP 服务器都引用团队。为每个负责服务、接收告警的小组建一个团队，人员变动时及时更新成员。

## 给程序独立的身份

| 程序 | 凭证 |
| - | - |
| 只发送数据的采集器或 Agent | 默认接入 Token，只能写入。 |
| 浏览器或移动端代码 | 该应用的 RUM Client Token，最终用户能看到它。 |
| 上报部署的 CI | 默认接入 Token，它也能上报部署。 |
| 读取数据或修改资源的自动化 | 带窄权限自定义角色的[服务账号](https://docs.molesignal.com/zh-Hans/identity/tokens.md#服务账号)。 |
| 由人运行的脚本或 MCP 客户端 | 设置了有效期的个人 API Token。 |

每个集成一个服务账号：集成下线时停用它的账号，账号下的所有 Token 都会随之失效。人创建的每个 Token 都要设置有效期，永远不要把登录会话交给程序。

## 定期复核访问权限

每个季度以及有人离开时：

* 在[用户](https://docs.molesignal.com/zh-Hans/identity/members.md#用户)中停用已离开的人，并查看 **最后活跃**，找出不再使用的账号。
* 在 [API Token](https://docs.molesignal.com/zh-Hans/identity/tokens.md#创建-api-token) 中撤销近期没有使用、或属于已离开人员的 Token。
* 在[访问授权](https://docs.molesignal.com/zh-Hans/identity/roles.md#访问授权)中删除已经不需要的授权。
* 在[审计](https://docs.molesignal.com/zh-Hans/settings/data-security.md#审计)中查看角色、授权、Token 和设置的变更。
* 检查[共享策略](https://docs.molesignal.com/zh-Hans/settings/organization.md#共享与公开访问)和现有的公开链接。

把[审计保留](https://docs.molesignal.com/zh-Hans/settings/platform.md#审计保留)设为合规要求的时长。

## 验收标准

* 大多数人持有 **Viewer**，每个 **Admin** 和 **Owner** 都是有意为之。
* 人员通过单点登录登录，角色跟随目录用户组。
* 每个程序都使用服务账号或接入 Token，从不使用某个人的会话。
* 没有超过有效期策略的 API Token，不再使用的 Token 都已撤销。
* 季度复核有日期、有负责人，并在审计记录中留痕。

## 相关指南

* [身份与访问](https://docs.molesignal.com/zh-Hans/identity)
* [角色与访问授权](https://docs.molesignal.com/zh-Hans/identity/roles.md)
* [API Token 与服务账号](https://docs.molesignal.com/zh-Hans/identity/tokens.md)
* [安全与多租户](https://docs.molesignal.com/zh-Hans/security.md)


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.