全部產品
Search
文件中心

E-MapReduce:阿里雲帳號角色授權

更新時間:Dec 11, 2024

使用EMR on ACK前,需要授予您的阿里雲帳號AliyunEMROnACKDefaultRole系統預設角色。本文為您介紹角色授權的兩種方式。

自動化授權

通常,第一次使用EMR on ACK時,需要您進行自動化授權操作。

  1. 登入E-MapReduce控制台

  2. 在左側導覽列,單擊EMR on ACK

  3. EMR on ACK頁面,單擊去授權

  4. 雲資源訪問授權頁面,單擊頁面下方的同意授權

    系統已預設勾選AliyunEMROnACKDefaultRole角色。

手動授權

如果您不小心刪除了AliyunEMROnACKDefaultRole角色或者變更了授權策略導致EMR on ACK不可用,請按照以下操作步驟重新授權。

  1. 建立角色。

    1. 登入RAM控制台

    2. 在左側導覽列,選擇身份管理 > 角色

    3. 角色頁面,單擊建立角色

    4. 建立角色面板,選擇可信實體類型,單擊下一步

      可信實體的更多介紹,請參見建立RAM角色並授權

    5. 輸入相關角色資訊,單擊完成

      角色名稱為AliyunEMROnACKDefaultRole。如果AliyunEMROnACKDefaultRole角色已存在,則不必重複建立該角色。

  2. 添加授權策略。

    1. 角色頁面,單擊AliyunEMROnACKDefaultRole角色,然後單擊精確授權

    2. 精確許可權面板,選擇權限類別型,並輸入策略名稱稱,單擊確定

      需要為AliyunEMROnACKDefaultRole角色添加三個授權策略:

      • 策略一:系統策略(AliyunEMROnACKDefaultRolePolicy)

        {
            "Version": "1",
            "Statement": [
                {
                    "Action": [
                        "cs:CreateCluster",
                        "cs:GetClusterById",
                        "cs:GetClusters",
                        "cs:GetUserConfig",
                        "cs:DeleteCluster",
                        "cs:AttachInstances",
                        "cs:DescribeClusterLogsRequest",
                        "cs:GetClusterLogs",
                        "cs:GetUserQuota",
                        "cs:DescribeClusterNodes",
                        "cs:GetNodepoolDetail",
                        "cs:GetNodepools",
                        "cs:UpdateNodepool",
                        "cs:ScaleNodepools",
                        "cs:DescribeClusterInnerServiceKubeconfig",
                        "cs:RevokeClusterInnerServiceKubeconfig",
                        "ecs:DescribeInstances"
                    ],
                    "Resource": "*",
                    "Effect": "Allow"
                }
            ]
        }
      • 策略二:系統策略(AliyunEMRFullAccess)

        {
            "Version": "1",
            "Statement": [
                {
                    "Action": "emr:*",
                    "Resource": "*",
                    "Effect": "Allow"
                },
                {
                    "Action": [
                        "cms:QueryMetricList",
                        "ram:GetRole",
                        "ram:ListRoles",
                        "ram:ListUserBasicInfos",
                        "ecs:DescribeZones",
                        "ecs:DescribeInstanceTypes",
                        "ecs:DescribeKeyPairs",
                        "ecs:DescribeAvailableResource",
                        "ecs:DescribeInstances",
                        "ecs:DescribeSpotPriceHistory",
                        "ecs:DescribeSpotAdvice",
                        "ecs:DescribeInstanceStatus",
                        "ecs:DescribeDeploymentSets",
                        "vpc:DescribeVpcs",
                        "vpc:DescribeVSwitches",
                        "oss:ListBuckets",
                        "dlf:DescribeRegions",
                        "dlf:GetRegionStatus",
                        "dlf:ListCatalogs"
                    ],
                    "Resource": "*",
                    "Effect": "Allow"
                },
                {
                    "Action": "ram:PassRole",
                    "Resource": "*",
                    "Effect": "Allow",
                    "Condition": {
                        "StringEquals": {
                            "acs:Service": "emr.aliyuncs.com"
                        }
                    }
                },
                {
                    "Action": "quotas:ListProductQuotas",
                    "Resource": "acs:quotas:*:*:quota/ecs/*",
                    "Effect": "Allow"
                },
                {
                    "Action": "kms:DescribeAccountKmsStatus",
                    "Resource": "*",
                    "Effect": "Allow"
                }
            ]
        }
      • 策略三:自訂策略(EmrOnAckPolicyV2)

        {
            "Version": "1",
            "Statement": [
                {
                    "Action": [
                        "ram:*"
                    ],
                    "Resource": [
                        "acs:ram:*:*:domain/*",
                        "acs:ram:*:*:application/*"
                    ],
                    "Effect": "Allow"
                }
            ]
        }
      說明

      建立好以上角色及策略後,即可正常使用EMR on ACK。