如果系統權限原則不能滿足您的要求,您可以建立自訂權限原則實現最小授權。使用自訂權限原則有助於實現許可權的精細化管控,是提升資源訪問安全的有效手段。本文介紹分布式任務調度使用自訂權限原則樣本。
什麼是自訂權限原則
在基於RAM的存取控制體系中,自訂權限原則是指在系統權限原則之外,您可以自主建立、更新和刪除的權限原則。自訂權限原則的版本更新需要由您來維護。
建立自訂權限原則後,需為RAM使用者、使用者組或RAM角色綁定權限原則,這些RAM身份才能獲得權限原則中指定的存取權限。
已建立的權限原則支援刪除,但刪除前需確保該策略未被引用。如果該權限原則已被引用,您需要在該權限原則的引用記錄中移除授權。
自訂權限原則支援版本控制,您可以按照RAM規定的版本管理機制來管理您建立的自訂權限原則版本。
操作文檔
SchedulerX許可權說明
主帳號預設擁有該帳號下所有資源的操作系統管理權限。在後續許可權控制中,建議採用RAM存取控制進行權限原則分配。SchedulerX基於RAM使用者與使用者組,便於大量設定權限原則,因此在原SchedulerX對應用的管理下,無需逐個對單獨的使用者進行獨立授權。SchedulerX的權限原則支援共用系統權限原則配置。
系統策略 | 說明 |
AdministratorAccess | 管理所有阿里雲資源,包含對SchedulerX下所有操作及資源的訪問操作許可權。 |
下面將對SchedulerX如何自訂權限原則配置細節進行說明,在RAM中定義權限原則主要包括:操作Action和資源Resource,您可根據SchedulerX定義的規則自行建立權限原則。
自訂策略主體結構
{
"Statement": [
{
"Action": "edas:*", // 操作Action配置項,配置說明參考下一節《操作Action》
"Effect": "Allow",
"Resource": "*" // 操作對象Resource配置項,配置說明參考下一節《資源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使用者授權所有資源的系統管理權限
管理SchedulerX的所有權限原則,允許訪問SchedulerX下的所有操作和資源。
{
"Version": "1",
"Statement": [
{
"Effect": "Allow",
"Action": [
"edas:*Schedulerx*"
],
"Resource": [
"acs:edas:*:*:*"
]
}
]
}給RAM使用者授權所有資源的唯讀許可權
設定ScheudlerX下所有資源的唯讀查詢許可權,允許查看SchedulerX下的所有資源資訊。
{
"Version": "1",
"Statement": [
{
"Effect": "Allow",
"Action": [
"edas:ReadSchedulerx*"
],
"Resource": [
"acs:edas:*:*:*"
]
}
]
}給RAM使用者授權指定命名空間下所有Action的許可權
設定指定空間或者部分空間下所有應用任務資源的系統管理權限,命名空間ID值需要從EDAS微服務空間下自行擷取並進行配置。如下表示對兩個空間(命名空間ID-01、命名空間ID-02)具備調度相關資源資訊的系統管理權限。您還可以自行調整切換其中的Action配置來限制對上述資源的操作(如:Action定義為"edas:ReadSchedulerx*",則表示為對上述兩個空間具備唯讀查詢許可權)。
{
"Version": "1",
"Statement": [
{
"Effect": "Allow",
"Action": [
"edas:*Schedulerx*"
],
"Resource": [
"acs:edas:*:*:namespace/命名空間ID-01/*",
"acs:edas:*:*:namespace/命名空間ID-02/*"
]
}
]
}
給RAM使用者授權指定應用下所有Action的許可權
設定任務調度中部分應用下的資源訪問系統管理權限,Resource指定如下空間對應的JobGroup的應用ID資訊即可設定相應應用下的存取權限。您也可以通過首碼加“*”模式(如下:"TestGroup*",表示TestGroup首碼的所有應用)來指定符合相應首碼的應用分組進行快速大量設定。
{
"Version": "1",
"Statement": [
{
"Effect": "Allow",
"Action": [
"edas:*Schedulerx*"
],
"Resource": [
"acs:edas:*:*:namespace/命名空間ID-01/JobGroup/TestGroup*",
"acs:edas:*:*:namespace/命名空間ID-02/JobGroup/AppGroup"
]
}
]
}


