23.2 严格权限集

Strict 场景是基于组的实现。用户被分配到对组具有不同访问权限的角色。

此场景侧重于两个组,即开发组和生产组。开发是开发和测试产品的一组 MySQL 实例。Production是一组MySQL实例,成品部署到上面供客户使用。

图 23.1 严格权限集概览

显示生产和开发 MySQL 实例的严格权限集架构,由 MySQL Enterprise Service Manager 监控,并由不同的用户类型、DBA、开发人员和管理员查看。

用户、角色和组

此实施需要以下资产组:

  • 开发:开发和质量团队使用的所有资产都归入开发组。

  • 生产:为客户使用而部署的所有资产都分组在生产组中。

笔记

安装代理以监控资产时,在安装过程中选择正确的组非常重要。如果选择了不正确的组或未选择组,资产将超出此处定义的角色范围,并且除了 SeniorDBA 角色之外的任何用户都看不到。

此实现需要以下角色类型:

  • GroupAdmin:系统范围的角色。成员仅负责用户、角色和组的管理。此角色在没有将服务器组MEM Web 应用程序 权限设置为可用值的意义上受到限制。要访问 UI 或创建组,分配给此角色的用户还必须分配给具有可用服务器组权限(只读或管理)的角色。

  • SeniorDBA:系统范围的角色。成员可以访问生产组和开发组的所有受监控资产。没有特定于组的权限集。

  • JuniorDBA:成员仅对 Development 组中的受监控资产具有只读访问权限。

  • SeniorDev-Development:成员对 Development 组中受监控资产的访问权限有限。此角色的成员需要查看事件、查询分析器数据以及在开发资产上创建事件处理程序的权限。该角色的成员负责检查他们的代码对性能和现有功能的影响。

  • SeniorDev-Production:与 SeniorDev-Development 的成员相同,但对受监控资产的权限有限。仅具有观察权限,无权创建事件处理程序、设置中断或访问查询分析器的解释或示例功能。此角色不包括对客户数据的任何观察,但允许其成员查看在受监控资产上生成的事件。

    如果此角色的成员需要对 Production 组进行事件处理程序或顾问阈值编辑,则必须向 SeniorDBA 角色的成员提出请求。

  • JuniorDev-Development:成员只能访问 Development 组。在大多数情况下,他们的权限是只读的。他们有权查看事件、查询分析器数据等。

此实施需要以下用户:

  • DBA Teamlead:管理 DBA 团队并拥有对所有受监控资产的完全访问权限。此用户是 SeniorDBA 和 GroupAdmin 角色的成员。这种权限组合使他们能够完全访问所有受监控的资产。

  • 高级DBA:负责被监控的资产。可以完全访问所有受监控的资产。没有用户管理权限。

  • 初级 DBA:负责调查问题。所有开发资产的只读权限。无法访问生产资产。

  • 高级开发人员:负责将代码部署到开发组并审查对性能和功能的影响。无用户管理权限、事件停电权限等。允许查看 Production 组上的事件,但不能添加事件处理程序、通知组等。

  • Junior Developers:负责在 Development 组部署代码和查看事件。无权访问生产组。

系统范围的角色定义

对于这些角色中的每一个,在核心监控资产框架 中选择系统范围的权限。

表 23.3 系统范围的角色定义

允许 资深DBA 群组管理员

服务器组

管理

没有任何

MySQL实例

管理

没有任何

查询分析聚合数据

管理

没有任何

查询分析示例和解释数据

管理

没有任何

网络应用登录

只读

没有任何

MySQL 企业监视器

管理

没有任何

顾问配置

管理

没有任何

事件停电

管理

没有任何

事件处理

管理

没有任何

新组创建

没有任何

管理

设置

管理

没有任何

用户和角色

没有任何

管理


这些角色的成员资格是:

  • SeniorDBA 角色:DBA 经理和高级 DBA。

  • GroupAdmin:DBA 经理和至少一名高级 DBA,以备冗余。

开发组角色

对于这些角色中的每一个,在Core Monitored Assets框架 中选择Group-Specific Permissions ,然后从组下拉列表中 选择Development 。

表 23.4 开发组角色定义

允许 高级开发 初级开发 初级DBA

服务器组

管理

只读

只读

MySQL实例

只读

只读

只读

查询分析聚合数据

只读

只读

只读

查询分析示例和解释数据

只读

只读

只读

网络应用登录

只读

只读

只读

MySQL 企业监视器

只读

只读

只读

顾问配置

只读

只读

只读

事件停电

没有任何

没有任何

没有任何

事件处理

只读

没有任何

只读

新组创建

没有任何

没有任何

没有任何

设置

没有任何

没有任何

没有任何

用户和角色

没有任何

没有任何

没有任何


笔记

目前,顾问配置事件处理是全局权限。在该级别所做的更改会影响 MySQL Enterprise Monitor 的所有用户。因此,应该只允许具有系统范围权限的高级用户更改这些设置。

生产组角色

对于此角色,在Core Monitored Assets框架 中选择Group-Specific Permissions ,然后从组下拉列表中 选择Production 。

表 23.5 生产组角色定义

允许 高级开发

服务器组

只读

MySQL实例

只读

查询分析聚合数据

没有任何

查询分析示例和解释数据

没有任何

网络应用登录

只读

MySQL 企业监视器

只读

顾问配置

只读

事件停电

没有任何

事件处理

没有任何

新组创建

没有任何

设置

没有任何

用户和角色

没有任何


分布式部门

Strict 实施对于拥有全球分布式团队、访问中央服务器场的大公司也很有用。

此实施涉及以下内容:

  • 由 DBA 和负责与部门联络的个人组成的公司服务器场。

  • 拥有自己的 DBA、开发人员等的部门。此实施包括以下部门,每个部门都具有相同的权限集:BlueTeam、RedTeam、GreenTeam、YellowTeam 和 OrangeTeam。

  • 必须为每个部门配置组。在这种情况下,BlueGroup、RedGroup、GreenGroup、YellowGroup 和 OrangeGroup。其中每个组包含专用于每个部门的资产。

图 23.2 已分组的严格权限集

显示特定部门的严格权限集架构仅限于查看他们有权访问的 MySQL 实例。