Amazon EMR 管理ポリシー - Amazon EMR

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

Amazon EMR 管理ポリシー

必要な Amazon EMR アクションにフルアクセスまたは読み取り専用アクセスを付与する最も簡単な方法は、Amazon EMR の IAM 管理ポリシーを使用することです。管理ポリシーは、アクセス権限の条件が変更された場合に、自動的に更新されるというメリットを提供します。インラインポリシーを使用する場合は、サービスの変更によってアクセス許可エラーが発生する場合があります。

Amazon EMR は、新しい管理ポリシー (v2 ポリシー) を優先して、既存の管理ポリシー (v1 ポリシー) を廃止します。新しい管理ポリシーでは、AWS のベストプラクティスに合うように範囲が制限されています。既存の v1 管理ポリシーが廃止されると、これらのポリシーを新しい IAM ロールまたはユーザーにアタッチできなくなります。廃止されたポリシーを使用している既存のロールおよびユーザーは、それらを引き続き使用できます。v2 管理ポリシーは、タグを使用してアクセスを制限します。指定された Amazon EMR アクションのみが許可され、EMR 固有のキーでタグ付けされたクラスターリソースが必要です。新しい v2 ポリシーを使用する前に、ドキュメントを慎重に確認することをお勧めします。

v1 ポリシーには非推奨のマークが付けられ、IAM コンソールの [Policies] (ポリシー) リストの横に警告アイコンとともに表示されます。非推奨ポリシーには、次の特徴があります。

  • 現在アタッチされているすべてのユーザー、グループ、およびロールで引き続き機能します。中断される処理はありません。

  • 新しいユーザー、グループ、またはロールにアタッチすることはできません。現在のエンティティからポリシーのいずれかをデタッチした場合、再アタッチすることはできません。

  • 現在のすべてのエンティティから v1 ポリシーをデタッチすると、ポリシーは表示されなくなり、使用できなくなります。

次の表は、現在のポリシー (v1) ポリシーと v2 ポリシーの変更点をまとめたものです。

EMR 管理ポリシーの変更
ポリシータイプ ポリシー名 ポリシーの目的 v2 ポリシーへの変更

アタッチされたユーザー、ロール、またはグループによる完全な EMR アクセスのための IAM 管理ポリシー

V1 ポリシー (非推奨化予定): AmazonElasticMapReduceFullAccess

V2 (範囲制限) ポリシー名: AmazonEMRFullAccessPolicy_v2

EMR アクションに対する完全なアクセス許可をユーザーに許可します。iam:PassRole アクセス許可が含まれます。

ポリシーは、ユーザーがこのポリシーを使用する前にリソースにユーザータグを追加する必要があるという前提条件を追加します。管理ポリシーを使用するためにリソースにタグを付ける を参照してください。

iam:PassRole アクションでは、指定されたサービスに iam:PassedToService 条件を設定する必要があります。デフォルトでは、Amazon EC2、Amazon S3、およびその他のサービスへのアクセスは許可されていません。「フルアクセス用の IAM 管理ポリシー (v2 管理デフォルトポリシー)」を参照してください。

アタッチされたユーザー、ロール、またはグループによる読み取り専用アクセスのための IAM 管理ポリシー

V1 ポリシー (非推奨化予定): AmazonElasticMapReduceReadOnlyAccess

V2 (範囲制限) ポリシー名: AmazonEMRReadOnlyAccessPolicy_v2

Amazon EMR アクションに対する読み取り専用アクセス許可をユーザーに許可します。

アクセス許可によって、指定された elasticmapreduce の読み取り専用アクションのみが許可されます。Amazon S3 へのアクセスは、デフォルトではアクセスが許可されていません。「読み取り専用アクセス用の IAM 管理ポリシー (v2 管理デフォルトポリシー)」を参照してください。

デフォルトの EMR サービスロールとアタッチされた管理ポリシー

ロール名:EMR_DefaultRole

V1 ポリシー (非推奨化予定): AmazonElasticMapReduceRole(EMR サービスロール)

V2 (範囲制限) ポリシー名: AmazonEMRServicePolicy_v2

リソースをプロビジョニングしてサービスレベルのアクションを実行する際にユーザーに代わって AWS の他のサービスを呼び出すことを Amazon EMR に許可します。このロールは、すべてのクラスターに必須です。

v2 サービスロールと v2 デフォルトポリシーは、非推奨のロールとポリシーを置き換えます。このポリシーは、ユーザーがこのポリシーを使用する前にリソースにユーザータグを追加する必要があるという前提条件を追加します。「管理ポリシーを使用するためにリソースにタグを付ける」を参照してください 「Amazon EMR のサービスロール (EMR ロール)」を参照してください

クラスター EC2 インスタンスのサービスロール (EC2 インスタンスプロファイル)

V1 ポリシー (非推奨化予定): EMR_EC2_DefaultRole (インスタンスプロファイル)

廃止予定のポリシー名:AmazonElasticMapReduceforEC2Role

EMR クラスターで実行されているアプリケーションが、Amazon S3 などの他の AWS リソースにアクセスできるようにします。例えば、Amazon S3 からのデータを処理する Apache Spark ジョブを実行する場合、ポリシーでそのようなリソースへのアクセスを許可する必要があります。

デフォルトロールとデフォルトポリシーの両方が非推奨予定です。代替の AWS デフォルト管理ロールまたはポリシーはありません。リソースベースまたは ID ベースのポリシーを提供する必要があります。つまり、デフォルトでは、EMR クラスターで実行されているアプリケーションは、ポリシーに手動で追加しない限り、Amazon S3 やその他のリソースにアクセスできません。デフォルトのロールとデフォルトの管理ポリシー を参照してください。

その他の EC2 サービスロールポリシー

現在のポリシー名:AmazonElasticMapReduceforAutoScalingRole、AmazonElasticMapReduceEditorsRole、Amazon EMRCleanupPolicy

EMR が他の AWS リソースにアクセスし、アクションを実行するため (オートスケーリング、ノートブックを使用する場合)、または EC2 リソースをクリーンアップするために必要なアクセス許可を提供します。

v2 で変更はありません。

IAM のセキュリティ確保:PassRole

Amazon EMR のフルアクセス許可のデフォルトの管理ポリシーには、iam:PassRole次を含むセキュリティ設定が組み込まれています。

  • 特定のデフォルトの Amazon EMR ロール専用の iam:PassRole アクセス許可。

  • elasticmapreduce.amazonaws.comec2.amazonaws.com など、指定した AWS のサービスのみで使用できる iam:PassedToService 条件。

AmazonEMR _v2 ポリシーと FullAccessPolicyAmazonEMRServicePolicy _v2 ポリシーの JSON バージョンは IAM コンソールで確認できます。v2 管理ポリシーを使用して新しいクラスターを作成することをお勧めします。

カスタムポリシーを作成するには、管理ポリシーから始め、条件にしたがって編集することをお勧めします。

IAM ユーザー (プリンシパル) にポリシーをアタッチする方法の詳細については、「IAM ユーザーガイド」の「AWS Management Console を使用した管理ポリシーの操作」を参照してください。

管理ポリシーを使用するためにリソースにタグを付ける

AmazonEMRServicePolicy _v2 および AmazonEMRFullAccessPolicy _v2 は、Amazon EMR がプロビジョニングまたは使用するリソースへの範囲が制限されたアクセス権限に依存します。事前に定義されたユーザータグが関連付けられているリソースのみにアクセスを制限することで、範囲制限を行います。これら 2 つのポリシーのいずれかを使用する場合は、for-use-with-amazon-emr-managed-policies = trueクラスターをプロビジョニングするときに定義済みのユーザータグを渡す必要があります。Amazon EMR はそのタグを自動的に伝播します。さらに、次のセクションに記載されているリソースにユーザータグを追加する必要があります。Amazon EMR コンソールを使用してクラスターを起動する場合は、「」を参照してくださいAmazon EMR コンソールで v2 管理ポリシーを使用してクラスターを起動する際の考慮事項

管理ポリシーを使用するには、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 によって作成されていない場合)、VPC (Amazon EMR でセキュリティグループを作成する場合) にタグを付ける必要があります。VPC で v2 管理ポリシーを使用してクラスターを起動するには、事前定義のユーザータグでそれらの VPC にタグを付ける必要があります。「Amazon EMR コンソールで v2 管理ポリシーを使用してクラスターを起動する際の考慮事項」を参照してください。

伝播されたユーザー指定のタグ付け

Amazon EMR は、クラスターの作成時に指定した Amazon EMR タグを使用して、作成したリソースにタグを付けます。Amazon EMR は、クラスターの存続期間中に作成したリソースにタグを適用します。

Amazon EMR は、次のリソースのユーザータグを伝播します。

  • プライベートサブネット ENI (サービスアクセス Elastic Network Interface)

  • EC2 インスタンス

  • EBS ボリューム

  • EC2 起動テンプレート

自動的にタグ付けされたセキュリティグループ

Amazon EMR は、create cluster コマンドで指定したタグに関係なく、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 管理ポリシーを使用してクラスターを起動する際の考慮事項

Amazon EMR コンソールで v2 管理ポリシーを使用してクラスターをプロビジョニングできます。コンソールを使用して Amazon EMR クラスターを起動する場合の考慮事項を以下にいくつか示します。

注記

Amazon EMR コンソールを再設計しました。新しいコンソールでは自動タグ機能はまだ使用できません。また、新しいコンソールでは、どのリソース(VPC /サブネット)にタグを付ける必要があるかも表示されません。の古いコンソールと新しいコンソールエクスペリエンスの違いの詳細については、「」を参照してくださいコンソールの新機能

  • 事前定義のタグを渡す必要はありません。Amazon EMR はタグを自動的に追加し、適切なコンポーネントに伝播します。

  • 手動でタグ付けする必要があるコンポーネントの場合、リソースにタグを付けるのに必要なアクセス許可がある場合、古い Amazon EMR コンソールはそれらのコンポーネントに自動的にタグ付けしようとします。リソースにタグ付けするアクセス許可がない場合、または新しいコンソールを使用する場合は、管理者にリソースにタグを付けるよう依頼してください。

  • すべての前提条件が満たされない限り、v2 管理ポリシーを使用してクラスターを起動することはできません。

  • 古い Amazon EMR コンソールには、タグ付けする必要があるリソース (VPC /サブネット) が表示されます。

Amazon EMR の AWS 管理ポリシー

ユーザー、グループ、ロールに許可を追加するには、自分でポリシーを作成するよりも、AWS マネージドポリシーを使用する方が簡単です。チームに必要な許可のみを提供する IAM カスタマーマネージドポリシーを作成するには、時間と専門知識が必要です。すぐに使用を開始するために、AWS マネージドポリシーを使用できます。これらのポリシーは、一般的なユースケースを対象範囲に含めており、AWS アカウントで利用できます。AWS マネージドポリシーの詳細については、「IAM ユーザーガイド」の「AWS マネージドポリシー」を参照してください。

AWS のサービスは、AWS マネージドポリシーを維持および更新します。AWS マネージドポリシーの許可を変更することはできません。サービスでは、新しい機能を利用できるようにするために、AWS マネージドポリシーに許可が追加されることがあります。この種類の更新は、ポリシーがアタッチされている、すべてのアイデンティティ (ユーザー、グループおよびロール) に影響を与えます。新しい機能が立ち上げられた場合や、新しいオペレーションが使用可能になった場合に、各サービスが AWS マネージドポリシーを更新する可能性が最も高くなります。サービスは、AWS マネージドポリシーから許可を削除しないため、ポリシーの更新によって既存の許可が破棄されることはありません。

さらに、AWS では、複数のサービスにまたがるジョブ機能のためのマネージドポリシーもサポートしています。例えば、ReadOnlyAccess AWS 管理ポリシーでは、すべての AWS のサービスおよびリソースへの読み取り専用アクセスを許可します。あるサービスで新しい機能を立ち上げる場合は、AWS は、追加された演算とリソースに対し、読み込み専用の許可を追加します。職務機能ポリシーのリストと説明については、「IAM ユーザーガイド」の「ジョブ機能の AWS マネージドポリシー」を参照してください。

Amazon EMR での AWS 管理ポリシーに関する更新

Amazon EMR の AWS 管理ポリシーに対する更新の詳細について、このサービスがこれらの変更の追跡を開始した以降のものを示します。このページの変更に関する自動通知を入手するには、Amazon EMR ドキュメントの履歴ページから、RSS フィードにサブスクライブしてください。

変更 説明 日付
AmazonEMRFullAccessPolicy_v2および AmazonEMRReadOnlyAccessPolicy_v2— 既存のポリシーの更新 elasticmapreduce:DescribeReleaseLabelelasticmapreduce:GetAutoTerminationPolicy が追加されました。 2022 年 4 月 21 日
AmazonEMRFullAccessPolicy_v2 – 既存ポリシーへの更新。 に追加されましたec2:DescribeImagesカスタム AMI の使用 2022 年 2 月 15 日

Amazon EMR 管理ポリシー

定義済みのユーザータグの使用を明確にするために更新されました。

AWS コンソールで v2 管理ポリシーを使用してクラスターを起動する方法に関するセクションを追加しました。

2021 年 9 月 29 日

AmazonEMRFullAccessPolicy_v2 – 既存ポリシーへの更新。

PassRoleForAutoScalingPassRoleForEC2StringLike"iam:PassedToService":"application-autoscaling.amazonaws.com*"およびアクションをそれぞれおよびに一致するように条件演算子を使用するように変更しました。"iam:PassedToService":"ec2.amazonaws.com*" 2021 年 5 月 20 日

AmazonEMRFullAccessPolicy_v2 – 既存ポリシーへの更新。

s3:ListBuckets無効なアクションを削除し、s3:ListAllMyBucketsアクションに置き換えました。

サービスにリンクされたロール (SLR) の作成を、明示的なサービス原則で Amazon EMR が備える唯一の SLR に明示的に範囲制限するように更新しました。作成できる SLR は、この変更前とまったく同じです。

2021 年 3 月 23 日

AmazonEMRFullAccessPolicy_v2 - 新しいポリシー

Amazon EMR で新しいアクセス許可が追加され、リソースへのアクセスの範囲が制限され、ユーザーが Amazon EMR 管理ポリシーを使用する前に事前定義されたユーザータグをリソースに追加する必要があるという前提条件が追加されました。

iam:PassRoleアクションでは、iam:PassedToService指定されたサービスに条件を設定する必要があります。デフォルトでは、Amazon EC2、Amazon S3、およびその他のサービスへのアクセスは許可されていません。

2021 年 3 月 11 日
AmazonEMRServicePolicy_v2 - 新しいポリシー

このポリシーを使用するには、ユーザーがリソースにユーザータグを追加する必要があるという前提条件を追加します。

2021 年 3 月 11 日
AmazonEMRReadOnlyAccessPolicy_v2 - 新しいポリシー

アクセス許可によって、指定された elasticmapreduce の読み取り専用アクションのみが許可されます。Amazon S3 へのアクセスは、デフォルトではアクセスが許可されていません。

2021 年 3 月 11 日

Amazon EMR が変更の追跡を開始しました。

Amazon EMR が AWS 管理ポリシーの変更の追跡を開始しました。

2021 年 3 月 11 日