

本文為英文版的機器翻譯版本，如內容有任何歧義或不一致之處，概以英文版為準。

# Apache Ranger 的 IAM 角色
<a name="emr-ranger-iam-ranger"></a>

此角色為可信執行引擎 (例如 Apache Hive 和 Amazon EMR Record Server) 提供憑證，以存取 Amazon S3 資料。如果您使用的是 S3 SSE-KMS，則僅使用此角色來存取 Amazon S3 資料，包括任何 KMS 金鑰。

必須使用下列範例中所述的最低政策來建立此角色。

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

****  

```
{
  "Version":"2012-10-17",		 	 	 
  "Statement": [
    {
      "Sid": "CloudwatchLogsPermissions",
      "Action": [
        "logs:CreateLogGroup",
        "logs:CreateLogStream",
        "logs:PutLogEvents"
      ],
      "Effect": "Allow",
      "Resource": [
        "arn:aws:logs:*:123456789012:log-group:CLOUDWATCH_LOG_GROUP_NAME_IN_SECURITY_CONFIGURATION:*"
      ]
    },
    {
      "Sid": "BucketPermissionsInS3Buckets",
      "Action": [
        "s3:CreateBucket",
        "s3:DeleteBucket",
        "s3:ListAllMyBuckets",
        "s3:ListBucket"
      ],
      "Effect": "Allow",
      "Resource": [
        "arn:aws:s3:::amzn-s3-demo-bucket1",
        "arn:aws:s3:::amzn-s3-demo-bucket2"
      ]
    },
    {
      "Sid": "ObjectPermissionsInS3Objects",
      "Action": [
        "s3:GetObject",
        "s3:DeleteObject",
        "s3:PutObject"
      ],
      "Effect": "Allow",
      "Resource": [
        "arn:aws:s3:::amzn-s3-demo-bucket1/*",
        "arn:aws:s3:::amzn-s3-demo-bucket2/*"
      ]
    }
  ]
}
```

------

**重要**  
必須包含 CloudWatch 日誌資源結尾的星號 "\*"，以提供寫入日誌串流的許可。

**注意**  
如果您使用 EMRFS 一致性檢視或 S3-SSE 加密，請向 DynamoDB 資料表和 KMS 金鑰新增許可，以便執行引擎可以與這些引擎互動。

Apache Ranger 的 IAM 角色由 EC2 執行個體設定檔角色擔任。使用下列範例建立信任政策，以允許 EC2 執行個體設定檔角色擔任 Apache Ranger 的 IAM 角色。

```
    {
      "Sid": "",
      "Effect": "Allow",
      "Principal": {
        "AWS": "arn:aws:iam::{{<AWS_ACCOUNT_ID>}}:role/{{<EC2 INSTANCE PROFILE ROLE NAME eg. EMR_EC2_DefaultRole>}}"
      },
      "Action": "sts:AssumeRole"
    }
```