根据权限类型,分布式云容器平台 ACK One的权限包括服务角色、RAM权限策略和RBAC权限。您需要为服务账号授予对应的权限,才能正常使用分布式云容器平台 ACK One的功能。本文将为您介绍服务角色、RAM权限策略和RBAC权限关系,以及如何为服务账号授予相应权限。
权限类型
权限类型 | 是否必须授权 | 权限说明 |
首次使用ACK One服务时需要授权,使用阿里云账号(主账号)或者RAM管理员账号(子账号)授权一次即可。 | 授权后,ACK One服务才能访问其他关联云服务资源。 | |
RAM用户或RAM角色必须授权,阿里云账号默认拥有权限,无需额外授权。 | 授权后,RAM用户或RAM角色才能使用ACK One的功能。 | |
RAM用户或RAM角色必须授权,阿里云账号默认拥有权限,无需额外授权。 | 授权后,RAM用户或RAM角色才能对ACK One集群内的K8s资源进行操作。 |
服务角色
服务角色是云服务在特定情况下,为完成功能而获取其他云服务访问权限的RAM角色。
例如,ACK One上创建工作流集群后,需要创建弹性容器ECI实例运行工作流,因此需要拥有创建ECI实例的相应权限。
ACK One提供以下服务角色,具体的策略内容请参见ACK One服务角色策略内容。
角色名称 | 角色权限说明 |
AliyunCSDefaultRole |
|
AliyunServiceRoleForAdcp |
|
AliyunAdcpServerlessKubernetesRole |
|
AliyunAdcpManagedMseRole |
|
服务角色无需手动创建,首次使用ACK One控制台,界面会自动弹出授权提示,您只需按提示操作即可完成授权。
仅阿里云账号(主账号)或RAM管理员账号可以完成自动授权,普通RAM用户没有授权操作的权限。如果系统提示权限不足,请将账号切换到阿里云(主账号)或RAM管理员账号完成授权。
RAM系统权限策略
默认情况下,RAM用户在使用云服务的OpenAPI时没有任何权限。如果您通过RAM用户或RAM角色访问ACK One,需要为其授予相应的操作权限,以确保正常使用ACK One的功能。ACK One提供了一些默认的系统权限策略,用于控制全局资源的读写访问,您可以根据业务需求为RAM用户或RAM角色添加相应的系统策略。
具体授权操作,请参见为RAM用户或RAM角色授予系统权限策略。
RAM系统权限策略 | 权限说明 | 集群是否涉及 | ||
注册集群 | 多集群舰队 | 工作流集群 | ||
AliyunAdcpFullAccess | 当RAM用户或RAM角色需要ACK One所有资源的读写权限。 | 是 | 是 | 是 |
AliyunAdcpReadOnlyAccess | 当RAM用户或RAM角色需要ACK One所有资源的只读权限。 | 是 | 是 | 是 |
AliyunCSFullAccess | 当RAM用户或RAM角色需要容器服务产品所有资源的读写权限。 | 是 | 是 | 不涉及 |
AliyunCSReadOnlyAccess | 当RAM用户或RAM角色需要容器服务产品所有资源的只读权限。 | 是 | 是 | 不涉及 |
AliyunVPCReadOnlyAccess | 当RAM用户或RAM角色在创建集群时选择指定VPC。 | 是 | 是 | 是 |
AliyunECIReadOnlyAccess | 当RAM用户或RAM角色需要将集群Pod调度到ECI上。 | 是 | 是 | 是 |
AliyunLogReadOnlyAccess | 当RAM用户或RAM角色在创建集群时选择已有Log Project存储审计日志,或查看指定集群的配置巡检。 | 是 | 是 | 是 |
AliyunARMSReadOnlyAccess | 当RAM用户或RAM角色需要查看集群阿里云Prometheus插件的监控状态。 | 是 | 是 | 是 |
AliyunRAMReadOnlyAccess | 当RAM用户或RAM角色需要查看已有的权限策略。 | 是 | 是 | 是 |
AliyunECSReadOnlyAccess | 当RAM用户或RAM角色为集群添加已有云上节点或查看节点详细信息。 | 是 | 不涉及 | 不涉及 |
AliyunContainerRegistryReadOnlyAccess | 当RAM用户或RAM角色需要查看阿里云账号内的业务镜像。 | 是 | 不涉及 | 不涉及 |
AliyunAHASReadOnlyAccess | 当RAM用户或RAM角色需要使用集群拓扑功能。 | 是 | 不涉及 | 不涉及 |
AliyunYundunSASReadOnlyAccess | 当RAM用户或RAM角色需要查看指定集群的运行时安全监控。 | 是 | 不涉及 | 不涉及 |
AliyunKMSReadOnlyAccess | 当RAM用户或RAM角色在创建集群时启用Secret落盘加密功能。 | 是 | 不涉及 | 不涉及 |
AliyunESSReadOnlyAccess | 当RAM用户或RAM角色需要执行云上节点池的相关操作,例如查看、编辑和扩缩容等。 | 是 | 不涉及 | 不涉及 |
RBAC权限
RAM系统策略仅控制ACK One集群资源的操作权限,若RAM用户或RAM角色需要操作指定集群内的K8s资源,(如创建并获取GitOps Application和Argo Workflow),还需要获取指定ACK One集群及其命名空间的操作权限即RBAC权限。
ACK One提供以下预置角色:
多集群舰队和工作流集群RBAC权限
RBAC权限
权限说明
集群是否涉及
多集群舰队
工作流集群
admin(管理员)
具有集群范围和所有命名空间下资源的读写权限。
是
是
dev(开发人员)
具有所选命名空间下的资源读写权限。
是
是
gitops-dev(gitops开发人员)
具有argocd命名空间下应用资源的读写权限。
是
不涉及
RBAC权限所控制的具体资源列表以及授权操作,请参见为RAM用户或RAM角色授予RBAC权限。