RAM权限配置
SchedulerX支持基于RAM用户与用户组批量设置用户权限策略。RAM可以让您避免与其他用户共享阿里云账号密钥,按需分配最小权限,从而降低信息安全风险。本文介绍如何为RAM用户授予相关操作的权限。
SchedulerX权限说明
SchedulerX兼容原有应用配置的权限,对于已配置应用权限的用户仍支持原有的权限配置。主账号默认拥有该账号下所有资源的操作管理权限。在后续权限控制中,建议采用RAM访问控制进行权限策略分配。SchedulerX基于RAM用户与用户组,便于批量设置权限策略,因此在原SchedulerX对应用的管理下,无需逐个对单独的用户进行独立授权。SchedulerX的权限策略分别支持以下三种共享的系统权限策略配置。
系统策略 | 说明 |
AdministratorAccess | 管理所有阿里云资源,包含对SchedulerX下所有操作及资源的访问操作权限。 |
AliyunEDASFullAccess | 管理EDAS权限,包含对SchedulerX下所有操作及资源的访问操作权限。 |
AliyunEDASReadOnlyAccess | EDAS的只读访问权限,包含对SchedulerX下所有资源的查询读取权限。 |
在RAM中定义权限策略主要包括:操作Action和资源Resource,您可根据SchedulerX定义的规则自行创建权限策略。
{
"Statement": [
{
"Action": "edas:*",
"Effect": "Allow",
"Resource": "*"
}
],
"Version": "1",
}
操作Action
SchedulerX的操作Action定义结构如下:
edas:${type}Schedulerx*
${type}
分为4个类型:Read、Manage、Delete、Create。包含相关操作如下所示:
类型 | 相关操作 |
Create | 创建命名空间、创建应用、创建任务、创建工作流。 |
Manage |
|
Delete | 删除命名空间、删除应用分组、删除任务、删除流程。 |
Read | 查询应用分组、查询任务、查询任务实例、查询流程、查询在线实例。 |
资源Resource
SchedulerX的资源Resource定义结构如下:
acs:edas:${regionid}:${accountid}:namespace/${namespace_id}/${resourceType}/${resourceId}
参数 | 描述 |
| 区域,针对某个区域资源访问。默认可配置 |
| 账号,针对某个账户资源访问。默认可配置 |
| 命名空间ID,针对某个命名空间。 |
| 资源种类,可选:JobGroup(SchedulerX下的任务应用分组)。 |
| 上述资源类型 |
RAM权限配置
登录RAM控制台。
创建权限策略。具体操作,请参见通过脚本编辑模式创建自定义权限策略。策略文档配置以下内容:
{ "Statement": [ { "Action": "edas:*Schedulerx*", "Effect": "Allow", "Resource":"*", } ], "Version": "1" }
为单个用户分配权限策略。其中权限策略名称选择AliyunEDASFullAccess。具体操作,请参见为RAM用户授权。
为用户组分配权限策略以及将用户添加至具备相应权限策略的用户组。
为用户组分配权限策略。具体操作,请参见为用户组授权。
将用户添加至具备相应权限策略的用户组。具体操作,请参见方式二:在用户组页面添加RAM用户到用户组。
配置系统权限策略
您可按需选择配置AdministratorAccess、AliyunEDASFullAccess和AliyunEDASReadOnlyAccess三种系统权限策略。具体操作,请参见为RAM用户授权。
配置自定义权限策略案例
SchedulerX管理权限
管理SchedulerX的所有权限策略,允许访问SchedulerX下的所有操作和资源。
{
"Version": "1",
"Statement": [
{
"Effect": "Allow",
"Action": [
"edas:*Schedulerx*"
],
"Resource": [
"acs:edas:*:*:*"
]
}
]
}
SchedulerX只读权限
设置ScheudlerX下所有资源的只读查询权限,允许查看SchedulerX下的所有资源信息。
{
"Version": "1",
"Statement": [
{
"Effect": "Allow",
"Action": [
"edas:ReadSchedulerx*"
],
"Resource": [
"acs:edas:*:*:*"
]
}
]
}
SchedulerX指定空间权限
设置指定空间下所有应用任务资源的管理权限。
{
"Version": "1",
"Statement": [
{
"Effect": "Allow",
"Action": [
"edas:*Schedulerx*"
],
"Resource": [
"acs:edas:*:*:namespace/命名空间ID-01/*",
"acs:edas:*:*:namespace/命名空间ID-02/*"
]
}
]
}
Resource
配置表示对两个空间(命名空间ID-01、命名空间ID-02)具备下属调度相关资源信息的管理权限。Action
定义为"edas:ReadSchedulerx*"
,表示为对命名空间ID-01
和命名空间ID-02
具备只读查询权限。
命名空间ID获取方式:
登录EDAS控制台。
在左侧导航栏,选择资源管理>微服务空间,在微服务空间页面,获取命名空间的微服务空间名称/ID/namespace。
SchedulerX指定应用权限
设置部分任务调度中部分应用下的资源访问管理权限。
{
"Version": "1",
"Statement": [
{
"Effect": "Allow",
"Action": [
"edas:*Schedulerx*"
],
"Resource": [
"acs:edas:*:*:namespace/命名空间ID-01/JobGroup/TestGroup*",
"acs:edas:*:*:namespace/命名空间ID-02/JobGroup/AppGroup"
]
}
]
}
Resource
通过指定命名空间ID-01
和命名空间ID-02
对应JobGroup的应用ID信息,设置相应应用下的访问权限。前缀加
*
表示指定符合相应前缀的应用分组,用于快速批量设置。例如,TestGroup*
表示TestGroup前缀的所有应用。