全部產品
Search
文件中心

DataWorks:自訂RAM Policy策略

更新時間:Jun 19, 2024

DataWorks支援您通過自訂RAM Policy策略並授權給指定RAM使用者的方式,實現精微調權限管理。使得RAM使用者僅擁有該權限原則所定義的許可權。本文為您介紹產品及控制台許可權控制能力與自訂權限原則的常見應用樣本。

前提條件

注意事項

以下內容僅為自訂策略,您需要在建立RAM權限原則後將該策略授權給指定RAM使用者(子帳號),該RAM使用者才能擁有您指定的許可權。RAM使用者授權詳情請參見為RAM使用者授權

產品級管控權限原則

策略一:禁止RAM使用者執行所有操作

管理員可授權禁止RAM使用者執行所有操作的RAM Policy給某使用者,授權後該使用者將無法使用DataWorks的所用功能。例如,操作管理主控台、使用DataWorks各模組介面功能、調用OpenAPI。

授權指令碼如下。

{
    "Version": "1",
    "Statement": [
        {
            "Effect": "Deny",
            "Action": "dataworks:*",
            "Resource": "*"
        }
    ]
}

策略二:禁止RAM使用者調用OpenAPI

管理員可授權禁止RAM使用者調用OpenAPI的RAM Policy給某使用者,授權後該使用者將無法調用DataWorks的OpenAPI。

授權指令碼如下。

{
  "Version": "1",
  "Statement": [
    {
      "Effect": "Deny",
      "Action": "dataworks:*",
      "Resource": "*",
      "Condition": {
        "StringEquals": {
          "dataworks:Scope": "OpenAPI"
        }
      }
    }
  ]
}

策略三:禁止RAM使用者進入DataWorks各模組介面

管理員可授權禁止RAM使用者進入DataWorks各模組介面的RAM Policy給某使用者,授權後該使用者將無法進入DataWorks產品內各模組介面。

說明

該策略僅禁止RAM使用者訪問模組介面,若該使用者擁有相關模組的API調用許可權,則可繼續正常調用。

授權指令碼如下。

{
    "Version": "1",
    "Statement": [
        {
            "Effect": "Deny",
            "Action": "dataworks:*",
            "Resource": "*",
            "Condition": {
                "StringEquals": {
                    "dataworks:Scope": "Page"
                }
            }
        }
    ]
}

控制台實體物件級許可權管控策略

當前針對DataWorks控制台各細節操作的許可權管控,DataWorks細分出以下的自訂策略。

說明

Resource說明:

  • 實際自訂策略時,您需要將下表中Resource中預留位置$表示的內容替換為真實ID值。例如,$regionid需要替換為真實的地區ID值、$accountid需要替換為阿里雲主帳號的UID。

  • *為萬用字元,實際使用時您可以替換為具體的參數值,用來做進一步許可權管控範圍的細化。例如,將workspace/*替換為workspace/workspaceid則表明權限原則生效的範圍為指定的這個工作空間內。

對象1:工作空間

工作空間

Action

Resource

Action說明

CreateWorkspace

acs:dataworks:$regionid:$accountid:workspace/*

建立工作空間

ModifyWorkspace

acs:dataworks:$regionid:$accountid:workspace/$workspaceName

修改工作空間

DeleteWorkspace

acs:dataworks:$regionid:$accountid:workspace/$workspaceName

刪除工作空間

DisableWorkspace

acs:dataworks:$regionid:$accountid:workspace/$workspaceName

禁用工作空間

EnableWorkspace

acs:dataworks:$regionid:$accountid:workspace/$workspaceName

啟用工作空間

應用樣本:自訂角色,授予角色修改工作空間許可權

指令碼編輯的權限原則代碼如下。

{
    "Statement": [
        {
            "Action": "dataworks:ModifyWorkspace",
            "Effect": "Allow",
            "Resource": "acs:dataworks:$regionid:$accountid:workspace/$workspaceName"
        }
    ],
    "Version": "1"
}

對象2:資源群組

資源群組

Action

Resource

Action說明

注意事項

ListResourceGroup

acs:dataworks:$regionid:$accountid:exclusive_resource_group/*

展示獨享資源群組頁簽。如果沒有此授權,則在控制台中看不到獨享資源群組的頁簽。

ListResourceGroup和ShowResourceGroupDetail通常組合應用於控制使用者查看獨享資源群組頁簽的許可權。

  • 僅有ListResourceGroup許可權時:使用者可看到獨享資源群組頁簽,單頁簽中沒有內容,為空白頁面。

  • 同時有ListResourceGroup、ShowResourceGroupDetail:使用者可看到獨享資源群組頁簽,且頁簽中展示ShowResourceGroupDetail指定的資源群組詳情。

說明

授權ShowResourceGroupDetail前必須先授權ListResourceGroup,僅有ShowResourceGroupDetail許可權時無法查看獨享資源群組詳情。

ShowResourceGroupDetail

acs:dataworks:$regionid:$accountid:exclusive_resource_group/$resourceGroupName

根據資源群組名稱展示資源群組詳情。

CreateResourceGroup

acs:dataworks:$regionid:$accountid:exclusive_resource_group/*

建立獨享資源群組。

非購買獨享資源群組,此處為授權使用者可根據已購買的訂單在DataWorks的控制台上建立資源群組。資源群組的購買、擴容、縮容、續約、規格變更等資源購買相關操作需要有AliyunDataWorksFullAccess和AliyunBSSOrderAccess許可權。

ModifyResourceGroup

acs:dataworks:$regionid:$accountid:exclusive_resource_group/$resourceGroupName

修改獨享資源群組。

-

  • 應用樣本1:自訂角色,授予角色查看並管理某個獨享資源群組的許可權

    指令碼編輯的權限原則代碼如下。

    {
    "Statement": [
    {
    "Action": "dataworks:ListResourceGroup",
    "Effect": "Allow",
    "Resource": "acs:dataworks:*:1111:exclusive_resource_group/*"
    },
    {
    "Action": "dataworks:ShowResourceGroupDetail",
    "Effect": "Allow",
    "Resource": "acs:dataworks:*:11111:exclusive_resource_group/resourceGroupName2"
    },
    {
    "Action": "dataworks:ModifyResourceGroup",
    "Effect": "Allow",
    "Resource": "acs:dataworks:*:111:exclusive_resource_group/resourceGroupName2"
    }
    ],
    "Version": "1"
    }
  • 應用樣本2:自訂角色,授予角色查看所有上海地區資源群組、建立及修改獨享資源群組的許可權

    說明

    建立獨享資源群組許可權指選擇訂單來建立資源群組,而非購買獨享資源的許可權。

    指令碼編輯的權限原則代碼如下。

    {
      "Statement": [
        {
          "Action": "dataworks:ListResourceGroup",
          "Effect": "Allow",
          "Resource": "acs:dataworks:*:$accountid:exclusive_resource_group/*"
        },
        {
          "Action": "dataworks:ShowResourceGroupDetail",
          "Effect": "Allow",
          "Resource": "acs:dataworks:cn-shanghai:$accountid:exclusive_resource_group/*"
        },
        {
          "Action": "dataworks:CreateResourceGroup",
          "Effect": "Allow",
          "Resource": "acs:dataworks:cn-shanghai:$accountid:exclusive_resource_group/*"
        },
        {
          "Action": "dataworks:ModifyResourceGroup",
          "Effect": "Allow",
          "Resource": "acs:dataworks:cn-shanghai:$accountid:exclusive_resource_group/resourceGroupName1"
        },
        {
          "Action": "dataworks:ModifyResourceGroup",
          "Effect": "Allow",
          "Resource": "acs:dataworks:cn-shanghai:$accountid:exclusive_resource_group/resourceGroupName2"
        }
      ],
      "Version": "1"
    }

對象3:警示資訊

警示資訊

Action

Resource

Action說明

ListContacts

acs:dataworks:$regionid:$accountid:contacts_ram_user/*

列出連絡人

ModifyContacts

acs:dataworks:$regionid:$accountid:contacts_ram_user/*

修改連絡人資訊

ListAlarmResource

acs:dataworks:$regionid:$accountid:alarm_resource/*

列出警示資源

SetUpperLimits

acs:dataworks:$regionid:$accountid:alarm_resource/*

設定警示數上限

應用樣本:自訂角色,授予角色查看警示資源、設定警示數量上線、查看連絡人許可權

指令碼編輯的權限原則代碼如下。

{
  "Statement": [
    {
      "Action": "dataworks:ListAlarmResource",
      "Effect": "Allow",
      "Resource": "*"
    },
    {
      "Action": "dataworks:SetUpperLimits",
      "Effect": "Allow",
      "Resource": "acs:dataworks:$regionid:$accountid:alarm_resource/*"
    },
    {
      "Action": "dataworks:ListContacts",
      "Effect": "Allow",
      "Resource": "acs:dataworks:$regionid:$accountid:contacts_ram_user/*"
    }
  ],
  "Version": "1"
}