

翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。

# EMR Serverless のサービスリンクロールの使用
<a name="using-service-linked-roles"></a>

Amazon EMR Serverless は AWS Identity and Access Management (IAM)[ サービスにリンクされたロール](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_terms-and-concepts.html#iam-term-service-linked-role)を使用します。サービスリンクロールは、EMR Serverless に直接リンクされた一意のタイプの IAM ロールです。サービスにリンクされたロールは EMR Serverless によって事前定義されており、サービスがユーザーに代わって他の AWS サービスを呼び出すために必要なすべてのアクセス許可が含まれています。

サービスリンクロールを使用すると、必要なアクセス権限を手動で追加する必要がなくなるため、EMR Serverless の設定が簡単になります。EMR Serverless は、サービスリンクロールのアクセス権限を定義します。特に定義されている場合を除き、EMR Serverless のみがそのロールを引き受けることができます。定義される許可は信頼ポリシーと許可ポリシーに含まれており、その許可ポリシーを他の IAM エンティティにアタッチすることはできません。

サービスリンクロールを削除するには、最初に関連リソースを削除する必要があります。これにより、不注意でリソースにアクセスするアクセス許可の削除が防止され、EMR Serverless リソースは保護されます。

サービスにリンクされたロールをサポートする他のサービスについては、「[IAM と連動するAWS のサービス](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_aws-services-that-work-with-iam.html)」を参照し、**[サービスにリンクされたロール]** の列内で **[はい]** と表記されたサービスを確認してください。サービスリンクロールに関するドキュメントをサービスにアクセスするには、リンクで **[はい]** を選択します。

## EMR Serverless のサービスリンクロールのアクセス許可
<a name="slr-permissions"></a>

EMR Serverless は、**AWSServiceRoleForAmazonEMRServerless** という名前のサービスにリンクされたロールを使用して、ユーザーに代わって AWS APIsを呼び出すことを可能にします。

AWSServiceRoleForAmazonEMRServerless サービスリンクロールは、次のサービスを信頼してロールを引き受けます。
+ `ops.emr-serverless.amazonaws.com`

`AmazonEMRServerlessServiceRolePolicy` という名前のロール許可ポリシーによって、EMR Serverless が次のアクションを指定されたリソースで完了できるようになります。

**注記**  
マネージドポリシーの内容は変わるため、ここに示すポリシーは古くなっている可能性があります。 AWS マネジメントコンソールで、最新のポリシー [AmazonEMRServerlessServiceRolePolicy](https://console.aws.amazon.com/iam/home#policies/arn:aws:iam::aws:policy/AmazonEMRServerlessServiceRolePolicy) を確認してください。
+ アクション: `ec2:CreateNetworkInterface`
+ アクション: `ec2:DeleteNetworkInterface`
+ アクション: `ec2:DescribeNetworkInterfaces`
+ アクション: `ec2:DescribeSecurityGroups`
+ アクション: `ec2:DescribeSubnets`
+ アクション: `ec2:DescribeVpcs`
+ アクション: `ec2:DescribeDhcpOptions`
+ アクション: `ec2:DescribeRouteTables`
+ アクション: `cloudwatch:PutMetricData`

以下は `AmazonEMRServerlessServiceRolePolicy` ポリシー全体です。

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

****  

```
{
  "Version":"2012-10-17",		 	 	 
  "Statement": [
    {
      "Sid": "EC2PolicyStatement",
      "Effect": "Allow",
      "Action": [
        "ec2:CreateNetworkInterface",
        "ec2:DeleteNetworkInterface",
        "ec2:DescribeNetworkInterfaces",
        "ec2:DescribeSecurityGroups",
        "ec2:DescribeSubnets",
        "ec2:DescribeVpcs",
        "ec2:DescribeDhcpOptions",
        "ec2:DescribeRouteTables"
      ],
      "Resource": [
        "*"
      ]
    },
    {
      "Sid": "CloudWatchPolicyStatement",
      "Effect": "Allow",
      "Action": [
        "cloudwatch:PutMetricData"
      ],
      "Resource": [
        "*"
      ],
      "Condition": {
        "StringEquals": {
          "cloudwatch:namespace": [
            "AWS/EMRServerless",
            "AWS/Usage"
          ]
        }
      }
    }
  ]
}
```

------

EMR Serverless プリンシパルがこのロールを引き受けることを許可するには、このロールに以下の信頼ポリシーをアタッチします。

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

****  

```
{
  "Version":"2012-10-17",		 	 	 
  "Statement": [
    {
      "Effect": "Allow",
      "Action": [
        "sts:AssumeRole"
      ],
      "Resource": "arn:aws:iam::123456789012:role/aws-service-role/emr-serverless.amazonaws.com/AWSServiceRoleForEMRServerless",
      "Sid": "AllowSTSAssumerole"
    }
  ]
}
```

------

サービスリンクロールの作成、編集、削除を IAM エンティティ (ユーザー、グループ、ロールなど) に許可するにはアクセス許可を設定する必要があります。詳細については「*IAM ユーザーガイド*」の「[サービスにリンクされたロールの作成](https://docs.aws.amazon.com/IAM/latest/UserGuide/using-service-linked-roles.html#service-linked-role-permissions)」を参照してください。

## EMR Serverless のサービスリンクロールの作成
<a name="create-slr"></a>

サービスリンクロールを手動で作成する必要はありません。(EMR Studio AWS マネジメントコンソール を使用して) AWS CLI、、または API で新しい EMR Serverless アプリケーションを作成すると AWS 、EMR Serverless によってサービスにリンクされたロールが作成されます。サービスリンクロールの作成、編集、削除を IAM エンティティ (ユーザー、グループ、ロールなど) に許可するにはアクセス許可を設定する必要があります。

**IAM を使用して AWSServiceRoleForAmazonEMRServerless サービスリンクロールを作成するには**

サービスリンクロールを作成する必要のある IAM エンティティのアクセス権限ポリシーに、次のステートメントを追加します。

```
{
    "Effect": "Allow",
    "Action": [
        "iam:CreateServiceLinkedRole"
    ],
    "Resource": "arn:aws:iam::*:role/aws-service-role/ops.emr-serverless.amazonaws.com/AWSServiceRoleForAmazonEMRServerless*",
    "Condition": {"StringLike": {"iam:AWSServiceName": "ops.emr-serverless.amazonaws.com"}}
}
```

このサービスリンクロールを削除した後で再度作成する必要が生じた場合は同じ方法でアカウントにロールを再作成します。新しい EMR Serverless アプリケーションを作成すると、EMR Serverless はサービスリンクロールを再度作成します。

**EMR Serverless** のユースケースでサービスリンクロールを作成する場合も、IAM コンソールを使用できます。 AWS CLI または AWS API で、サービス名を使用して`ops.emr-serverless.amazonaws.com`サービスにリンクされたロールを作成します。詳細については、「*IAM ユーザーガイド*」の「[サービスにリンクされたロールの作成](https://docs.aws.amazon.com/IAM/latest/UserGuide/using-service-linked-roles.html#create-service-linked-role)」を参照してください。このサービスリンクロールを削除しても、同じ方法でロールを再作成できます。

## EMR Serverless のサービスリンクロールの編集
<a name="edit-slr"></a>

EMR Serverless では、AWSServiceRoleForAmazonEMRServerless サービスリンクロールを編集できません。さまざまなエンティティがロールを参照している可能性があるためです。EMR Serverless サービスにリンクされたロールが使用する AWS所有の IAM ポリシーは、EMR Serverless に必要なすべてのアクセス許可が含まれているため、編集できません。ただし、IAM を使用してロールの説明を編集することはできます。

**AWSServiceRoleForAmazonEMRServerless サービスリンクロールの説明を IAM を使用して編集するには**

サービスにリンクされたロールの説明を編集する必要のある IAM エンティティの許可ポリシーに次のステートメントを追加します。

```
{
    "Effect": "Allow",
    "Action": [
        "iam: UpdateRoleDescription"
    ],
    "Resource": "arn:aws:iam::*:role/aws-service-role/ops.emr-serverless.amazonaws.com/AWSServiceRoleForAmazonEMRServerless*",
    "Condition": {"StringLike": {"iam:AWSServiceName": "ops.emr-serverless.amazonaws.com"}}
}
```

詳細については「*IAM ユーザーガイド*」の「[Editing a service-linked role](https://docs.aws.amazon.com/IAM/latest/UserGuide/using-service-linked-roles.html#edit-service-linked-role)」を参照してください。

## EMR Serverless のサービスリンクロールの削除
<a name="delete-slr"></a>

サービスリンクロールを必要とする機能やサービスが不要になった場合は、ロールを削除することを提案します。これは、モニタリングや保守が積極的に行われていない未使用のエンティティを排除するためです。ただし、サービスリンクロールを削除する前に、すべてのリージョンのすべての EMR Serverless アプリケーションを削除します。

**注記**  
ロールに関連するリソースを削除しようとする際に、EMR Serverless のサービスでロールが使用されていると、削除に失敗することがあります。失敗した場合は数分待ってから操作を再試行してください。

**IAM を使用して AWSServiceRoleForAmazonEMRServerless サービスリンクロールを削除するには**

サービスリンクロールを削除する必要のある IAM エンティティのアクセス権限ポリシーに、次のステートメントを追加します。

```
{
    "Effect": "Allow",
    "Action": [
        "iam:DeleteServiceLinkedRole",
        "iam:GetServiceLinkedRoleDeletionStatus"
    ],
    "Resource": "arn:aws:iam::*:role/aws-service-role/ops.emr-serverless.amazonaws.com/AWSServiceRoleForAmazonEMRServerless*",
    "Condition": {"StringLike": {"iam:AWSServiceName": "ops.emr-serverless.amazonaws.com"}}
}
```

**サービスリンクロールを IAM で手動削除するには**

IAM コンソール、 AWS CLI、または AWS API を使用して、AWSServiceRoleForAmazonEMRServerless サービスにリンクされたロールを削除します。詳細については、「*IAM ユーザーガイド*」の「[Deleting a service-linked role](https://docs.aws.amazon.com/IAM/latest/UserGuide/using-service-linked-roles.html#delete-service-linked-role)」を参照してください。

## EMR Serverless のサービスリンクロールをサポートするリージョン
<a name="slr-regions"></a>

EMR Serverless は、このサービスが利用可できるすべてのリージョンで、サービスリンクロールの使用をサポートします。詳細については、[「AWS サービスエンドポイント](https://docs.aws.amazon.com/general/latest/gr/rande.html)」を参照してください。