Skip to content

系统设置

EMQX Dashboard 中的系统设置菜单提供一系列管理功能入口,包括用户与角色管理、审计日志、API 密钥、许可证、单点登录(SSO)、数据备份与恢复以及通用设置。

用户

用户页面提供了所有活跃的 Dashboard 用户的概览,包括通过命令行生成的用户。

要添加新用户,只需点击页面右上角的创建按钮。一个弹出的对话框将提示您输入必要的用户详细信息。输入完毕后,点击创建按钮即可生成用户帐户。对于进一步的用户管理,如编辑用户信息、更新密码或删除用户,您可以通过操作列轻松访问这些选项。

EMQX 开源版本不提供基于角色的权限管理能力,所有的用户都有管理员权限可删除其他用户,但无法在 Dashboard 上删除当前登录用户。 出于安全考虑,从 EMQX 5.0.0 开始 Dashboard 用户无法用于 REST API 认证。

image

基于角色的访问控制

从 EMQX 5.3 开始,Dashboard 用户引入了 基于角色的访问控制 (RBAC)功能。RBAC 允许根据用户在组织中的角色为其分配权限。此功能简化了授权管理,通过限制访问权限提高安全性,并改善组织合规性,因此是 Dashboard 必不可少的访问控制机制。

目前,可以为用户设置以下两种预定义角色之一。您可以在创建用户时从角色下拉菜单中选择角色。

  • 管理员

    管理员拥有对 EMQX 所有功能和资源的完全管理访问权限,包括客户端管理、系统配置、API 密钥以及用户管理。

  • 查看者

    查看者可以访问 EMQX 的所有数据和配置信息,对应 REST API 中的所有 GET 请求,但无权进行创建、修改和删除操作。

登录用户权限范围(Scopes)

从 EMQX 5.10 开始,您可以为 Dashboard 登录用户分配权限范围(Scope),在角色基础上进一步限制用户可访问的 API 区域。除 10 个 API 密钥 Scope 外,Dashboard 用户还拥有 4 个仅适用于浏览器会话的专属 Scope:

Scope所需角色用途
user_management管理员管理 Dashboard 用户(创建 / 修改 / 删除)。
sso_management管理员管理 SSO 后端与 SSO 用户记录。
api_key_management管理员管理 API 密钥。
mfa_management任意管理自己的 MFA;管理员可管理其他用户的 MFA。

其中 user_managementsso_managementapi_key_management 需要管理员角色,不能分配给查看者。mfa_management 是例外:可以授予查看者,但仅允许其管理自己账号的 MFA,不授予对其他用户 MFA 设置的访问权限。当您希望查看者账号能够自助重新绑定或恢复认证设备而不获得其他额外权限时,此 Scope 非常有用。

在创建或编辑用户时,Scopes 字段是可选的。留空时,用户会得到一个由其角色推导出的默认 Scope 集:

  • 管理员:拥有全部 Scope,包括上述 4 个登录专属 Scope。
  • 查看者:拥有全部通用 API 密钥 Scope;mfa_management 仅在显式分配时才会被授予。

user_scopes

角色变更与 Scope 兼容性

变更用户角色时,EMQX 会检查该用户当前的 Scope 是否与新角色兼容。如果不兼容,请求将返回 HTTP 400。要解决此问题,请在同一请求中提供一个对新角色有效的 scopes 列表。

例如,如果您将一个管理员降级为查看者,而该用户持有 user_managementsso_managementapi_key_management,请求将被拒绝,因为这三个 Scope 需要管理员角色。请在同一请求中提供一个仅包含查看者兼容 Scope 的列表以完成变更。(mfa_management 不是仅限管理员的 Scope,不会导致此拒绝。)

默认管理员保护

dashboard.default_username 账号(其密码由 dashboard.default_password 配置)是一个应急(break-glass)账号。为了保证在其他管理员配置错误或失联时系统仍可恢复,默认用户受到下列保护,以防止误操作导致整个系统失去管理入口:

  • 不能被删除:无论是从 Dashboard 还是 REST API,删除按钮始终不可用。
  • 角色不能被更改,始终保持 administrator
  • Scope 集不能被自定义,始终拥有完整的管理员 Scope。
  • 描述和密码可以正常修改。

其他管理员不受此限制,只要系统中至少还存在一个管理员,就可以被删除。

自助操作边界

每个 Dashboard 用户无论持有哪些 Scope,都被允许执行以下两类自助操作:

  • 修改自己的密码。
  • 绑定或重新绑定自己的 TOTP / MFA。禁用 MFA 同样允许,但若管理员已为该用户账号显式要求启用 MFA,则需持有 mfa_management Scope 方可禁用。

其他个人信息变更(描述、角色、由管理员授予的 Scope)都需要操作者持有对应 Scope,即使目标用户就是操作者自己也不能绕过此检查。

命名空间角色

从 EMQX 6.0 开始,Dashboard 支持命名空间角色功能。该特性扩展了基于角色的访问控制(RBAC),以支持多租户场景:每个用户仅被授权访问特定的命名空间,实现资源隔离与权限精细化管理。

仅适用于受信任部署

命名空间管理员访问仅适用于受信任的内部部署场景,例如在同一组织内隔离不同团队或业务单元,以降低误修改其他配置的风险。命名空间功能不提供强隔离保障,不适合作为面向公共环境或非受信任用户的多租户安全边界。

如果您允许委派管理员管理命名空间范围内的资源,建议在可用版本中优先启用 rule_engine.ssrf 来校验规则引擎管理的出站目标。如果还需要运行时网络边界,再增加主机级出站访问控制,例如 iptablesnftables。参见结合规则引擎策略与防火墙规则防御 SSRF

TIP

如需了解命名空间功能的详细信息,请参阅:命名空间

创建具有命名空间角色的用户

在 Dashboard 中创建新用户时,界面将新增一个命名空间选项。

前提条件

  1. 在 Dashboard 中预先创建一个托管命名空间(如:namespace_01)。参考:创建命名空间
  2. 确保当前使用的 EMQX License 版本为 6.0 或更高版本,并已正确部署集群。

创建步骤如下:

  1. 进入系统设置 > 用户页面,点击 + 创建
  2. 填写以下字段:
    • 用户名:用户的唯一标识。
    • 备注:可选说明信息。
    • 密码:用户登录密码。
    • 角色:选择管理员查看者
  3. 启用命名空间选项,并选择一个已存在的命名空间(例如 namespace_01)。
  4. 点击创建完成用户配置。

若通过 CLI 或 API 创建用户,需显式指定角色格式为:

ns:<NAMESPACE>::<ROLE>

例如:

  • ns:namespace_01::administrator
  • ns:namespace_01::viewer

命名空间用户的行为说明

  • 资源作用域限制:命名空间用户只能查看和管理其所属命名空间下的资源,包括连接器、动作、数据源、规则等支持命名空间的模块。
  • 集群级设置访问限制:尚未支持命名空间隔离的全局配置项对命名空间用户为只读,只有系统管理员可进行修改。
  • 默认登录首页:命名空间用户登录 Dashboard 后默认进入概览页面,菜单项与普通用户一致,但资源数据将自动过滤,仅显示其命名空间内的数据。
  • License 管理限制:命名空间用户不显示 License 相关提示,License 相关操作仅由系统管理员负责。

命名空间内角色含义

  • 管理员:对指定命名空间下的资源拥有完整权限(创建、读取、更新、删除)。
  • 查看者:仅具备只读权限(等同于 GET 请求)权限,仅可查看资源数据。

审计日志

审计日志页面允许管理员配置审计日志功能,以实时监控 EMQX 集群中的关键操作变更。

有关审计日志功能的详细说明,请参见审计日志

API 密钥

API 密钥页面用于创建和管理访问 HTTP API 所需的 API 密钥。有关创建和管理 API 密钥(包括角色与范围分配)的操作说明,请参见创建 API 密钥

License

点击左侧系统设置菜单下的 License 可以来到 License 页面。在该页面上可以查看当前 License 的基础信息,包括签发对象License 使用情况EMQX 版本信息签发邮箱签发时间到期时间

点击更新 License 可以上传 License Key。在 License 设置区域可以设置 License 连接配额使用量的高水位线和低水位线。更多关于 License 的内容,参考EMQX 企业版 License

单点登录

单点登录页面为管理员提供了用户登录管理中单点登录功能的配置。有关单点登录功能的详细介绍,参阅单点登录

备份与恢复

备份与恢复页面提供用于备份运行数据和配置文件的相关设置。您可以在此页面执行数据导入和导出操作。

有关备份与恢复功能的详细信息,请参见备份与恢复

设置

要访问设置,请点击 Dashboard 右上角的齿轮图标。

设置菜单中,您可以自定义 Dashboard 的语言和主题样式:

  • 语言:选择您偏好的显示语言。
  • 主题:可在浅色和深色主题之间切换,或启用与操作系统主题的自动同步。当启用同步后,Dashboard 的主题将跟随操作系统设置,无法手动选择。

此外,设置菜单中还包含一个开关,用于启用或禁用规则页面中的 SQL 生成器功能。

settings_ee