Melody AuthMelody Auth
  • 认证服务器设置
  • 管理面板设置
  • 邮箱提供商设置
  • 短信提供商设置
  • 外部身份提供商

    • 社交登录提供商设置
    • OIDC SSO 设置
    • SAML SSO 设置
  • 主要功能

    • 身份认证
    • JWT & JWKS
    • 多重认证(MFA)
    • 角色权限控制(RBAC)
    • 策略(policy)
    • 组织(organization)
  • 其他功能

    • 用户属性
    • 应用横幅
    • 组织分组
    • 模拟登录
    • 日志管理
  • 定制化

    • 认证服务器配置
    • 品牌与主题
    • 语言本地化
  • 前端 SDK

    • React SDK
    • Angular SDK
    • Vue SDK
    • Web SDK
  • 后端 API

    • 服务间认证 API 设置
    • 服务间认证 API Swagger
    • 嵌入式认证 API 设置
    • 嵌入式认证 API Swagger
  • 部署流水线
  • 轮换 JWT 密钥
  • English
  • zh-CN
  • 认证服务器设置
  • 管理面板设置
  • 邮箱提供商设置
  • 短信提供商设置
  • 外部身份提供商

    • 社交登录提供商设置
    • OIDC SSO 设置
    • SAML SSO 设置
  • 主要功能

    • 身份认证
    • JWT & JWKS
    • 多重认证(MFA)
    • 角色权限控制(RBAC)
    • 策略(policy)
    • 组织(organization)
  • 其他功能

    • 用户属性
    • 应用横幅
    • 组织分组
    • 模拟登录
    • 日志管理
  • 定制化

    • 认证服务器配置
    • 品牌与主题
    • 语言本地化
  • 前端 SDK

    • React SDK
    • Angular SDK
    • Vue SDK
    • Web SDK
  • 后端 API

    • 服务间认证 API 设置
    • 服务间认证 API Swagger
    • 嵌入式认证 API 设置
    • 嵌入式认证 API Swagger
  • 部署流水线
  • 轮换 JWT 密钥
  • English
  • zh-CN
  • 基于角色的访问控制 (RBAC)

基于角色的访问控制 (RBAC)

Melody Auth 提供了内置的基于角色的访问控制 (RBAC) 系统,使你可以通过角色管理用户权限。用户可以被分配多个角色。

RBAC 工作原理

RBAC 系统包含三个主要组件:

  1. 角色 (Roles) - 权限的命名集合(例如 super_admin、support_admin、user)
  2. 用户 (Users) - 可以被分配一个或多个角色的个人账户
  3. 权限 (Permissions) - 系统中被检查的具体访问权

内置角色

Melody Auth 提供以下预定义角色:

  • super_admin - 拥有对所有系统功能的完全管理权限

你可以通过管理面板或 REST API 创建其他自定义角色。

角色管理

通过管理面板

  1. 进入管理面板的 Roles 部分
  2. 点击 “Create Role”
  3. 输入角色名称和可选的描述
  4. 保存角色

通过 S2S REST API

GET /api/v1/roles: 获取所有角色
POST /api/v1/roles: 创建新角色
GET /api/v1/roles/{roleId}: 获取指定角色
PUT /api/v1/roles/{roleId}: 更新角色
DELETE /api/v1/roles/{roleId}: 删除角色
GET /api/v1/roles/{roleId}/users: 获取角色中的所有用户

Token 中的角色信息

当用户进行认证时,他们的角色会包含在:

  1. 访问 Token (Access Tokens) - 用于 API 授权
  2. ID Token - 用于用户身份信息

然后你可以通过 access token 和 id token 中的 roles 字段来检查用户的权限。

最近更新: 2025/8/16 00:40
Contributors: Baozier