权限管理
如果您需要对ServiceStage的资源,给企业中的员工设置不同的访问权限,以达到不同员工之间的权限隔离,您可以使用统一身份认证服务(Identity and Access Management,简称IAM)进行精细的权限管理。该服务提供用户身份认证、权限分配、访问控制等功能,可以帮助您安全的控制云资源的访问。
通过IAM,您可以在云帐号中给员工创建IAM用户,并使用策略来控制员工对云资源的访问范围。例如您的员工中有负责软件开发的人员,您希望开发人员拥有ServiceStage的使用权限,但是不希望开发人员拥有删除等高危操作的权限,那么您可以使用IAM为开发人员创建用户,通过授予仅能使用ServiceStage,但是不允许删除的权限策略,控制开发人员对ServiceStage资源的使用范围。
如果云帐号已经能满足您的要求,不需要创建独立的IAM用户进行权限管理,您可以跳过本章节,不影响您使用ServiceStage服务的其它功能。
IAM是提供权限管理的基础服务。关于IAM的详细介绍,请参见《IAM产品介绍》。
ServiceStage权限
默认情况下,新建的IAM用户没有任何权限,您需要将其加入用户组,并给用户组授予策略,才能使得用户组中的用户获得策略定义的权限,这一过程称为授权。授权后,用户就可以基于策略对云服务进行操作。
ServiceStage资源通过物理区域划分,为项目级服务。授权时,“作用范围”需要选择“区域级项目”,然后在指定区域对应的项目中设置相关权限,并且该权限仅对此项目生效;如果在“所有项目”中设置权限,则该权限在所有区域项目中都生效。访问ServiceStage时,需要先切换至授权区域。
根据授权精细程度分为角色和策略。
- 角色:IAM最初提供的一种根据用户的工作职能定义权限的粗粒度授权机制。该机制以服务为粒度,提供有限的服务相关角色用于授权。由于各云服务之间存在业务依赖关系,因此给用户授予角色时,可能需要一并授予依赖的其他角色,才能正确完成业务。角色并不能满足用户对精细化授权的要求,无法完全达到企业对权限最小化的安全管控要求。
- 策略:IAM最新提供的一种细粒度授权的能力,可以精确到具体服务的操作、资源以及请求条件等。基于策略的授权是一种更加灵活的授权方式,能够满足企业对权限最小化的安全管控要求。
如表1所示,包括了ServiceStage的所有系统权限。
系统角色/策略名称 |
描述 |
类别 |
依赖关系 |
---|---|---|---|
ServiceStage FullAccess |
ServiceStage服务所有权限。 |
系统策略 |
无 |
ServiceStage Developer |
ServiceStage开发者权限,拥有应用、组件、环境的操作权限,但无审批权限和基础设施创建权限。 |
系统策略 |
无 |
ServiceStage ReadOnlyAccess |
ServiceStage只读权限。 |
系统策略 |
无 |
CSE Admin |
微服务引擎服务管理员权限。 |
系统策略 |
无 |
CSE Viewer |
微服务引擎服务查看权限。 |
系统策略 |
无 |
如果表1所列的这些权限不满足实际需求,可以在这个基础上自定义策略。
表2列出了ServiceStage常用操作与系统权限的授权关系,您可以参照该表选择合适的系统权限。
操作 |
ServiceStage ReadOnlyAccess |
ServiceStage Developer |
ServiceStage FullAccess |
CSE Viewer |
CSE Admin |
---|---|---|---|---|---|
创建应用 |
x |
√ |
√ |
x |
x |
修改应用 |
x |
√ |
√ |
x |
x |
查询应用 |
√ |
√ |
√ |
x |
x |
删除应用 |
x |
√ |
√ |
x |
x |
创建组件 |
x |
√ |
√ |
x |
x |
查询组件 |
√ |
√ |
√ |
x |
x |
部署组件 |
x |
√ |
√ |
x |
x |
维护组件 |
x |
√ |
√ |
x |
x |
删除组件 |
x |
√ |
√ |
x |
x |
创建构建工程 |
x |
√ |
√ |
x |
x |
修改构建工程 |
x |
√ |
√ |
x |
x |
查询构建工程 |
√ |
√ |
√ |
x |
x |
启动构建工程 |
x |
√ |
√ |
x |
x |
删除构建工程 |
x |
√ |
√ |
x |
x |
创建流水线 |
x |
√ |
√ |
x |
x |
修改流水线 |
x |
√ |
√ |
x |
x |
查询流水线 |
√ |
√ |
√ |
x |
x |
启动流水线 |
x |
√ |
√ |
x |
x |
克隆流水线 |
x |
√ |
√ |
x |
x |
删除流水线 |
x |
√ |
√ |
x |
x |
新建仓库授权 |
x |
√ |
√ |
x |
x |
修改仓库授权 |
x |
√ |
√ |
x |
x |
查询仓库授权 |
√ |
√ |
√ |
x |
x |
删除仓库授权 |
x |
√ |
√ |
x |
x |
创建微服务引擎 |
x |
x |
√ |
x |
√ |
维护微服务引擎 |
x |
x |
√ |
x |
√ |
查询微服务引擎 |
√ |
√ |
√ |
√ |
√ |
删除微服务引擎 |
x |
x |
√ |
x |
√ |
微服务注册 |
√ |
√ |
√ |
x |
√ |
微服务配置 |
√ |
√ |
√ |
x |
√ |
微服务治理 |
x |
√ |
√ |
x |
√ |
SWR未支持细粒度权限,相关权限需要另外授权。
使用自定义细粒度策略,请使用管理员用户登录IAM控制台,按需选择ServiceStage、CSE的细粒度权限进行授权操作。
权限名称 |
权限描述 |
权限依赖 |
应用场景 |
---|---|---|---|
cse:engine:list |
列出所有引擎 |
无 |
查看引擎列表。 |
cse:engine:get |
查看引擎信息 |
cse:engine:list |
查看引擎详情,仅微服务引擎专享版支持。 |
cse:engine:modify |
修改引擎 |
|
修改引擎的操作包括:开启/关闭公网访问操作、开启/关闭安全认证操作、引擎失败任务重试操作,仅微服务引擎专享版支持。 |
cse:engine:upgrade |
升级引擎 |
|
升级引擎的操作包括:引擎版本升级操作,仅微服务引擎专享版支持。 |
cse:engine:delete |
删除引擎 |
|
删除引擎,仅微服务引擎专享版支持。 |
cse:engine:create |
创建引擎 |
|
创建引擎的操作包括:创建引擎操作,引擎备份/恢复任务创建操作,仅微服务引擎专享版支持。 |
cse:config:modify |
服务配置管理修改 |
|
全局配置功能与治理功能涉及的配置修改。 |
cse:config:get |
服务配置管理查看 |
|
查看服务的配置。 |
cse:governance:modify |
服务治理中心修改 |
|
创建与修改服务治理。 |
cse:governance:get |
服务治理中心查看 |
|
查看服务治理功能。 |
cse:registry:modify |
服务注册管理修改 |
|
服务修改。 |
cse:dashboard:modify |
dashboard管理修改 |
|
仪表盘修改。 |
cse:dashboard:get |
dashboard管理查看 |
|
仪表盘查看。 |
cse:registry:get |
服务注册管理查看 |
|
服务目录查看。 |
仪表盘不需要授权,但是依赖registry权限,因为仪表盘区分服务需要使用服务目录功能。
权限名称 |
权限描述 |
权限依赖 |
应用场景 |
---|---|---|---|
servicestage:app:get |
查询应用信息 |
无 |
查询应用信息。 |
servicestage:app:create |
创建应用 |
无 |
创建应用。 |
servicestage:app:modify |
更新应用 |
无 |
更新应用。 |
servicestage:app:delete |
删除应用 |
无 |
删除应用。 |
servicestage:app:list |
查看环境和应用列表 |
无 |
查看环境和应用列表。 |
servicestage:environment:create |
创建环境 |
无 |
创建环境。 |
servicestage:environment:modify |
更新环境 |
无 |
更新环境。 |
servicestage:environment:delete |
删除环境 |
无 |
删除环境。 |
servicestage:pipeline:get |
查看流水线信息 |
无 |
查看流水线信息。 |
servicestage:pipeline:create |
创建流水线 |
无 |
创建流水线。 |
servicestage:pipeline:modify |
修改流水线 |
无 |
修改流水线。 |
servicestage:pipeline:delete |
删除流水线 |
无 |
删除流水线。 |
servicestage:pipeline:list |
查看流水线列表 |
无 |
查看流水线列表 |
servicestage:pipeline:execute |
执行流水线 |
无 |
执行流水线。 |
servicestage:assembling:get |
查看构建信息 |
无 |
查看构建信息。 |
servicestage:assembling:create |
创建构建 |
无 |
创建构建。 |
servicestage:assembling:modify |
修改构建 |
无 |
修改构建。 |
servicestage:assembling:delete |
删除构建 |
无 |
删除构建。 |
servicestage:assembling:list |
查看构建列表 |
无 |
查看构建列表。 |