全部產品
Search
文件中心

Data Lake Analytics - Deprecated:細粒度配置RAM子帳號許可權

更新時間:Jul 06, 2024

本文詳細介紹了如何配置RAM子帳號許可權來使用DLA Serverless Spark提交作業。

前提條件

操作步驟

  1. 登入RAM控制台為RAM子帳號授予訪問DLA的許可權。
    如何為RAM子帳號授權,請參見為RAM使用者授權
    權限原則的說明如下:
    權限原則名稱權限原則說明
    AliyunDLAFullAccess用於資料湖分析的管理員權限,擁有資料湖分析的所有許可權,可以執行建立叢集、刪除叢集、提交作業等操作,停止其它帳號的作業等操作。擁有授權給DLA賬戶的角色的使用權。
    AliyunDLAReadOnlyAccess用於資料湖分析的訪客許可權,擁有資料湖分析的唯讀許可權,可以查看叢集狀態、作業狀態, 作業日誌等資訊。無法修改叢集的狀態,也無法提交作業。
    AliyunDLADeveloperAccess用於資料湖分析的開發人員許可權,可以查看叢集、作業的狀態,提交和執行作業,只能終止自己提交的作業,無法建立和刪除叢集,擁有授權給DLA賬戶的角色的使用權。
    說明 在RAM存取控制中,您還可以根據需要自訂建立更細粒度的存取原則,比如一個子帳號可以使用哪些叢集。具體請參見授予RAM帳號細粒度訪問DLA的許可權。建立完權限原則後,您便可添加該自訂策略給該RAM子帳號。
  2. 為了讓Spark作業可以訪問您的資料,需要為DLA建立一個資料訪問的RAM角色。
    如何建立RAM角色,請參見建立角色
    建立RAM角色時,您需要記錄如下資訊:
    • 最大會話時間:最大的會話時間,可調整,最大可以調整為12小時。
    • ARN:該角色的ID。
    說明 關於RAM角色的更多資訊,請參見RAM角色概覽
  3. 為建立的RAM角色授權。
    如何為RAM角色授權,請參見為RAM角色授權
  4. 授權允許子帳號可以使用步驟3中角色的權限原則。
    如何授權子帳號使用角色的權限原則,請參見建立自訂權限原則
  5. 把步驟3中建立的權限原則授權給RAM子帳號,對應的RAM子帳號便擁有了權限原則中的許可權。
    如何授權,請參見為RAM使用者授權

驗證RAM子帳號許可權配置

RAM子帳號在提交任務時需要在conf參數中增加spark.dla.roleArn。這個值就是步驟2中建立的角色的ARN值。樣本如下:
{
    "name": "SparkPi",
    "file": "oss://sparkRoleTest/original-spark-examples_2.11-2.4.5.jar",
    "className": "org.apache.spark.examples.SparkPi",
    "args": [
        "10"
    ],
    "conf": {
        "spark.dla.roleArn": "acs:ram::xxxxxx:role/dla-sub-user-role"
        "spark.driver.resourceSpec": "small",
        "spark.executor.instances": 2,
        "spark.executor.resourceSpec": "small"
    }
}