Ruach IAM 使用说明

统一身份认证与访问管理平台使用手册

1. 系统概述

Ruach IAM(Identity and Access Management)是一套统一身份认证与访问管理平台, 为企业内部多个子系统提供集中式的用户管理、权限管控与单点登录(SSO)能力。

核心能力

  • 统一身份管理 — 集中管理用户账号、组织架构、岗位信息
  • 细粒度权限控制 — 基于角色(RBAC)的权限模型,支持全局角色、应用角色和组合角色
  • OAuth2 / SSO — 标准 OAuth2 授权码模式,各子系统一键接入单点登录
  • 会话管理 — 查看活跃会话、强制注销异常设备
  • 安全审计 — 完整的操作日志与登录历史追踪
  • 安全策略 — 登录锁定、密码策略、并发会话控制

2. 快速开始

2.1 首次登录

系统提供默认管理员账号,首次部署后请立即修改密码:

邮箱:admin@ruach.com
密码:Admin@2026

2.2 管理后台入口

登录成功后自动跳转到管理后台仪表盘。顶部导航栏提供所有功能模块的快捷入口, 包括用户管理、组织架构、角色权限等主要功能,以及审计中心、安全设置等工具栏图标。

2.3 建议初始化步骤

  1. 修改默认管理员密码
  2. 创建组织架构(公司 → 部门)
  3. 注册需要接入的子系统(应用)
  4. 定义角色并分配权限
  5. 创建用户并分配角色
  6. 配置安全策略(密码策略、登录锁定等)

3. 仪表盘

仪表盘是登录后的首页,提供系统运行状态的全局概览。

3.1 统计卡片

顶部展示四个统计卡片,快速了解系统规模:

用户总数
组织数量
角色数量
应用数量

3.2 登录趋势

展示近 7 天的登录次数趋势图,帮助管理员了解系统使用活跃度。

3.3 操作分布

以饼图或柱状图展示各类操作(创建、修改、删除、登录等)的占比分布。

3.4 快捷入口

提供常用功能的快捷入口卡片,点击即可跳转到对应管理页面。

4. 用户管理

用户管理模块提供对所有系统用户的全生命周期管理。

4.1 用户列表

支持按姓名、邮箱、状态等条件搜索筛选。列表展示用户基本信息、所属组织、角色、状态等。

4.2 创建用户

点击「新建用户」按钮,填写以下信息:

  • 姓名(必填)
  • 邮箱(必填,用于登录,不可重复)
  • 密码(必填,需符合密码策略)
  • 手机号(选填)
  • 所属组织(选填)
  • 岗位(选填)

4.3 编辑用户

点击用户行的编辑图标,可修改用户基本信息、所属组织和岗位。邮箱作为唯一标识不可修改。

4.4 角色分配

在用户详情中点击「角色」标签,可为用户分配或移除角色。 支持分配多个角色,用户的最终权限为所有角色权限的并集。

4.5 启用 / 禁用

通过状态开关可快速启用或禁用用户。被禁用的用户将无法登录系统, 但其数据和配置保留,重新启用后即可恢复访问。

4.6 重置密码

管理员可为用户重置密码。重置后系统将生成新密码,请及时通知用户。

4.7 批量操作

勾选多个用户后,可执行批量启用、批量禁用或批量删除操作。

5. 组织架构

组织架构模块支持以树形结构管理企业的组织层级。

5.1 组织树

左侧展示完整的组织树形结构,支持展开/折叠。 点击节点可在右侧查看该组织的详细信息和下属成员。

5.2 创建组织

点击「新建组织」或在某个节点下点击「添加子组织」,填写组织名称、编码、描述等信息。

5.3 编辑 / 删除

可修改组织名称和描述。删除组织时,需确保该组织下无子组织且无关联用户。

5.4 成员查看

选中组织后,右侧展示该组织下的所有用户成员列表,支持快速查看成员详情。

6. 角色权限

角色是权限的载体,通过为角色分配权限、再将角色分配给用户来实现访问控制。

6.1 角色类型

系统支持三种角色类型:

类型说明适用场景
GLOBAL全局角色跨应用通用权限,如系统管理员
APPLICATION应用角色特定子系统内的权限,如 ERP 仓管员
COMPOSITE组合角色包含多个子角色,便于批量分配

6.2 权限矩阵

编辑角色时,权限矩阵以树形勾选的方式展示各应用下的所有权限点。 权限命名空间格式为:

{app_code}:{module}:{action}

例如:erp:inventory:readerp:inventory:write

6.3 角色管理操作

  • 创建角色:填写名称、编码、类型、描述,勾选权限
  • 编辑角色:修改基本信息和权限分配
  • 删除角色:需确保无用户正在使用该角色
  • 查看关联用户:查看哪些用户拥有该角色

7. 岗位管理

岗位用于描述用户在组织内的职务或职位,可与组织架构关联。

7.1 岗位列表

展示所有岗位信息,支持按名称搜索。每个岗位显示名称、编码、关联组织和在岗人数。

7.2 创建 / 编辑岗位

  • 岗位名称(必填)
  • 岗位编码(必填,唯一标识)
  • 关联组织(选填,指定该岗位属于哪个组织)
  • 描述(选填)

7.3 删除岗位

删除前需确保该岗位下无关联用户。已关联用户的岗位不允许直接删除。

8. 子系统管理

子系统(应用)管理模块用于注册和管理需要接入 IAM 的各业务系统。

8.1 注册子系统

点击「新建应用」,填写以下信息:

  • 应用名称(必填)
  • 应用编码(必填,用于权限命名空间前缀)
  • 应用类型(Web / Mobile / API)
  • 回调地址(OAuth2 回调 URL,多个以换行分隔)
  • 描述(选填)

8.2 OAuth 配置

注册成功后,系统自动生成 client_idclient_secret。 子系统开发者需将这些凭据配置到自己的应用中以完成 OAuth2 接入。

8.3 密钥重置

如果 client_secret 泄露,可点击「重置密钥」生成新的密钥。注意:重置后旧密钥立即失效,子系统需同步更新。

8.4 权限声明

在应用详情的「权限」标签下,可为该应用声明所需的权限点。 这些权限点将出现在角色权限矩阵中,供管理员勾选分配。

9. 会话管理

会话管理模块提供当前所有活跃会话的实时监控。

9.1 活跃会话列表

展示当前有效的登录会话信息:

  • 用户名和邮箱
  • 登录时间
  • 最后活跃时间(用户最近一次刷新 Token 的时间)
  • 会话过期时间(滑动窗口,用户持续活跃则自动续期)
  • 客户端 IP 地址
  • 设备信息(User-Agent)

9.2 强制注销

管理员可选中特定会话并点击「强制注销」,立即吊销该会话的令牌。 被注销用户在下次请求时将收到未授权响应,需重新登录。 适用于发现异常登录或用户离职等场景。

10. 审计中心

审计中心记录系统内所有重要操作和登录事件,支持追溯和合规审查。

10.1 操作日志

记录管理员在后台的所有操作行为:

  • 操作类型(创建、更新、删除、登录等)
  • 操作对象(用户、角色、应用等)
  • 操作人
  • 操作时间
  • 操作详情(变更前后对比)

10.2 登录历史

记录所有用户的登录和登出事件:

  • 用户信息
  • 登录结果(成功 / 失败及原因)
  • IP 地址
  • 设备信息
  • 登录时间

10.3 筛选与导出

支持按时间范围、操作类型、操作人等多维度筛选。 筛选结果可导出为 CSV 文件,便于线下审计和存档。

11. 安全设置

安全设置模块提供系统级安全策略配置。

11.1 登录锁定

配置登录失败后的账号锁定策略:

参数说明默认值
最大失败次数连续登录失败达到此次数后锁定5 次
锁定时长账号被锁定的持续时间30 分钟

11.2 密码策略

自定义密码复杂度要求:

  • 最小长度(默认 8 位)
  • 要求包含大写字母
  • 要求包含小写字母
  • 要求包含数字
  • 要求包含特殊字符

11.3 并发会话控制

设置单个用户允许的最大同时在线会话数。 当用户超过限制时,最早的会话将被自动注销。 设为 0 表示不限制。

12. OAuth2/SSO 集成指南

本章介绍子系统如何通过 OAuth2 授权码流程接入 Ruach IAM 实现单点登录。

12.1 授权码流程

// 授权码流程示意
1. 用户访问子系统 → 未登录 → 302 重定向到 IAM
GET /api/v1/oauth/authorize?client_id=xxx&redirect_uri=xxx&response_type=code&state=xxx
2. 用户在 IAM 登录 → 同意授权 → 302 回调子系统
GET {redirect_uri}?code=xxx&state=xxx
3. 子系统后端用授权码换取令牌
POST /api/v1/oauth/token
{ grant_type: "authorization_code", code, client_id, client_secret, redirect_uri }
4. 获取用户信息
GET /api/v1/oauth/userinfo
Authorization: Bearer {access_token}

12.2 接口说明

接口方法说明
/api/v1/oauth/authorizeGET发起授权请求,重定向到登录页
/api/v1/oauth/tokenPOST用授权码换取 access_token 和 refresh_token
/api/v1/oauth/userinfoGET获取当前用户信息
/api/v1/oauth/revokePOST吊销令牌

12.3 子系统接入步骤

  1. 注册应用 — 在 IAM 后台「子系统管理」中注册您的应用,获取 client_id 和 client_secret
  2. 配置回调地址 — 设置 OAuth2 回调 URL(如 https://your-app.com/callback
  3. 实现登录跳转 — 未登录用户重定向到 IAM 的 /oauth/authorize 接口
  4. 实现回调处理 — 在回调地址中接收授权码,调用 /oauth/token 换取令牌
  5. 获取用户信息 — 使用 access_token 调用 /oauth/userinfo 获取用户身份
  6. 声明权限 — 在 IAM 后台为应用声明权限点,然后在业务代码中检查权限

12.4 OIDC 发现端点

系统提供标准 OIDC 发现端点:

  • /.well-known/openid-configuration — OpenID 配置
  • /.well-known/jwks.json — JSON Web Key Set(RS256 公钥)

13. API 参考

以下列出 Ruach IAM 的全部 API 接口。所有接口基础路径为 /api/v1

认证接口

方法路径说明
POST/auth/login用户登录
POST/auth/logout用户登出

OAuth2 接口

方法路径说明
GET/oauth/authorize发起授权请求
POST/oauth/token获取/刷新令牌
POST/oauth/revoke吊销令牌
GET/oauth/userinfo获取用户信息

OIDC 端点

方法路径说明
GET/.well-known/openid-configurationOpenID 发现配置
GET/.well-known/jwks.jsonJSON Web Key Set

用户管理

方法路径说明
GET/users获取用户列表
POST/users创建用户
GET/users/:id获取用户详情
PUT/users/:id更新用户
DELETE/users/:id删除用户
POST/users/:id/reset-password重置密码
PUT/users/:id/roles分配角色

组织管理

方法路径说明
GET/organizations获取组织列表/树
POST/organizations创建组织
GET/organizations/:id获取组织详情
PUT/organizations/:id更新组织
DELETE/organizations/:id删除组织

角色管理

方法路径说明
GET/roles获取角色列表
POST/roles创建角色
GET/roles/:id获取角色详情
PUT/roles/:id更新角色
DELETE/roles/:id删除角色

权限管理

方法路径说明
GET/permissions获取权限列表
POST/permissions创建权限
PUT/permissions/:id更新权限
DELETE/permissions/:id删除权限

应用管理

方法路径说明
GET/applications获取应用列表
POST/applications注册应用
GET/applications/:id获取应用详情
PUT/applications/:id更新应用
DELETE/applications/:id删除应用
POST/applications/:id/reset-secret重置密钥

审计接口

方法路径说明
GET/audit/logs获取操作日志
GET/audit/login-history获取登录历史