View a markdown version of this page

IAM ロールのセットアップ - Amazon EMR

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

IAM ロールのセットアップ

セットアップ手順の CloudFormation スタックは、IAM ロールのセットアップを自動化します。手動で実行する場合は、以下の手順に従ってください。

MCP サーバーの IAM ロールのセットアップ

2026 年 5 月 29 日以後の変更

以下に示すsagemaker-unified-studio-mcpアクセス許可は、2026 年 5 月 29 日以降は不要になります。代わりに、既存の IAM ポリシーを使用して、サービスレベルで承認が行われます AWS 。これらのアクセス許可を使用してアクセスを拒否する場合は、今後のアクセス許可の変更 (2026 年 5 月 29 日)「」を参照して、その日付より前にポリシーを更新します。

SMUS マネージド MCP サーバーにアクセスするには、次のインラインポリシーを持つ IAM ロールが必要です。

{ "Version": "2012-10-17", "Statement": [ { "Sid": "AllowUseSagemakerUnifiedStudioMcpServer", "Effect": "Allow", "Action": [ "sagemaker-unified-studio-mcp:InvokeMcp", "sagemaker-unified-studio-mcp:CallReadOnlyTool", "sagemaker-unified-studio-mcp:CallPrivilegedTool" ], "Resource": [ "*" ] } ] }

次のステップでは、このロールのプロファイルを作成します。認証情報を取得するためにこのロールを引き受けるいずれのアカウントも、ロールの引き受けポリシーに追加する必要があります。

{ "Version": "2012-10-17", "Statement": [ { "Sid": "AllowAccountToAssumeRole", "Effect": "Allow", "Principal": { "AWS": "arn:aws:iam::<accountId>:root" }, "Action": "sts:AssumeRole" } ] }

デプロイモード別の追加のアクセス許可 (EMR-EC2/EMR-S/Glue)

EMR-EC2 アプリケーション

{ "Version": "2012-10-17", "Statement": [ { "Sid": "EMREC2ReadAccess", "Effect": "Allow", "Action": [ "elasticmapreduce:DescribeCluster", "elasticmapreduce:DescribeStep", "elasticmapreduce:ListSteps", "elasticmapreduce:ListClusters", "elasticmapreduce:DescribeJobFlows" ], "Resource": [ "*" ] }, { "Sid": "EMRS3LogAccess", "Effect": "Allow", "Action": [ "s3:GetObject", "s3:ListBucket" ], "Resource": "*" }, { "Sid": "EMRPersistentApp", "Effect": "Allow", "Action": [ "elasticmapreduce:CreatePersistentAppUI", "elasticmapreduce:DescribePersistentAppUI", "elasticmapreduce:GetPersistentAppUIPresignedURL" ], "Resource": [ "*" ] } ] }

Glue ジョブ

{ "Version": "2012-10-17", "Statement": [ { "Sid": "GlueReadAccess", "Effect": "Allow", "Action": [ "glue:GetJob", "glue:GetJobRun", "glue:GetJobRuns", "glue:GetJobs", "glue:BatchGetJobs" ], "Resource": [ "arn:aws:glue:*:<account id>:job/*" ] }, { "Sid": "GlueCloudWatchLogsAccess", "Effect": "Allow", "Action": [ "logs:GetLogEvents", "logs:FilterLogEvents" ], "Resource": [ "arn:aws:logs:*:<account id>:log-group:/aws/glue/*" ] }, { "Sid": "GlueSparkWebUI", "Effect": "Allow", "Action": [ "glue:RequestLogParsing", "glue:GetLogParsingStatus", "glue:GetEnvironment", "glue:GetStage", "glue:GetStages", "glue:GetStageFiles", "glue:BatchGetStageFiles", "glue:GetStageAttempt", "glue:GetStageAttemptTaskList", "glue:GetStageAttemptTaskSummary", "glue:GetExecutors", "glue:GetExecutorsThreads", "glue:GetStorage", "glue:GetStorageUnit", "glue:GetQueries", "glue:GetQuery", "glue:GetDashboardUrl" ], "Resource": [ "arn:aws:glue:*:<account id>:job/*" ] }, { "Sid": "GluePassRoleAccess", "Effect": "Allow", "Action": "iam:PassRole", "Resource": "*", "Condition": { "StringLike": { "iam:PassedToService": "glue.amazonaws.com" } } } ] }

EMR サーバーレスアプリケーション

{ "Version": "2012-10-17", "Statement": [ { "Sid": "EMRServerlessReadAccess", "Effect": "Allow", "Action": [ "emr-serverless:GetJobRun", "emr-serverless:GetApplication", "emr-serverless:ListApplications", "emr-serverless:ListJobRuns", "emr-serverless:ListJobRunAttempts", "emr-serverless:GetDashboardForJobRun", "emr-serverless:ListTagsForResource" ], "Resource": [ "*" ] }, { "Sid": "EMRServerlessCloudWatchLogsAccess", "Effect": "Allow", "Action": [ "logs:GetLogEvents", "logs:FilterLogEvents" ], "Resource": [ "arn:aws:logs:*:<account id>:log-group:/aws/emr-serverless/*" ] }, { "Sid": "EMRServerlessS3LogsAccess", "Effect": "Allow", "Action": [ "s3:GetObject", "s3:ListBucket" ], "Resource": "*" } ] }

KMS アクセス許可 - CloudWatch Logs

CloudWatch Logs が CMK で暗号化されている場合は、サービスが EMR-Serverless アプリケーションログを読み取れるように、次のポリシーを追加します。

{ "Effect": "Allow", "Action": [ "kms:Decrypt", "kms:DescribeKey" ], "Resource": "arn:aws:kms:<region>:<account-id>:key/<cw-logs-cmk-id>" }

今後のアクセス許可の変更 (2026 年 5 月 29 日)

2026 年 5 月 29 日以降、SMUS MCP AWS サーバーは MCP サーバーオペレーションを承認するために個別の IAM アクセス許可を必要としなくなります。代わりに、既存の IAM ロールとポリシーを使用して AWS 、サービスレベルで認可が行われます。

SMUS MCP サーバーを介して行われたすべてのリクエストに 2 つの条件キーが自動的に追加されます。

  • aws:ViaAWSMCPService – AWS マネージド MCP サーバーを介して行われたリクエストtrueの場合は、 に設定します。

  • aws:CalledViaAWSMCP – MCP サーバーサービスプリンシパル ( などsagemaker-unified-studio-mcp.amazonaws.com) に設定します。

現在、 アクセスsagemaker-unified-studio-mcp許可を使用して SMUS MCP サーバーへのアクセスを拒否している場合、またはアカウントで AWS マネージド MCP サーバーが開始したアクションを許可しない場合は、2026 年 5 月 29 日までにポリシーを更新する必要があります。代わりに新しい条件キーを使用します。

AWS マネージド MCP サーバー経由ですべてのオペレーションを拒否します。

{ "Effect": "Deny", "Action": "*", "Resource": "*", "Condition": { "Bool": { "aws:ViaAWSMCPService": "true" } } }

特定の AWS マネージド MCP サーバーを介した特定のオペレーションを拒否します。

{ "Effect": "Deny", "Action": ["glue:GetJobRun", "glue:StartJobRun"], "Resource": "*", "Condition": { "StringEquals": { "aws:CalledViaAWSMCP": "sagemaker-unified-studio-mcp.amazonaws.com" } } }

条件キーの詳細については、「IAM ユーザーガイド」のAWS 「グローバル条件コンテキストキー」を参照してください。