

本文属于机器翻译版本。若本译文内容与英语原文存在差异，则一律以英文原文为准。

# Amazon EMR 托管式策略
托管式策略

授予对所需 Amazon EMR 操作的完全访问权限或只读访问权限的最简单方式是使用适用于 Amazon EMR 的 IAM 托管式策略。托管式策略提供了在权限要求发生更改时自动更新的好处。如果您使用内联策略，则可能出现导致权限错误的服务更改。

Amazon EMR 将弃用现有托管式策略（v1 策略）以支持新的托管策略（v2 策略）。新的托管策略已经缩小了范围，以符合 Amazon 最佳实践。弃用现有 v1 托管式策略之后，您将无法将这些策略附加到任何新的 IAM 角色或用户。现有角色和使用弃用策略的用户可以继续使用它们。v2 托管式策略使用标签限制访问。它们仅允许指定的 Amazon EMR 操作，并需要使用 EMR 特定密钥标记的集群资源。我们建议您在使用新的 v2 策略之前仔细阅读文档。

在 IAM 控制台的**策略**列表中，v1 策略将被标记为已弃用，并在其旁边显示一个警告图标。已弃用的策略具有以下特征：
+ 该策略继续为所有当前附加的用户、组和角色工作。什么都不会中断。
+ 该策略不能附加到任何新的用户、组或角色。该策略若与当前实体分离,则不能重新附加。
+ 从所有当前实体分离 v1 策略后，该策略将不再可见且无法再使用。

下表总结了当前策略 (v1) 与 v2 策略之间的更改。


**Amazon EMR 托管策略更改**  

| 策略类型 | 策略名称 | 策略目的 | 对 v2 策略的更改 | 
| --- | --- | --- | --- | 
|  默认 EMR 服务角色和附加的托管式策略  |   角色名称：**EMR\$1 DefaultRole** V1 策略（待弃用）：（**AmazonElasticMapReduceRole**EMR 服务角色）  v2（缩小范围）策略名称：[`AmazonEMRServicePolicy_v2`](emr-iam-role.md)  |  允许 Amazon EMR 在配置资源和执行 Amazon 服务级别操作时代表您调用其他服务。所有集群都需要该角色。  |  策略添加了新的权限 `"ec2:DescribeInstanceTypeOfferings"`。此 API 操作返回给定可用区列表支持的实例类型列表。  | 
|  IAM 托管策略，允许附加的用户、角色或组完全访问 Amazon EMR  |   V2（范围）策略名称：[`AmazonEMRServicePolicy_v2`](emr-managed-policy-fullaccess-v2.md)  |  允许用户执行 EMR 操作的完全权限。包括 ia PassRole m：资源权限。  |  策略添加了一个先决条件，即用户必须将用户标记添加到资源，然后才能使用此策略。请参阅[标记资源以使用托管式策略](#manually-tagged-resources)。 iam: PassRole 操作需要将 ia PassedToService m: 条件设置为指定服务。默认情况下，不允许访问 Amazon EC2、Amazon S3 和其它服务。请参阅[用于完全访问的 IAM 托管式策略（v2 托管默认策略）](emr-managed-policy-fullaccess-v2.md)。  | 
|  IAM 托管式策略，用于通过附加的用户、角色或组只读访问 EMR  |  V1 策略（将被弃用）：[`AmazonElasticMapReduceReadOnlyAccess`](emr-managed-policy-readonly.md)  V2（范围）策略名称：[`AmazonEMRReadOnlyAccessPolicy_v2`](emr-managed-policy-readonly-v2.md)  |  允许用户执行 Amazon EMR 操作的只读权限。  |  权限只允许指定的 elasticmapreduce 只读操作。默认情况下，不允许访问 Amazon S3。请参阅[用于只读访问的 IAM 托管式策略（v2 托管默认策略）](emr-managed-policy-readonly-v2.md)。  | 
|  默认 EMR 服务角色和附加的托管式策略  |   角色名称：**EMR\$1 DefaultRole** V1 策略（待弃用）：（**AmazonElasticMapReduceRole**EMR 服务角色）  v2（缩小范围）策略名称：[`AmazonEMRServicePolicy_v2`](emr-iam-role.md)  |  允许 Amazon EMR 在配置资源和执行 Amazon 服务级别操作时代表您调用其他服务。所有集群都需要该角色。  |  v2 服务角色和 v2 默认策略将替换已弃用的角色和策略。策略添加了一个先决条件，即用户必须将用户标记添加到资源，然后才能使用此策略。请参阅 [标记资源以使用托管式策略](#manually-tagged-resources)。请参阅 [Amazon EMR 的服务角色（EMR 角色）](emr-iam-role.md)。  | 
|  集群 EC2 实例（EC2 实例配置文件）的服务角色  |  角色名称：**EMR\$1 \$1 EC2 DefaultRole** **已弃用的策略名称：角色 AmazonElasticMapReducefor EC2**  |  允许在 EMR 集群上运行的应用程序访问其它 Amazon 资源，例如 Amazon S3。如果您运行处理来自 Amazon S3 的数据的 Apache Spark 任务，则策略需要允许访问此类资源。  |  默认角色和默认策略都将逐渐被弃用。没有替代的 Amazon 默认托管角色或策略。您需要提供基于资源或基于身份的策略。这意味着，默认情况下，在 EMR 集群上运行的应用程序无权访问 Amazon S3 或其它资源，除非您手动将其添加到策略中。请参阅[默认角色和托管式策略](emr-iam-role-for-ec2.md#emr-ec2-role-default)。  | 
|  其它 EC2 服务角色策略  |  当前政策名称：**AmazonElasticMapReduceforAutoScalingRole、 AmazonElasticMapReduceEditorsRole、Amazon EMRCleanup 政策**  |  如果使用自动扩缩、Notebook 或清理 EC2 资源，则需提供 Amazon EMR 访问其他 Amazon 资源和执行操作所需的权限。  |  对 v2 没有更改。  | 

## 保护 iam：PassRole
安全 iam：PassRole

Amazon EMR 完全权限默认托管策略包含 `iam:PassRole` 安全配置，包括以下内容：
+ `iam:PassRole` 权限仅适用于特定默认 Amazon EMR 角色。
+ `iam:PassedToService`允许您仅将策略用于指定 Amazon 服务（例如`elasticmapreduce.amazonaws.com`和）的条件`ec2.amazonaws.com`。

您可以在 IAM 控制台中查看 [Amazon EMRFull AccessPolicy \$1v2 和 Amazon P EMRService olicy\$1v2](https://console.amazonaws.cn/iam/home#policies/arn:aws:iam::aws:policy/service-role/AmazonEMRFullAccessPolicy_v2) [策略](https://console.amazonaws.cn/iam/home#policies/arn:aws:iam::aws:policy/service-role/AmazonEMRServicePolicy_v2)的 JSON 版本。建议您使用 v2 托管式策略创建新的集群。

要创建自定义策略，建议您从托管式策略开始，然后根据您的需求编辑这些策略。

有关如何将策略附加到用户（主体）的信息，请参阅《IAM 用户指南》**中的[通过 Amazon Web Services 管理控制台使用托管式策略](https://docs.amazonaws.cn/IAM/latest/UserGuide/access_policies_managed-using.html#policies_using-managed-console)。

## 标记资源以使用托管式策略
标记资源以使用托管策略

**Amazon P EMRService olicy\$1v2 和** **Amazon EMRFull AccessPolicy \$1v2** 取决于对亚马逊 EMR 配置或使用的资源的限定访问权限。缩小范围是通过限制对那些具有预定义用户标签关联的资源的访问权限来实现的。当您使用这两个策略中的任何一个时，您必须在配置集群时传递预定义的用户标签 `for-use-with-amazon-emr-managed-policies = true`。然后，Amazon EMR 将自动传播该标签。此外，您必须将用户标签添加到以下部分中列出的资源。如果您使用 Amazon EMR 控制台启动集群，请参阅 [使用 Amazon EMR 控制台启动具有 v2 托管式策略的集群的注意事项](#emr-cluster-v2policy-awsconsole-launch)。

若要使用托管策略，在使用 CLI、SDK 或其他方法配置集群时传递用户标签 `for-use-with-amazon-emr-managed-policies = true`。

当您传递标签时，Amazon EMR 会将标签传播到它创建的私有子网 ENI、EC2 实例和 EBS 卷。Amazon EMR 还会自动为其创建的安全组添加标签。但是，如果您希望 Amazon EMR 与特定安全组一起启动，则必须对其进行标记。对于非 Amazon EMR 创建的资源，您必须向这些资源添加标签。例如，您必须标记 Amazon EC2 子网、EC2 安全组（如果不是由 Amazon EMR 创建的） VPCs 和（如果您希望 Amazon EMR 创建安全组）。要启动中包含 v2 托管策略的集群 VPCs，必须使用预定义 VPCs 的用户标签来标记这些集群。请参阅 [使用 Amazon EMR 控制台启动具有 v2 托管式策略的集群的注意事项](#emr-cluster-v2policy-awsconsole-launch)。

**传播用户指定的标记**  
Amazon EMR 使用您在创建集群时指定的 Amazon EMR 标签来标记其创建的资源。Amazon EMR 将标签应用于它在集群生命周期内创建的资源。

Amazon EMR 传播以下资源的用户标签：
+ 私有子网 ENI（服务访问弹性网络接口）
+ EC2 实例
+ EBS 卷
+ EC2 启动模板

**自动标记的安全组**  
Amazon EMR 使用 Amazon EMR 的 v2 托管式策略所需的标签 `for-use-with-amazon-emr-managed-policies` 标记它创建的 EC2 安全组，而无论您在创建集群命令中指定哪些标签。对于在引入 v2 托管式策略之前创建的安全组，Amazon EMR 不会自动标记。如果要对账户中已存在的默认安全组使用 v2 托管式策略，则需要使用 `for-use-with-amazon-emr-managed-policies = true` 手动标记安全组。

**手动标记的集群资源**  
您必须手动标记一些集群资源，以便 Amazon EMR 默认角色可以访问。
+ 您必须使用 Amazon EMR 托管式策略标签 `for-use-with-amazon-emr-managed-policies` 手动标记 EC2 安全组和 EC2 子网。
+ 如果您希望 Amazon EMR 创建默认安全组，则必须手动标记 VPC。如果默认安全组不存在，EMR 将尝试使用特定标记创建安全组。

Amazon EMR 会自动为以下资源添加标签：
+ EMR 创建的 EC2 安全组

您必须手动为以下资源添加标签：
+ EC2 子网
+ EC2 安全组

（可选）您可以手动为以下资源添加标签：
+ VPC：仅当您希望 Amazon EMR 创建安全组时

## 使用 Amazon EMR 控制台启动具有 v2 托管式策略的集群的注意事项
使用 v2 策略启动集群

您可以使用 Amazon EMR 控制台预置具有 v2 托管式策略的集群。以下是您使用控制台启动 Amazon EMR 集群时的一些注意事项。
+ 您不需要传递预定义标签。Amazon EMR 会自动添加标签并将其传播到恰当组件。
+ 对于需要手动标记的组件，如果您具有标记资源所需的权限，Amazon EMR 旧控制台会尝试自动标记这些组件。如果您没有标记资源的权限，或者想要使用控制台，请让管理员标记这些资源。
+ 除非满足所有先决条件，否则无法启动具有 v2 托管式策略的集群。
+ Amazon EMR 旧控制台向您显示哪些资源（VPC/子网）需要标记。

# 完全访问 Amazon EMR 的 IAM 托管策略（v2 托管默认策略）
完全访问（范围为 v2）

v2 范围 EMR 默认托管式策略向用户授予特定访问权限。它们需要预定义的 Amazon EMR 资源标签和 Amazon EMR 使用的资源的 `iam:PassRole` 条件键，例如用于启动集群的 `Subnet` 和 `SecurityGroup`。

要为 Amazon EMR 授予对必需操作的权限，可附加 `AmazonEMRFullAccessPolicy_v2` 托管式策略。此更新的默认托管式策略将替换 [`AmazonElasticMapReduceFullAccess`](emr-managed-policy-fullaccess.md) 托管式策略。

`AmazonEMRFullAccessPolicy_v2` 取决于对 Amazon EMR 预置或使用的资源的范围缩小访问权限。使用此策略时，您需要在预置集群时传递用户标签 `for-use-with-amazon-emr-managed-policies = true`。Amazon EMR 将自动传播标签。此外，您可能需要手动向特定类型的资源添加用户标签，例如不是由 Amazon EMR 创建的 EC2 安全组。有关更多信息，请参阅 [标记资源以使用托管式策略](emr-managed-iam-policies.md#manually-tagged-resources)。

[https://console.amazonaws.cn/iam/home#policies/arn:aws:iam::aws:policy/AmazonEMRFullAccessPolicy_v2](https://console.amazonaws.cn/iam/home#policies/arn:aws:iam::aws:policy/AmazonEMRFullAccessPolicy_v2) 策略通过执行以下操作来保护资源：
+ 需要使用预定义的 Amazon EMR 托管式策略标签 `for-use-with-amazon-emr-managed-policies` 标记资源，以便创建集群和访问 Amazon EMR。
+ 将 `iam:PassRole` 操作限制为特定的默认角色和对特定服务的 `iam:PassedToService` 访问权限。
+ 默认情况下，不再提供对 Amazon EC2、Amazon S3 和其它服务的访问权限。

本策略的内容如下所示。

**注意**  
您还可以使用控制台链接 [https://console.amazonaws.cn/iam/home#policies/arn:aws:iam::aws:policy/AmazonEMRFullAccessPolicy_v2](https://console.amazonaws.cn/iam/home#policies/arn:aws:iam::aws:policy/AmazonEMRFullAccessPolicy_v2) 查看该策略。

------
#### [ JSON ]

****  

```
{
  "Version":"2012-10-17",		 	 	 
  "Statement": [
    {
      "Sid": "RunJobFlowExplicitlyWithEMRManagedTag",
      "Effect": "Allow",
      "Action": [
        "elasticmapreduce:RunJobFlow"
      ],
      "Resource": [
        "*"
      ],
      "Condition": {
        "StringEquals": {
          "aws:RequestTag/for-use-with-amazon-emr-managed-policies": "true"
        }
      }
    },
    {
      "Sid": "ElasticMapReduceActions",
      "Effect": "Allow",
      "Action": [
        "elasticmapreduce:AddInstanceFleet",
        "elasticmapreduce:AddInstanceGroups",
        "elasticmapreduce:AddJobFlowSteps",
        "elasticmapreduce:AddTags",
        "elasticmapreduce:CancelSteps",
        "elasticmapreduce:CreateEditor",
        "elasticmapreduce:CreatePersistentAppUI",
        "elasticmapreduce:CreateSecurityConfiguration",
        "elasticmapreduce:DeleteEditor",
        "elasticmapreduce:DeleteSecurityConfiguration",
        "elasticmapreduce:DescribeCluster",
        "elasticmapreduce:DescribeEditor",
        "elasticmapreduce:DescribeJobFlows",
        "elasticmapreduce:DescribePersistentAppUI",
        "elasticmapreduce:DescribeSecurityConfiguration",
        "elasticmapreduce:DescribeStep",
        "elasticmapreduce:DescribeReleaseLabel",
        "elasticmapreduce:GetBlockPublicAccessConfiguration",
        "elasticmapreduce:GetManagedScalingPolicy",
        "elasticmapreduce:GetPersistentAppUIPresignedURL",
        "elasticmapreduce:GetAutoTerminationPolicy",
        "elasticmapreduce:ListBootstrapActions",
        "elasticmapreduce:ListClusters",
        "elasticmapreduce:ListEditors",
        "elasticmapreduce:ListInstanceFleets",
        "elasticmapreduce:ListInstanceGroups",
        "elasticmapreduce:ListInstances",
        "elasticmapreduce:ListSecurityConfigurations",
        "elasticmapreduce:ListSteps",
        "elasticmapreduce:ListSupportedInstanceTypes",
        "elasticmapreduce:ModifyCluster",
        "elasticmapreduce:ModifyInstanceFleet",
        "elasticmapreduce:ModifyInstanceGroups",
        "elasticmapreduce:OpenEditorInConsole",
        "elasticmapreduce:PutAutoScalingPolicy",
        "elasticmapreduce:PutBlockPublicAccessConfiguration",
        "elasticmapreduce:PutManagedScalingPolicy",
        "elasticmapreduce:RemoveAutoScalingPolicy",
        "elasticmapreduce:RemoveManagedScalingPolicy",
        "elasticmapreduce:RemoveTags",
        "elasticmapreduce:SetTerminationProtection",
        "elasticmapreduce:StartEditor",
        "elasticmapreduce:StopEditor",
        "elasticmapreduce:TerminateJobFlows",
        "elasticmapreduce:ViewEventsFromAllClustersInConsole"
      ],
      "Resource": [
        "*"
      ]
    },
    {
      "Sid": "ViewMetricsInEMRConsole",
      "Effect": "Allow",
      "Action": [
        "cloudwatch:GetMetricStatistics"
      ],
      "Resource": [
        "*"
      ]
    },
    {
      "Sid": "PassRoleForElasticMapReduce",
      "Effect": "Allow",
      "Action": [
        "iam:PassRole"
      ],
      "Resource": [
        "arn:aws:iam::*:role/EMR_DefaultRole",
        "arn:aws:iam::*:role/EMR_DefaultRole_V2"
      ],
      "Condition": {
        "StringLike": {
          "iam:PassedToService": "elasticmapreduce.amazonaws.com*"
        }
      }
    },
    {
      "Sid": "PassRoleForEC2",
      "Effect": "Allow",
      "Action": [
        "iam:PassRole"
      ],
      "Resource": [
        "arn:aws:iam::*:role/EMR_EC2_DefaultRole"
      ],
      "Condition": {
        "StringLike": {
          "iam:PassedToService": "ec2.amazonaws.com*"
        }
      }
    },
    {
      "Sid": "PassRoleForAutoScaling",
      "Effect": "Allow",
      "Action": [
        "iam:PassRole"
      ],
      "Resource": [
        "arn:aws:iam::*:role/EMR_AutoScaling_DefaultRole"
      ],
      "Condition": {
        "StringLike": {
          "iam:PassedToService": "application-autoscaling.amazonaws.com*"
        }
      }
    },
    {
      "Sid": "ElasticMapReduceServiceLinkedRole",
      "Effect": "Allow",
      "Action": [
        "iam:CreateServiceLinkedRole"
      ],
      "Resource": [
        "arn:aws:iam::*:role/aws-service-role/elasticmapreduce.amazonaws.com*/AWSServiceRoleForEMRCleanup*"
      ],
      "Condition": {
        "StringEquals": {
          "iam:AWSServiceName": [
            "elasticmapreduce.amazonaws.com",
            "elasticmapreduce.amazonaws.com.cn"
          ]
        }
      }
    },
    {
      "Sid": "ConsoleUIActions",
      "Effect": "Allow",
      "Action": [
        "ec2:DescribeAccountAttributes",
        "ec2:DescribeAvailabilityZones",
        "ec2:DescribeImages",
        "ec2:DescribeKeyPairs",
        "ec2:DescribeNatGateways",
        "ec2:DescribeRouteTables",
        "ec2:DescribeSecurityGroups",
        "ec2:DescribeSubnets",
        "ec2:DescribeVpcs",
        "ec2:DescribeVpcEndpoints",
        "s3:ListAllMyBuckets",
        "iam:ListRoles"
      ],
      "Resource": [
        "*"
      ]
    }
  ]
}
```

------

# 用于完全访问的 IAM 托管式策略（即将弃用）
完全访问权限（即将弃用）

`AmazonElasticMapReduceFullAccess`和 `AmazonEMRFullAccessPolicy_v2` Amazon Identity and Access Management (IAM) 托管策略授予 Amazon EMR 和其他服务所需的所有操作。

**重要**  
`AmazonElasticMapReduceFullAccess` 托管式策略即将弃用，因此不再建议与 Amazon EMR 结合使用。请改用[`AmazonEMRFullAccessPolicy_v2`](emr-managed-policy-fullaccess-v2.md)。当 IAM 服务最终弃用 v1 策略时，您将无法将其附加到角色。但是，您可以将现有角色附加到集群，即使该角色使用已弃用的策略。

Amazon EMR 完全权限默认托管策略包含 `iam:PassRole` 安全配置，包括以下内容：
+ `iam:PassRole` 权限仅适用于特定默认 Amazon EMR 角色。
+ `iam:PassedToService`允许您仅将策略用于指定 Amazon 服务（例如`elasticmapreduce.amazonaws.com`和）的条件`ec2.amazonaws.com`。

您可以在 IAM 控制台中查看 [Amazon EMRFull AccessPolicy \$1v2 和 Amazon P EMRService olicy\$1v2](https://console.amazonaws.cn/iam/home#policies/arn:aws:iam::aws:policy/service-role/AmazonEMRFullAccessPolicy_v2) [策略](https://console.amazonaws.cn/iam/home#policies/arn:aws:iam::aws:policy/service-role/AmazonEMRServicePolicy_v2)的 JSON 版本。建议您使用 v2 托管式策略创建新的集群。

您可以在中查看已弃用的 v1 策略的 Amazon Web Services 管理控制台 内容。[https://console.amazonaws.cn/iam/home#policies/arn:aws:iam::aws:policy/AmazonElasticMapReduceFullAccess](https://console.amazonaws.cn/iam/home#policies/arn:aws:iam::aws:policy/AmazonElasticMapReduceFullAccess)该策略中的 `ec2:TerminateInstances` 操作授予用户或角色终止与 IAM 账户关联的任何 Amazon EC2 实例的权限。这包括不属于 EMR 集群的实例。

# 只读访问 Amazon EMR 的 IAM 托管策略（v2 托管默认策略）。
只读（v2 范围）

要向 Amazon EMR 授予只读权限，请附上 A **mazon EMRRead OnlyAccessPolicy \$1v** 2 托管策略。此默认托管式策略将替换 [`AmazonElasticMapReduceReadOnlyAccess`](emr-managed-policy-readonly.md) 托管式策略。下面的代码段显示了此策略声明的内容。与 `AmazonElasticMapReduceReadOnlyAccess` 策略相比，`AmazonEMRReadOnlyAccessPolicy_v2` 策略不使用 `elasticmapreduce` 元素的通配符。相反，默认的 v2 策略限定了允许的 `elasticmapreduce` 操作范围。

**注意**  
您也可以使用该 Amazon Web Services 管理控制台 [https://console.amazonaws.cn/iam/home#policies/arn:aws:iam::aws:policy/AmazonEMRReadOnlyAccessPolicy_v2](https://console.amazonaws.cn/iam/home#policies/arn:aws:iam::aws:policy/AmazonEMRReadOnlyAccessPolicy_v2)链接查看政策。

------
#### [ JSON ]

****  

```
{
  "Version":"2012-10-17",		 	 	 
  "Statement": [
    {
      "Sid": "ElasticMapReduceActions",
      "Effect": "Allow",
      "Action": [
        "elasticmapreduce:DescribeCluster",
        "elasticmapreduce:DescribeEditor",
        "elasticmapreduce:DescribeJobFlows",
        "elasticmapreduce:DescribeSecurityConfiguration",
        "elasticmapreduce:DescribeStep",
        "elasticmapreduce:DescribeReleaseLabel",
        "elasticmapreduce:GetBlockPublicAccessConfiguration",
        "elasticmapreduce:GetManagedScalingPolicy",
        "elasticmapreduce:GetAutoTerminationPolicy",
        "elasticmapreduce:ListBootstrapActions",
        "elasticmapreduce:ListClusters",
        "elasticmapreduce:ListEditors",
        "elasticmapreduce:ListInstanceFleets",
        "elasticmapreduce:ListInstanceGroups",
        "elasticmapreduce:ListInstances",
        "elasticmapreduce:ListSecurityConfigurations",
        "elasticmapreduce:ListSteps",
        "elasticmapreduce:ListSupportedInstanceTypes",
        "elasticmapreduce:ViewEventsFromAllClustersInConsole"
      ],
      "Resource": [
        "*"
      ]
    },
    {
      "Sid": "ViewMetricsInEMRConsole",
      "Effect": "Allow",
      "Action": [
        "cloudwatch:GetMetricStatistics"
      ],
      "Resource": [
        "*"
      ]
    }
  ]
}
```

------

# 用于只读访问的 IAM 托管式策略（即将弃用）
只读（即将弃用）

`AmazonElasticMapReduceReadOnlyAccess` 托管式策略即将弃用。启动新集群时，您无法附加此策略。[`AmazonElasticMapReduceReadOnlyAccess`](emr-managed-policy-readonly-v2.md) 已替换 `AmazonEMRReadOnlyAccessPolicy_v2` 作为 Amazon EMR 的默认托管式策略。下面的代码段显示了此策略声明的内容。`elasticmapreduce` 元素的通配符指定仅允许以指定字符串开头的操作。请记住，由于此策略不会明确拒绝操作，因此仍可使用其它策略声明来授予对指定操作的访问权限。

**注意**  
您也可以使用 Amazon Web Services 管理控制台 查看策略。

------
#### [ JSON ]

****  

```
{
  "Version":"2012-10-17",		 	 	 
  "Statement": [
    {
      "Effect": "Allow",
      "Action": [
        "elasticmapreduce:Describe*",
        "elasticmapreduce:List*",
        "elasticmapreduce:ViewEventsFromAllClustersInConsole",
        "s3:GetObject",
        "s3:ListAllMyBuckets",
        "s3:ListBucket",
        "sdb:Select",
        "cloudwatch:GetMetricStatistics"
      ],
      "Resource": [
        "*"
      ],
      "Sid": "AllowELASTICMAPREDUCEDescribe"
    }
  ]
}
```

------

# Amazon 托管策略： EMRDescribeClusterPolicyForEMRWAL
EMRDescribeClusterPolicyForEMRWAL

您不能将 `EMRDescribeClusterPolicyForEMRWAL` 附加到自己的 IAM 实体。此策略附加到服务相关角色，该角色允许 Amazon EMR 代表您执行操作。有关此服务相关角色的更多信息，请参阅 [将服务相关角色与 Amazon EMR 结合使用以预写日志记录](using-service-linked-roles-wal.md)。

此策略授予只读权限，允许 Amazon EMR 的 WAL 服务查找并返回集群的状态。有关 Amazon EMR WAL 的更多信息，请参阅 [Amazon EMR 的预写日志（WAL）](https://docs.amazonaws.cn/emr/latest/ReleaseGuide/emr-hbase-wal.html)。

**权限详细信息**

该策略包含以下权限：
+ `emr`：允许主体描述 Amazon EMR 中的集群状态。这样，Amazon EMR 才能确认集群何时终止，并在 30 天后清理集群留下的任何 WAL 日志。

------
#### [ JSON ]

****  

```
{
  "Version":"2012-10-17",		 	 	 
  "Statement": [
    {
      "Effect": "Allow",
      "Action": [
        "elasticmapreduce:DescribeCluster"
      ],
      "Resource": [
        "*"
      ],
      "Sid": "AllowELASTICMAPREDUCEDescribecluster"
    }
  ]
}
```

------

## Amazon 亚马逊 EMR 的托管政策
Amazon 托管策略

 Amazon 托管策略是由创建和管理的独立策略 Amazon。 Amazon 托管策略旨在为许多常见用例提供权限，以便您可以开始为用户、组和角色分配权限。

请记住， Amazon 托管策略可能不会为您的特定用例授予最低权限权限，因为它们可供所有 Amazon 客户使用。我们建议通过定义特定于使用案例的[客户管理型策略](https://docs.amazonaws.cn/IAM/latest/UserGuide/access_policies_managed-vs-inline.html#customer-managed-policies)来进一步减少权限。

您无法更改 Amazon 托管策略中定义的权限。如果 Amazon 更新 Amazon 托管策略中定义的权限，则更新会影响该策略所关联的所有委托人身份（用户、组和角色）。 Amazon 最有可能在启动新的 API 或现有服务可以使用新 Amazon Web Services 服务 的 API 操作时更新 Amazon 托管策略。

有关更多信息，请参阅《IAM 用户指南》**中的 [Amazon 托管式策略](https://docs.amazonaws.cn/IAM/latest/UserGuide/access_policies_managed-vs-inline.html#aws-managed-policies)。

# 亚马逊 EMR 更新了托管政策 Amazon
策略更新

查看自该服务开始跟踪这些更改以来对 Amazon EMR Amazon 托管政策的更新的详细信息。




| 更改 | 描述 | 日期 | 
| --- | --- | --- | 
| [`AmazonEMRServicePolicy_v2`](emr-iam-role.md)：对现有策略的更新 | 从 Amazon EMR 版本 7.5.0 开始，添加了所需的 ec2:CreateVpcEndpoint、ec2:ModifyVpcEndpoint 和 ec2:CreateTags 以获得最佳体验。 | 2025 年 3 月 4 日 | 
| [`AmazonEMRServicePolicy_v2`](emr-iam-role.md)：对现有策略的更新 | 添加了 elasticmapreduce:CreatePersistentAppUI、elasticmapreduce:DescribePersistentAppUI 和 elasticmapreduce:GetPersistentAppUIPresignedURL。 | 2025 年 2 月 28 日 | 
| [`EMRDescribeClusterPolicyForEMRWAL`](EMRDescribeClusterPolicyForEMRWAL.md)：新策略 | 添加了一项新策略，允许 Amazon EMR 在集群终止后 30 天确定 WAL 清理的集群状态。 | 2023 年 8 月 10 日 | 
| [`AmazonEMRFullAccessPolicy_v2`](emr-managed-policy-fullaccess-v2.md) 和 [`AmazonEMRReadOnlyAccessPolicy_v2`](emr-managed-policy-readonly-v2.md)：对现有策略的更新 | 添加了elasticmapreduce:DescribeReleaseLabel和elasticmapreduce:GetAutoTerminationPolicy。 | 2022 年 4 月 21 日 | 
| [`AmazonEMRFullAccessPolicy_v2`](emr-managed-policy-fullaccess-v2.md)：对现有策略的更新 | 为 [使用自定义 AMI 为 Amazon EMR 集群配置提供更大的灵活性](emr-custom-ami.md) 添加了 ec2:DescribeImages。 | 2022 年 2 月 15 日 | 
|  [**Amazon EMR 托管式策略**](emr-managed-iam-policies.md)  |  更新以明确预定义用户标签的使用情况。 添加了有关使用 Amazon 控制台启动具有 v2 托管策略的集群的部分。  | 2021 年 9 月 29 日 | 
|  [`AmazonEMRFullAccessPolicy_v2`](emr-managed-policy-fullaccess-v2.md)：对现有策略的更新  | 更改了 PassRoleForAutoScaling 和 PassRoleForEC2 操作，以使用 StringLike 条件运算符分别匹配 "iam:PassedToService":"application-autoscaling.amazonaws.com\$1" 和 "iam:PassedToService":"ec2.amazonaws.com\$1"。 | 2021 年 5 月 20 日 | 
|  [`AmazonEMRFullAccessPolicy_v2`](emr-managed-policy-fullaccess-v2.md)：对现有策略的更新  |  删除了无效操作 `s3:ListBuckets`，并将其替换为 `s3:ListAllMyBuckets` 操作。 更新了服务相关角色（SLR）创建方面的内容，以明确将范围缩小到 Amazon EMR 具有的唯一拥有明确服务委托人的 SLR。 SLRs 可以创建的与此更改之前完全相同。  | 2021 年 3 月 23 日 | 
|  [`AmazonEMRFullAccessPolicy_v2`](emr-managed-policy-fullaccess-v2.md)：新策略  |  Amazon EMR 添加了新权限来确定对资源的访问范围，并添加了一个先决条件，即用户必须先将预定义的用户标签添加到资源中，然后才能使用 Amazon EMR 托管式策略。 `iam:PassRole` 操作需要将 `iam:PassedToService` 条件设置为指定服务。默认情况下，不允许访问 Amazon EC2、Amazon S3 和其它服务。  | 2021 年 3 月 11 日 | 
| [`AmazonEMRServicePolicy_v2`](emr-iam-role.md)：新策略 |  添加了一个先决条件，即用户必须将用户标记添加到资源，然后才能使用此策略。  | 2021 年 3 月 11 日 | 
| [`AmazonEMRReadOnlyAccessPolicy_v2`](emr-managed-policy-readonly-v2.md)：新策略 |  权限只允许指定的 elasticmapreduce 只读操作。默认情况下，不允许访问 Amazon S3。  | 2021 年 3 月 11 日 | 
|  Amazon EMR 开始跟踪更改  |  Amazon EMR 开始跟踪其 Amazon 托管政策的变更。  | 2021 年 3 月 11 日 | 