AWS サービスを直接呼び出すアプリケーションでIAMロールを使用する - Amazon EMR

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

AWS サービスを直接呼び出すアプリケーションでIAMロールを使用する

クラスターのEC2インスタンスで実行されているアプリケーションは、 AWS サービスを呼び出すときに、EC2インスタンスプロファイルを使用して一時的なセキュリティ認証情報を取得できます。

Amazon EMRリリース 2.3.0 以降で利用可能な Hadoop のバージョンは、IAMロールを使用するように既に更新されています。アプリケーションが Hadoop アーキテクチャ上で厳密に実行され、 のどのサービスも直接呼び出さない場合は AWS、変更なしでIAMロールで動作する必要があります。

アプリケーションが で サービス AWS を直接呼び出す場合は、IAMロールを利用するためにサービスを更新する必要があります。つまり、アプリケーションは、クラスター内のEC2インスタンス/etc/hadoop/conf/core-site.xmlで からアカウント認証情報を取得する代わりに、 を使用してIAMロールを使用してリソースSDKにアクセスするか、EC2インスタンスメタデータを呼び出して一時的な認証情報を取得します。

を使用してIAMロールを持つ AWS リソースにアクセスするには SDK
EC2 インスタンスメタデータから一時的な認証情報を取得するには
  • 指定されたIAMロールで実行されているEC2インスタンスURLから以下を呼び出します。これにより、関連する一時的なセキュリティ認証情報 (AccessKeyId、 SecretAccessKey SessionToken、および有効期限) が返されます。次の例では、Amazon EMR、 のデフォルトのインスタンスプロファイルを使用しますEMR_EC2_DefaultRole

    GET http://169.254.169.254/latest/meta-data/iam/security-credentials/EMR_EC2_DefaultRole

IAM ロールを使用するアプリケーションの記述の詳細については、「Amazon EC2インスタンスで実行されるアプリケーションに AWS リソースへのアクセス権を付与する」を参照してください。

一時的なセキュリティ認証情報の詳細については、「一時的セキュリティ認証情報の使用」ガイドの「一時的な認証情報の使用」を参照してください。