更新时间:2024-08-05 GMT+08:00

权限管理

如果您需要对ServiceStage的资源,给企业中的员工设置不同的访问权限,以达到不同员工之间的权限隔离,您可以使用统一身份认证服务(Identity and Access Management,简称IAM)进行精细的权限管理。该服务提供用户身份认证、权限分配、访问控制等功能,可以帮助您安全的控制云资源的访问。

通过IAM,您可以在云帐号中给员工创建IAM用户,并使用策略来控制员工对云资源的访问范围。例如您的员工中有负责软件开发的人员,您希望员工拥有ServiceStage的使用权限,但是不希望员工拥有删除等高危操作的权限,那么您可以使用IAM为开发人员创建用户,通过授予仅能使用ServiceStage,但是不允许删除的权限策略,控制员工对ServiceStage资源的使用范围。

如果云帐号已经能满足您的要求,不需要创建独立的IAM用户进行权限管理,您可以跳过本章节,不影响您使用ServiceStage服务的其它功能。

IAM是云服务提供权限管理的基础服务,无需付费即可使用,您只需要为您帐号中的资源进行付费。关于IAM的详细介绍,请参见《产品介绍》

ServiceStage权限

默认情况下,新建的IAM用户没有任何权限,您需要将其加入用户组,并给用户组授予策略,才能使得用户组中的用户获得策略定义的权限,这一过程称为授权。授权后,用户就可以基于策略对云服务进行操作。

ServiceStage资源通过物理区域划分,为项目级服务。授权时,“作用范围”需要选择“区域级项目”,然后在指定区域对应的项目中设置相关权限,并且该权限仅对此项目生效;如果在“所有项目”中设置权限,则该权限在所有区域项目中都生效。访问ServiceStage时,需要先切换至授权区域。

根据授权精细程度分为角色和策略:

  • 角色:IAM最初提供的一种根据用户的工作职能定义权限的粗粒度授权机制。该机制以服务为粒度,提供有限的服务相关角色用于授权。由于各云服务之间存在业务依赖关系,因此给用户授予角色时,可能需要一并授予依赖的其他角色,才能正确完成业务。角色并不能满足用户对精细化授权的要求,无法完全达到企业对权限最小化的安全管控要求。
  • 策略:IAM最新提供的一种细粒度授权的能力,可以精确到具体服务的操作、资源以及请求条件等。基于策略的授权是一种更加灵活的授权方式,能够满足企业对权限最小化的安全管控要求。

表1所示,包括了ServiceStage的所有系统权限。推荐使用系统策略,系统角色仅用于兼容已有的权限配置。

表1 ServiceStage系统权限说明

系统角色/策略名称

描述

类别

依赖系统权限

ServiceStage FullAccess

应用管理与运维平台所有权限。

系统策略

ServiceStage ReadOnlyAccess

应用管理与运维平台只读权限。

系统策略

ServiceStage Developer

应用管理与运维平台开发者权限。

拥有应用、组件、环境的操作权限,但无基础设施创建权限。

系统策略

CSE Admin

微服务引擎服务管理员权限。

系统策略

CSE Viewer

微服务引擎服务查看权限。

系统策略

ServiceStage Administrator

应用管理与运维平台管理员,拥有该服务下的所有权限。

系统角色

CCE Administrator、VPC Administrator、SWR Administrator、Server Administrator、OBS Administrator。

ServiceStage Operator

应用管理与运维平台操作员,拥有该服务下的只读权限。

系统角色

CCE Administrator、VPC Administrator、SWR Administrator、Server Administrator和OBS Administrator。

ServiceStage Developer

应用管理与运维平台开发者,拥有该服务下的所有权限。

系统角色

CCE Administrator、VPC Administrator、SWR Administrator、Server Administrator和OBS Administrator。

如果表1所列的这些权限不满足实际需求, 您可以参考表2表3,在这个基础上自定义策略

表2 ServiceStage常用操作与系统权限之间的关系

操作

ServiceStage ReadOnlyAccess

ServiceStage Developer

ServiceStage FullAccess

创建应用

x

修改应用

x

查询应用

删除应用

x

创建组件

x

查询组件

部署组件

x

维护组件

x

删除组件

x

创建构建工程

x

修改构建工程

x

查询构建工程

启动构建工程

x

删除构建工程

x

创建流水线

x

修改流水线

x

查询流水线

启动流水线

x

克隆流水线

x

删除流水线

x

新建仓库授权

x

修改仓库授权

x

查询仓库授权

删除仓库授权

x

表3 CSE常用操作与系统权限之间的关系

操作

CSE Viewer

CSE Admin

创建微服务引擎

x

维护微服务引擎

x

查询微服务引擎

删除微服务引擎

x

创建微服务

x

查询微服务

维护微服务

x

删除微服务

x

创建微服务配置

x

查询微服务配置

编辑微服务配置

x

删除微服务配置

x

创建微服务治理策略

x

查询微服务治理策略

编辑微服务治理策略

x

删除微服务治理策略

x

细粒度权限

  • SWR未支持细粒度权限,相关权限需要另外授权。

使用自定义细粒度策略,请使用管理员用户登录IAM控制台,按需选择ServiceStage、CSE的细粒度权限进行授权操作。

  • CSE细粒度权限依赖说明请参见表4
  • ServiceStage细粒度权限依赖说明请参见表5
表4 CSE细粒度权限依赖说明

权限名称

权限描述

权限依赖

应用场景

cse:engine:list

列出所有引擎

查看引擎列表。

cse:engine:get

查看引擎信息

cse:engine:list

查看引擎详情,仅微服务引擎专享版支持。

cse:engine:modify

修改引擎

  • cse:engine:list
  • cse:engine:get

修改引擎的操作包括:开启/关闭公网访问操作、开启/关闭安全认证操作、引擎失败任务重试操作,仅微服务引擎专享版支持。

cse:engine:upgrade

升级引擎

  • cse:engine:list
  • cse:engine:get

升级引擎的操作包括:引擎版本升级操作,仅微服务引擎专享版支持。

cse:engine:delete

删除引擎

  • cse:engine:list
  • cse:engine:get
  • vpc:ports:get
  • vpc:ports:delete

删除引擎,仅微服务引擎专享版支持。

cse:engine:create

创建引擎

  • cse:engine:get
  • cse:engine:list
  • ecs:cloudServerFlavors:get
  • vpc:vpcs:get
  • vpc:vpcs:list
  • vpc:subnets:get
  • vpc:ports:get
  • vpc:ports:create

创建引擎的操作包括:创建引擎操作,引擎备份/恢复任务创建操作,仅微服务引擎专享版支持。

cse:config:modify

服务配置管理修改

  • cse:engine:list
  • cse:engine:get
  • cse:config:get

全局配置功能与治理功能涉及的配置修改。

cse:config:get

服务配置管理查看

  • cse:engine:list
  • cse:engine:get

查看服务的配置。

cse:governance:modify

服务治理中心修改

  • cse:engine:list
  • cse:engine:get
  • cse:config:get
  • cse:config:modify
  • cse:registry:get
  • cse:registry:modify
  • cse:governance:get

创建与修改服务治理。

cse:governance:get

服务治理中心查看

  • cse:engine:list
  • cse:engine:get
  • cse:config:get
  • cse:registry:get

查看服务治理功能。

cse:registry:modify

服务注册管理修改

  • cse:engine:list
  • cse:engine:get
  • cse:registry:get

服务修改。

cse:dashboard:modify

dashboard管理修改

  • cse:engine:list
  • cse:engine:get
  • cse:registry:get
  • cse:dashboard:get
  • cse:registry:modify

仪表盘修改。

cse:dashboard:get

dashboard管理查看

  • cse:engine:list
  • cse:engine:get
  • cse:registry:get

仪表盘查看。

cse:registry:get

服务注册管理查看

  • cse:engine:list
  • cse:engine:get

服务目录查看。

仪表盘不需要授权,但是依赖registry权限,因为仪表盘区分服务需要使用服务目录功能。

表5 ServiceStage细粒度权限依赖说明

权限名称

权限描述

权限依赖

应用场景

servicestage:app:get

查询应用信息

servicestage:app:list

查询应用信息。

servicestage:app:create

创建应用

  • servicestage:app:get
  • servicestage:app:list
  • servicestage:assembling:get
  • servicestage:assembling:list
  • servicestage:assembling:create

创建应用。

servicestage:app:modify

更新应用

  • servicestage:app:get
  • servicestage:app:list
  • servicestage:assembling:get
  • servicestage:assembling:list
  • servicestage:assembling:modify

更新应用。

servicestage:app:delete

删除应用

  • servicestage:app:get
  • servicestage:app:list
  • servicestage:assembling:delete

删除应用。

servicestage:app:list

查看环境和应用列表

查看环境和应用列表。

servicestage:environment:create

创建环境

  • servicestage:app:get
  • servicestage:app:list

创建环境。

servicestage:environment:modify

更新环境

  • servicestage:app:get
  • servicestage:app:list

更新环境。

servicestage:environment:delete

删除环境

  • servicestage:app:get
  • servicestage:app:list

删除环境。

servicestage:assembling:get

查看构建信息

servicestage:assembling:list

查看构建信息。

servicestage:assembling:create

创建构建

  • servicestage:assembling:get
  • servicestage:assembling:list

创建构建。

servicestage:assembling:modify

修改构建

  • servicestage:assembling:get
  • servicestage:assembling:list

修改构建。

servicestage:assembling:delete

删除构建

  • servicestage:assembling:get
  • servicestage:assembling:list

删除构建。

servicestage:assembling:list

查看构建列表

查看构建列表。