示例:某公司权限设计及配置
假设A公司在华为云使用UCS服务管理多集群,公司中有多个职能团队,分别负责权限分配、资源管理、创建应用、流量分发、监控运维等。结合使用IAM和UCS的权限管理,可以实现精细化授权的目标。
- 行管团队:负责管理公司所有资源的团队。
- 开发团队:负责业务开发的团队。
- 运维团队:负责查看并监控所有资源使用情况的团队。
- 访客:预留的只读权限团队,指那些仅具有查看资源权限的人员。
通过表1,给公司不同的职能团队设置不同的权限,可以实现各团队之间权限隔离,各司其职。
职能团队 |
需要授予的策略 |
权限说明 |
---|---|---|
行管团队 |
UCS FullAccess |
UCS服务管理员权限,拥有该权限的用户拥有服务的所有权限(包含制定权限策略、安全策略等)。 |
开发团队 |
UCS CommonOperations |
UCS服务基本操作权限,拥有该权限的用户可以执行创建工作负载、流量分发等操作。 |
运维团队 |
UCS CIAOperations |
UCS服务容器智能分析管理员权限。 |
访客 |
UCS ReadOnlyAccess |
UCS服务只读权限(除容器智能分析只读权限)。 |
权限设计
公司不同的职能团队针对UCS资源的操作范围如下图所示:
- :由Tenant Administrator角色的管理员为各个职能团队授权。
- 、、、、、、:拥有UCS FullAccess权限的行管团队负责创建舰队、注册集群、将集群加入舰队,以及开通集群联邦能力,搭建多集群联邦基础设施。同时,行管团队创建权限,并将权限关联至舰队或未加入舰队的集群,使开发团队对具体的Kubernetes资源拥有相应的操作权限。
- 、:拥有UCS CommonOperations权限的开发团队执行创建工作负载、流量分发等操作。
- :拥有UCS CIAOperations权限的运维团队执行监控运维等操作。
- :拥有UCS ReadOnlyAccess权限的访客进行集群、舰队、工作负载等资源的查看操作。
管理员:IAM授权
Tenant Administrator管理员按照图3方式为各个职能团队进行IAM授权,即:先创建四个用户组,分别为这些用户组授予UCS FullAccess、UCS CommonOperations、UCS CIAOperations和UCS ReadOnlyAccess权限,然后为各个用户组添加用户。
例如:为开发团队创建用户组dev,授予UCS CommonOperations权限,并添加devuser1、devuser2两个用户。
详细的操作指导请参见UCS服务资源权限(IAM授权)。需要注意的是,UCS的一些功能依赖其他云服务实现,在使用这些功能时,还需要授予其他云服务的权限。例如,创建权限时需要获取IAM用户列表,因此,为行管团队授予UCS FullAccess权限的同时还需授予VDC ReadOnlyAccess权限。更多依赖关系请参见UCS功能所需的最小权限。
行管团队:搭建基础设施、配置权限策略
- 创建权限。
为开发人员创建开发权限。
图6 创建开发权限
- 创建舰队并将权限关联至舰队。
舰队是多个集群的集合,舰队可以实现多集群的权限统一管理。行管人员关联上一步创建的开发权限至舰队,后续加入舰队的集群将拥有舰队的权限,这样开发人员就有操作舰队中集群资源(如创建工作负载)的权限了。详细的操作指导请参见管理容器舰队。
- 注册集群,并将它们添加到舰队中。
UCS服务支持注册华为云集群、本地集群、多云集群及附着集群,行管人员可以根据实际需求选择。详细的操作指导请参见华为云集群、附着集群概述、本地集群概述或多云集群概述。
- 开通集群联邦。
集群联邦可以提供:多集群统一编排、跨集群弹性伸缩、跨集群服务发现、应用故障自动迁移等能力。集群联邦开通后,舰队内的成员集群将自动接入联邦。
运维团队:查看并监控资源使用情况
运维人员利用容器智能分析提供的智能分析、仪表盘、通知配置、7x24小时守护功能,实时监控工作负载资源,分析应用健康状态,以及完成其他日常运维工作。详细的操作指导请参见容器智能分析。
访客:查看资源
访客(仅具有查看资源权限的人员)可执行集群、舰队、工作负载等资源的查看操作。