全部產品
Search
文件中心

Data Lake Analytics - Deprecated:授予RAM帳號細粒度訪問DLA的許可權

更新時間:Jul 06, 2024

本文主要介紹了在DLA通過RAM存取控制授權的Action列表和Resource列表,適用於建立自訂策略實現精微調權限控制的業務需求。

說明 您可以使用DingTalk搜尋群號30372915加入資料湖DLA開發交流群,聯絡支援人員答疑。

自訂策略

您可以通過RAM控制台或者調用RAM APICreatePolicy建立一個自訂策略,在指令碼配置方式的自訂策略中,您需要根據JSON模板檔案填寫策略內容。如何建立自訂權限原則,請參見建立自訂權限原則

樣本

樣本一:

主帳號ID為123456****的賬戶,在杭州區建立一個虛擬叢集dla-vc1,配置一組策略dla-vc1-policy,允許使用者在這個叢集中提交作業,但被授權使用者只能查看自己作業的詳細日誌資訊,並終止自己提交的作業。

被授權使用者無權進行如下操作:
  • 查看其他使用者作業的詳細日誌資訊。
  • 終止其他使用者提交的作業。
  • 提交代碼給其他使用者的互動式作業。
策略內容如下:
{
    "Version": "1",
    "Statement": [
        {
            "Action": [
                "openanalytics:ConsolePermission",
                "openanalytics:ListSparkJobs",
                "openanalytics:SubmitSparkJob"
            ],
            "Resource": "acs:openanalytics:cn-hangzhou:123456****:virtualcluster/dla-vc1",
            "Effect": "Allow"
        }
    ]
}
樣本二:

主帳號ID為123456****的賬戶,期望賦予某個RAM使用者在杭州區的系統管理權限,委託這個RAM使用者全權管理杭州區的所有資料湖的資產。此時主帳號可以建立一個policy,命名為dla-cn-hangzhou-admin

策略內容如下:
{
    "Version": "1",
    "Statement": [
        {
            "Action": [
                "openanalytics:*"
            ],
            "Resource": "acs:openanalytics:cn-hangzhou:123456****:*",
            "Effect": "Allow"
        }
    ]
}
說明 代碼中的參數說明,請參見鑒權列表

鑒權列表

說明 Resource格式為acs:openanalytics:${RegionId}:${OwnerId}:virtualcluster/${VirtualClusteName},所有資產萬用字元用*表示,更多資訊,請參見權限原則基本元素
控制台許可權
ActionResourceAction說明
ConsolePermission*允許被授權的RAM帳號可以訪問DLA控制台,如果RAM帳號沒有此許可權則只能通過阿里雲OpenAPI的方式來使用DLA。
Spark系統管理權限
ActionResourceAction說明
ListSparkJobsacs:openanalytics:<region>:<account-id>:virtualcluster/<virtualClusteName>/sparkjobs/*查詢所有的Spark作業列表。
SubmitSparkJob提交一個Spark作業。
提交一個Spark SQL。
GetSparkJobacs:openanalytics:<region>:<account-id>:virtualcluster/<virtualClusteName>/sparkjobs/jobid擷取Spark作業目前狀態。
擷取Spark作業的日誌。
擷取Spark作業的詳細配置資訊和UI地址等內容。
擷取當前Session的狀態
KillSparkJobacs:openanalytics:<region>:<account-id>:virtualcluster/<virtualClusteName>/sparkjobs/jobid終止一個Spark作業。
ExecuteSparkStatementacs:openanalytics:<region>:<account-id>:virtualcluster/<virtualClusteName>/sparkjobs/<jobid>/statements/*在Session中執行一段代碼, 並獲得代碼塊的ID。
ListSparkStatements擷取Session緩衝中所有的代碼塊的執行資訊。
CancelSparkStatementacs:openanalytics:<region>:<account-id>:virtualcluster/<virtualClusteName>/sparkjobs/<jobid>/statements/<statementid>嘗試終止一個代碼塊的執行。
GetSparkStatement擷取指定代碼塊的執行資訊。
LakeHouse系統管理權限
ActionResourceAction說明
ListLakehousesacs:openanalytics:${regionId}:${account-id}:lakehouse/*查看湖倉列表。
CreateLakehouseacs:openanalytics:${regionId}:${account-id}:lakehouse/*建立新湖倉。
ListLakehouseWorkloadsacs:openanalytics:${regionId}:${account-id}:lakehouse/${lakehouseId}/workload/*查看工作負載列表。
CreateLakehouseWorkloadacs:openanalytics:${regionId}:${account-id}:lakehouse/${lakehouseId}/workload/*建立入湖負載。
DeleteLakehouseWorkloadacs:openanalytics:${regionId}:${account-id}:lakehouse/${lakehouseId}/workload/${workloadId}刪除一個工作負載。
StartLakehouseWorkloadacs:openanalytics:${regionId}:${account-id}:lakehouse/${lakehouseId}/workload/${workloadId}啟動運行工作負載。
StopLakehouseWorkloadacs:openanalytics:${regionId}:${account-id}:lakehouse/${lakehouseId}/workload/${workloadId}停止一個正在啟動並執行工作負載。
RedoLakehouseWorkloadacs:openanalytics:${regionId}:${account-id}:lakehouse/${lakehouseId}/workload/${workloadId}對工作負載重新校正資料,例如部分資料重導。
DescribeLakehouseWorkloadacs:openanalytics:${regionId}:${account-id}:lakehouse/${lakehouseId}/workload/${workloadId}查看工作負載的描述詳情。
GetLakehouseWorkloadMonitorInfoacs:openanalytics:${regionId}:${account-id}:lakehouse/${lakehouseId}/workload/${workloadId}查看工作負載運行時的失敗日誌和日誌UI介面。