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일부터 AWS SMUS MCP 서버는 MCP 서버 작업을 승인하기 위해 별도의 IAM 권한을 더 이상 필요로 하지 않습니다. 대신 기존 IAM 역할 및 정책을 사용하여 AWS 서비스 수준에서 권한이 부여됩니다.

SMUS MCP 서버를 통해 이루어진 모든 요청에 두 개의 조건 키가 자동으로 추가됩니다.

  • 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 전역 조건 컨텍스트 키를 참조하세요.