Amazon EventBridge에 대한 자격 증명 기반 정책(IAM 정책) 사용 - 아마존 EventBridge

기계 번역으로 제공되는 번역입니다. 제공된 번역과 원본 영어의 내용이 상충하는 경우에는 영어 버전이 우선합니다.

Amazon EventBridge에 대한 자격 증명 기반 정책(IAM 정책) 사용

자격 증명 기반 정책은 IAM 자격 증명에 연결할 수 있는 권한 정책입니다.

EventBridge에 대한 AWS 관리형 정책

AWS는 AWS에서 생성하고 관리하는 독립형 IAM 정책을 제공하여 많은 일반 사용 사례를 처리합니다. 관리형 또는 미리 정의된 정책은 일반 사용 사례에 필요한 권한을 부여하므로 어떤 권한이 필요한지 조사할 필요가 없습니다. 자세한 내용은 IAM 사용 설명서AWS 관리형 정책을 참조하세요.

계정의 사용자에게 연결할 수 있는 다음 AWS 관리형 정책은 EventBridge에만 적용됩니다.

  • AmazonEventBridgeFullAccess – EventBridge 파이프, EventBridge 스키마 및 EventBridge 스케줄러를 포함하여 EventBridge에 대한 전체 액세스 권한을 부여합니다.

  • AmazonEventBridgeReadOnlyAccess – EventBridge 파이프, EventBridge 스키마 및 EventBridge 스케줄러를 포함하여 EventBridge에 대한 읽기 전용 액세스 권한을 부여합니다.

AmazonEventBridgeFullAccess 정책

AmazonEventBridgeFullAccess 정책은 모든 EventBridge 작업을 사용할 수 있는 권한과 다음 권한을 부여합니다.

  • iam:CreateServiceLinkedRole – API 대상의 서비스 역할을 사용자 계정에 생성하려면 EventBridge에 이 권한이 필요합니다. 이 권한은 IAM 서비스에만 사용자 계정에서 API 대상의 역할을 생성할 수 있는 권한을 부여합니다.

  • iam:PassRole – EventBridge는 규칙의 대상을 간접 호출하기 위해 간접 호출 역할을 EventBridge에 전달하려면 이 권한이 필요합니다.

  • Secrets Manager 권한 – EventBridge는 API 데스티네이션을 승인하기 위해 연결 리소스를 통해 보안 인증 정보를 제공할 때 계정의 비밀을 관리하기 위해 이러한 권한을 필요로 합니다.

다음 JSON은 AmazonEventBridgeFullAccess 정책을 보여줍니다.

{ "Version": "2012-10-17", "Statement": [ { "Sid": "EventBridgeActions", "Effect": "Allow", "Action": [ "events:*", "schemas:*", "scheduler:*", "pipes:*" ], "Resource": "*" }, { "Sid": "IAMCreateServiceLinkedRoleForApiDestinations", "Effect": "Allow", "Action": "iam:CreateServiceLinkedRole", "Resource": "arn:aws:iam::*:role/aws-service-role/AmazonEventBridgeApiDestinationsServiceRolePolicy", "Condition": { "StringEquals": { "iam:AWSServiceName": "apidestinations.events.amazonaws.com" } } }, { "Sid": "IAMCreateServiceLinkedRoleForAmazonEventBridgeSchemas", "Effect": "Allow", "Action": "iam:CreateServiceLinkedRole", "Resource": "arn:aws:iam::*:role/aws-service-role/schemas.amazonaws.com/AWSServiceRoleForSchemas", "Condition": { "StringEquals": { "iam:AWSServiceName": "schemas.amazonaws.com" } } }, { "Sid": "SecretsManagerAccessForApiDestinations", "Effect": "Allow", "Action": [ "secretsmanager:CreateSecret", "secretsmanager:UpdateSecret", "secretsmanager:DeleteSecret", "secretsmanager:GetSecretValue", "secretsmanager:PutSecretValue" ], "Resource": "arn:aws:secretsmanager:*:*:secret:events!*" }, { "Sid": "IAMPassRoleAccessForEventBridge", "Effect": "Allow", "Action": "iam:PassRole", "Resource": "arn:aws:iam::*:role/*", "Condition": { "StringLike": { "iam:PassedToService": "events.amazonaws.com" } } }, { "Sid": "IAMPassRoleAccessForScheduler", "Effect": "Allow", "Action": "iam:PassRole", "Resource": "arn:aws:iam::*:role/*", "Condition": { "StringLike": { "iam:PassedToService": "scheduler.amazonaws.com" } } }, { "Sid": "IAMPassRoleAccessForPipes", "Effect": "Allow", "Action": "iam:PassRole", "Resource": "arn:aws:iam::*:role/*", "Condition": { "StringLike": { "iam:PassedToService": "pipes.amazonaws.com" } } } ] }
참고

이 섹션의 정보는 CloudWatchEventsFullAccess 정책에도 적용됩니다. 하지만 Amazon CloudWatch Events 대신 Amazon EventBridge를 사용하는 것이 좋습니다.

AmazonEventBridgeReadOnlyAccess 정책

AmazonEventBridgeReadOnlyAccess 정책은 모든 읽기 EventBridge 작업을 사용할 수 있는 권한을 부여합니다.

다음 JSON은 AmazonEventBridgeReadOnlyAccess 정책을 보여줍니다.

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "events:DescribeRule", "events:DescribeEventBus", "events:DescribeEventSource", "events:ListEventBuses", "events:ListEventSources", "events:ListRuleNamesByTarget", "events:ListRules", "events:ListTargetsByRule", "events:TestEventPattern", "events:DescribeArchive", "events:ListArchives", "events:DescribeReplay", "events:ListReplays", "events:DescribeConnection", "events:ListConnections", "events:DescribeApiDestination", "events:ListApiDestinations", "events:DescribeEndpoint", "events:ListEndpoints", "schemas:DescribeCodeBinding", "schemas:DescribeDiscoverer", "schemas:DescribeRegistry", "schemas:DescribeSchema", "schemas:ExportSchema", "schemas:GetCodeBindingSource", "schemas:GetDiscoveredSchema", "schemas:GetResourcePolicy", "schemas:ListDiscoverers", "schemas:ListRegistries", "schemas:ListSchemas", "schemas:ListSchemaVersions", "schemas:ListTagsForResource", "schemas:SearchSchemas", "scheduler:GetSchedule", "scheduler:GetScheduleGroup", "scheduler:ListSchedules", "scheduler:ListScheduleGroups", "scheduler:ListTagsForResource", "pipes:DescribePipe", "pipes:ListPipes", "pipes:ListTagsForResource" ], "Resource": "*" } ] }
참고

이 섹션의 정보는 CloudWatchEventsReadOnlyAccess 정책에도 적용됩니다. 하지만 Amazon CloudWatch Events 대신 Amazon EventBridge를 사용하는 것이 좋습니다.

EventBridge 스키마 전용 관리형 정책

스키마는 EventBridge로 전송되는 이벤트의 구조를 정의합니다. EventBridge는 AWS 서비스에서 생성되는 모든 이벤트에 대한 스키마를 제공합니다. EventBridge 스키마에만 적용되는 다음과 같은 AWS 관리형 정책을 사용할 수 있습니다.

EventBridge 스케줄러 전용 관리형 정책

Amazon EventBridge 스케줄러는 하나의 중앙 관리형 서비스에서 작업을 생성, 실행 및 관리할 수 있는 서버리스 스케줄러입니다. EventBridge 스케줄러에만 적용되는 AWS 관리형 정책은 EventBridge 스케줄러 사용 설명서EventBridge 스케줄러에 대한 AWS 관리형 정책을 참조하십시오.

EventBridge 파이프 전용 관리형 정책 사용

Amazon EventBridge 파이프는 이벤트 소스를 대상에 연결합니다. 파이프는 이벤트 중심 아키텍처를 개발할 때 전문 지식 및 통합 코드의 필요성을 줄여줍니다. 이는 회사 애플리케이션 전반의 일관성을 보장하는 데 도움이 됩니다. EventBridge 파이프에만 적용되는 다음과 같은 AWS 관리형 정책을 사용할 수 있습니다.

  • AmazonEventBridgePipesFullAccess

    Amazon EventBridge 파이프에 대한 전체 액세스를 제공합니다.

    참고

    이 정책은 iam:PassRole을 제공합니다. EventBridge에 간접 호출 역할을 전달하여 파이프를 생성하고 시작하려면 EventBridge 파이프에 이 권한이 필요합니다.

  • AmazonEventBridgePipesReadOnlyAccess

    Amazon EventBridge 파이프에 대한 읽기 전용 액세스를 제공합니다.

  • AmazonEventBridgePipesOperatorAccess

    Amazon EventBridge 파이프에 대한 읽기 전용 액세스 및 운영자(즉, 파이프 실행을 중지하고 시작하는 기능) 액세스를 제공합니다.

이벤트 전송을 위한 IAM 역할

이벤트를 대상으로 중계하려면 EventBridge에 IAM 역할이 필요합니다.

EventBridge에 이벤트를 보내는 데 필요한 IAM 역할을 생성하는 방법
  1. https://console.aws.amazon.com/iam/에서 IAM 콘솔을 엽니다.

  2. IAM 역할을 생성하려면 IAM 사용 설명서에서 AWS 서비스에 대한 권한을 위임할 역할 의 단계를 따릅니다. 단계를 따르면서 다음을 수행합니다.

    • 역할 이름에 계정 내에서 고유한 이름을 사용합니다.

    • 역할 유형 선택에서 AWS서비스 역할을 선택한 후 Amazon EventBridge를 선택합니다. 이렇게 하면 역할을 수임할 EventBridge 권한이 부여됩니다.

    • 연결 정책에서 AmazonEventBridgeFullAccess를 선택합니다.

EventBridge 작업 및 리소스에 대한 권한을 허용하는 고유의 맞춤 IAM 정책을 생성할 수도 있습니다. 해당 권한이 필요한 IAM 사용자 또는 그룹에 이러한 사용자 지정 정책을 연결할 수 있습니다. IAM 정책 작성에 대한 자세한 내용은 IAM 사용 설명서IAM 정책 개요를 참조하세요. 사용자 지정 IAM 정책 관리 및 생성에 대한 자세한 내용 IAM 사용 설명서에서 IAM 정책 관리를 참조하세요.

EventBridge가 IAM 역할을 사용하여 대상에 액세스하는 데 필요한 권한

EventBridge 대상에는 일반적으로 대상을 간접 호출할 수 있는 권한을 EventBridge에 부여하는 IAM 역할이 필요합니다. 다음은 다양한 AWS 서비스 및 대상에 대한 예입니다. 다른 경우에는 EventBridge 콘솔을 사용하여 규칙을 생성하고 충분한 범위의 권한이 미리 구성된 정책으로 생성될 새 역할을 생성합니다.

Amazon SQS, Amazon SNS, Lambda, CloudWatch Logs 및 EventBridge 버스 대상은 역할을 사용하지 않으므로 리소스 정책을 통해 EventBridge에 대한 권한을 부여해야 합니다. API 게이트웨이 대상은 리소스 정책 또는 IAM 역할을 사용할 수 있습니다.

대상이 API 대상인 경우 지정한 역할에 다음 정책이 포함되어야 합니다.

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "events:InvokeApiDestination" ], "Resource": [ "arn:aws:events:::api-destination/*" ] } ] }

대상이 Kinesis 스트림이면 그 대상에게 이벤트 데이터를 전송하는 데 사용된 역할에 다음 정책이 포함되어야 합니다.

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "kinesis:PutRecord" ], "Resource": "*" } ] }

대상이 시스템 관리자 실행 명령이고 해당 명령에 하나 이상의 InstanceIds 값을 지정하는 경우에는 지정한 역할에 다음 정책이 반드시 포함되어야 합니다.

{ "Version": "2012-10-17", "Statement": [ { "Action": "ssm:SendCommand", "Effect": "Allow", "Resource": [ "arn:aws:ec2:region:accountId:instance/instanceIds", "arn:aws:ssm:region:*:document/documentName" ] } ] }

대상이 시스템 관리자 실행 명령이고 해당 명령에 하나 이상의 태그를 지정하는 경우에는 지정한 역할에 다음 정책이 반드시 포함되어야 합니다.

{ "Version": "2012-10-17", "Statement": [ { "Action": "ssm:SendCommand", "Effect": "Allow", "Resource": [ "arn:aws:ec2:region:accountId:instance/*" ], "Condition": { "StringEquals": { "ec2:ResourceTag/*": [ "[[tagValues]]" ] } } }, { "Action": "ssm:SendCommand", "Effect": "Allow", "Resource": [ "arn:aws:ssm:region:*:document/documentName" ] } ] }

대상이 AWS Step Functions 상태 시스템인 경우에는 지정한 역할에 다음 정책이 포함되어야 합니다.

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "states:StartExecution" ], "Resource": [ "arn:aws:states:*:*:stateMachine:*" ] } ] }

대상이 Amazon ECS 작업인 경우에는 지정한 역할에 다음 정책이 포함되어야 합니다.

{ "Version": "2012-10-17", "Statement": [{ "Effect": "Allow", "Action": [ "ecs:RunTask" ], "Resource": [ "arn:aws:ecs:*:account-id:task-definition/task-definition-name" ], "Condition": { "ArnLike": { "ecs:cluster": "arn:aws:ecs:*:account-id:cluster/cluster-name" } } }, { "Effect": "Allow", "Action":"iam:PassRole", "Resource": [ "*" ], "Condition": { "StringLike": { "iam:PassedToService": "ecs-tasks.amazonaws.com" } } }] }

다음 정책은 EventBridge의 기본 제공 대상이 사용자를 대신하여 Amazon EC2 작업을 수행합니다. 기본 제공 대상이 있는 규칙을 생성하려면 AWS Management Console을 사용해야 합니다.

{ "Version": "2012-10-17", "Statement": [ { "Sid": "TargetInvocationAccess", "Effect": "Allow", "Action": [ "ec2:Describe*", "ec2:RebootInstances", "ec2:StopInstances", "ec2:TerminateInstances", "ec2:CreateSnapshot" ], "Resource": "*" } ] }

다음 정책은 EventBridge가 계정의 Kinesis 스트림으로 이벤트를 릴레이하도록 허용합니다.

{ "Version": "2012-10-17", "Statement": [ { "Sid": "KinesisAccess", "Effect": "Allow", "Action": [ "kinesis:PutRecord" ], "Resource": "*" } ] }

고객 관리형 정책 예시: 태그를 사용하여 규칙에 대한 액세스 제어

다음 예에서는 EventBridge 작업에 대한 권한을 부여하는 사용자 정책을 보여줍니다. 이 정책은 EventBridge API, AWS SDK 또는 AWS CLI를 사용할 때 적용됩니다.

사용자에게 특정 EventBridge 규칙에 대한 액세스 권한을 부여하고 동시에 다른 규칙에는 액세스하지 못하게 할 수 있습니다. 이렇게 하려면 두 규칙 세트 모두에 태그를 지정한 다음 해당 태그를 참조하는 IAM 정책을 사용합니다. EventBridge 리소스 태깅에 대한 자세한 내용은 아마존 EventBridge 태그 단원을 참조하십시오.

특정 태그가 있는 규칙에만 액세스할 수 있도록 사용자에게 IAM 정책에 대한 권한을 부여할 수 있습니다. 특정 태그로 규칙에 태그를 지정하여 액세스 권한을 부여할 규칙을 선택합니다. 예를 들어 다음 정책은 태그 키 Stack의 값이 Prod인 규칙에 대한 사용자 액세스 권한을 부여합니다.

{ "Statement": [ { "Effect": "Allow", "Action": "events:*", "Resource": "*", "Condition": { "StringEquals": { "aws:ResourceTag/Stack": "Prod" } } } ] }

IAM 정책에 자세한 내용은 IAM 사용 설명서에서 정책을 사용하여 액세스 제어를 참조하세요.

AWS 관리형 정책에 대한 Amazon EventBridge 업데이트

이 서비스가 이러한 변경 내용을 추적하기 시작한 이후부터 EventBridge의 AWS 관리형 정책 업데이트에 관한 세부 정보를 봅니다. 이 페이지의 변경 사항에 관한 자동 알림을 받으려면 EventBridge 문서 기록 페이지에서 RSS 피드를 구독하세요.

변경 사항 설명 날짜

AmazonEventBridgePipesFullAccess – 새 정책이 추가됨

EventBridge는 EventBridge 파이프 사용에 대한 전체 권한에 대한 관리형 정책을 추가했습니다.

2022년 12월 1일

AmazonEventBridgePipesReadOnlyAccess – 새 정책이 추가됨

EventBridge는 EventBridge 파이프 정보 리소스를 볼 수 있는 권한에 대한 관리형 정책을 추가했습니다.

2022년 12월 1일

AmazonEventBridgePipesOperatorAccess – 새 정책이 추가됨

EventBridge는 EventBridge 파이프 정보를 볼 수 있는 권한과 파이프 실행을 시작하고 중지할 수 있는 권한에 대한 관리형 정책을 추가했습니다.

2022년 12월 1일

AmazonEventBridgeFullAccess – 기존 정책 업데이트

EventBridge는 EventBridge 파이프 기능을 사용하는 데 필요한 권한을 포함하도록 정책을 업데이트했습니다.

2022년 12월 1일

AmazonEventBridgeReadOnlyAccess – 기존 정책 업데이트

EventBridge는 EventBridge 파이프 정보 리소스를 보는 데 필요한 권한을 추가했습니다.

다음 작업이 추가되었습니다.

  • pipes:DescribePipe

  • pipes:ListPipes

  • pipes:ListTagsForResource

2022년 12월 1일

CloudWatchEventsReadOnlyAccess – 기존 정책 업데이트

AmazonEventBridgeReadOnlyAccess와 일치하도록 업데이트되었습니다.

2022년 12월 1일

CloudWatchEventsFullAccess – 기존 정책 업데이트

AmazonEventBridgeFullAccess와 일치하도록 업데이트되었습니다.

2022년 12월 1일

AmazonEventBridgeFullAccess – 기존 정책 업데이트

EventBridge는 스키마 및 스케줄러 기능을 사용하는 데 필요한 권한을 포함하도록 정책을 업데이트했습니다.

다음 권한이 추가되었습니다.

  • EventBridge 스키마 레지스트리 작업

  • EventBridge 스케줄러 작업

  • EventBridge 스키마 레지스트리에 대한 iam:CreateServiceLinkedRole 권한

  • EventBridge 스케줄러에 대한 iam:PassRole 권한

2022년 11월 10일

AmazonEventBridgeReadOnlyAccess – 기존 정책 업데이트

EventBridge는 스키마 및 스케줄러 정보 리소스를 보는 데 필요한 권한을 추가했습니다.

다음 작업이 추가되었습니다.

  • schemas:DescribeCodeBinding

  • schemas:DescribeDiscoverer

  • schemas:DescribeRegistry

  • schemas:DescribeSchema

  • schemas:ExportSchema

  • schemas:GetCodeBindingSource

  • schemas:GetDiscoveredSchema

  • schemas:GetResourcePolicy

  • schemas:ListDiscoverers

  • schemas:ListRegistries

  • schemas:ListSchemas

  • schemas:ListSchemaVersions

  • schemas:ListTagsForResource

  • schemas:SearchSchemas

  • scheduler:GetSchedule

  • scheduler:GetScheduleGroup

  • scheduler:ListSchedules

  • scheduler:ListScheduleGroups

  • scheduler:ListTagsForResource

2022년 11월 10일

AmazonEventBridgeReadOnlyAccess – 기존 정책 업데이트

EventBridge는 엔드포인트 정보를 보는 데 필요한 권한을 추가했습니다.

다음 작업이 추가되었습니다.

  • events:ListEndpoints

  • events:DescribeEndpoint

2022년 4월 7일

AmazonEventBridgeReadOnlyAccess – 기존 정책 업데이트

EventBridge는 연결 및 API 대상 정보를 보는 데 필요한 권한을 추가했습니다.

다음 작업이 추가되었습니다.

  • events:DescribeConnection

  • events:ListConnections

  • events:DescribeApiDestination

  • events:ListApiDestinations

2021년 3월 4일

AmazonEventBridgeFullAccess – 기존 정책 업데이트

EventBridge는 API 대상을 사용하는 데 필요한 iam:CreateServiceLinkedRole 및 AWS Secrets Manager 권한을 포함하도록 정책을 업데이트했습니다.

다음 작업이 추가되었습니다.

  • secretsmanager:CreateSecret

  • secretsmanager:UpdateSecret

  • secretsmanager:DeleteSecret

  • secretsmanager:GetSecretValue

  • secretsmanager:PutSecretValue

2021년 3월 4일

EventBridge에서 변경 사항 추적 시작

EventBridge가 AWS 관리형 정책에 대한 변경 내용 추적을 시작했습니다.

2021년 3월 4일