Elastic Beanstalk 작업에 사용되는 리소스 및 조건 - AWS Elastic Beanstalk

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

Elastic Beanstalk 작업에 사용되는 리소스 및 조건

이 단원에서는 특정 Elastic Beanstalk 작업이 특정 Elastic Beanstalk 리소스에서 수행되도록 허용하는 권한을 부여하도록 정책 설명에서 사용할 수 있는 리소스와 조건을 설명합니다.

조건을 사용하여 작업이 완료해야 하는 리소스에 대한 권한을 지정할 수 있습니다. 예를 들어 CreateEnvironment 작업을 호출할 수 있는 경우, 배포할 애플리케이션 버전은 물론 해당 애플리케이션 이름이 포함된 애플리케이션도 지정해야 합니다. CreateEnvironment 작업에 대한 권한을 설정할 때, InApplicationFromApplicationVersion 조건을 사용하여 작업이 수행하도록 할 애플리케이션과 애플리케이션 버전을 지정합니다.

또한 솔루션 스택(FromSolutionStack) 또는 구성 템플릿(FromConfigurationTemplate)으로 환경 구성을 지정할 수 있습니다. 다음 정책 설명은 CreateEnvironment 작업이 myenv 구성(Resource)을 사용하는 애플리케이션 버전 My App(InApplication)을 사용하여 애플리케이션 My Version(FromApplicationVersion 조건으로 지정됨)에 이름이 32bit Amazon Linux running Tomcat 7(FromSolutionStack로 지정됨)인 환경을 생성할 수 있도록 허용합니다.

{ "Version": "2012-10-17", "Statement": [ { "Action": [ "elasticbeanstalk:CreateEnvironment" ], "Effect": "Allow", "Resource": [ "arn:aws:elasticbeanstalk:us-east-2:123456789012:environment/My App/myenv" ], "Condition": { "StringEquals": { "elasticbeanstalk:InApplication": ["arn:aws:elasticbeanstalk:us-east-2:123456789012:application/My App"], "elasticbeanstalk:FromApplicationVersion": ["arn:aws:elasticbeanstalk:us-east-2:123456789012:applicationversion/My App/My Version"], "elasticbeanstalk:FromSolutionStack": ["arn:aws:elasticbeanstalk:us-east-2::solutionstack/32bit Amazon Linux running Tomcat 7"] } } } ] }
참고

이 주제에 언급된 대부분의 조건 키는 elasticbeanstalk:에 고유하며, 그 이름에는 Elastic Beanstalk 접두사가 포함되어 있습니다. 간결하게 하기 위해 다음 단원에서 조건 키를 언급할 때 이 접두사를 생략합니다. 예를 들어 전체 이름인 InApplication 대신에 elasticbeanstalk:InApplication을 사용합니다.

이와 대조적으로 AWS 서비스 전반에 사용되는 몇몇 조건 키를 언급하고 aws: 접두사를 포함시켜 예외를 강조합니다.

정책 예제에서는 항상 접두사를 포함한 전체 조건 키 이름을 표시합니다.

Elastic Beanstalk 작업에 대한 정책 정보

다음 표에는 모든 Elastic Beanstalk 작업, 각 작업이 수행하는 리소스, 조건을 사용하여 제공할 수 있는 추가 컨텍스트 정보가 나와 있습니다.

리소스, 조건, 예제, 종속 항목을 비롯한 Elastic Beanstalk 작업에 대한 정책 정보
리소스 조건 문 예제

작업: AbortEnvironmentUpdate

application

environment

aws:ResourceTag/key-name(선택 사항)

aws:TagKeys(선택 사항)

다음 정책은 사용자가 My App이라는 애플리케이션의 환경에 대한 환경 업데이트 작업을 중단할 수 있도록 허용합니다.

{ "Version": "2012-10-17", "Statement": [ { "Action": [ "elasticbeanstalk:AbortEnvironmentUpdate" ], "Effect": "Allow", "Resource": [ "arn:aws:elasticbeanstalk:us-east-2:123456789012:application/My App" ] } ] }

작업: CheckDNSAvailability

"*"

해당 사항 없음

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

작업: ComposeEnvironments

application

aws:ResourceTag/key-name(선택 사항)

aws:TagKeys(선택 사항)

다음 정책은 사용자가 My App이라는 애플리케이션에 속한 환경을 구성할 수 있도록 허용합니다.

{ "Version": "2012-10-17", "Statement": [ { "Action": [ "elasticbeanstalk:ComposeEnvironments" ], "Effect": "Allow", "Resource": [ "arn:aws:elasticbeanstalk:us-east-2:123456789012:environment/My App" ] } ] }

작업: CreateApplication

application

aws:RequestTag/key-name(선택 사항)

aws:TagKeys(선택 사항)

다음 예에서는 CreateApplication 작업이 이름이 DivA로 시작하는 애플리케이션을 생성할 수 있도록 허용합니다.

{ "Version": "2012-10-17", "Statement": [ { "Action": [ "elasticbeanstalk:CreateApplication" ], "Effect": "Allow", "Resource": [ "arn:aws:elasticbeanstalk:us-east-2:123456789012:application/DivA*" ] } ] }

작업: CreateApplicationVersion

applicationversion

InApplication

aws:RequestTag/key-name(선택 사항)

aws:TagKeys(선택 사항)

이 예에서는 CreateApplicationVersion 작업이 애플리케이션 *에서 모든 이름(My App)으로 애플리케이션 버전을 생성할 수 있도록 허용합니다.

{ "Version": "2012-10-17", "Statement": [ { "Action": [ "elasticbeanstalk:CreateApplicationVersion" ], "Effect": "Allow", "Resource": [ "arn:aws:elasticbeanstalk:us-east-2:123456789012:applicationversion/My App/*" ], "Condition": { "StringEquals": { "elasticbeanstalk:InApplication": ["arn:aws:elasticbeanstalk:us-east-2:123456789012:application/My App"] } } } ] }

작업: CreateConfigurationTemplate

configurationtemplate

InApplication

FromApplication

FromApplicationVersion

FromConfigurationTemplate

FromEnvironment

FromSolutionStack

aws:RequestTag/key-name(선택 사항)

aws:TagKeys(선택 사항)

다음 정책은 CreateConfigurationTemplate 작업이 애플리케이션 My Template에서 이름이 My Template*(My App)으로 시작하는 구성 템플릿을 생성할 수 있도록 허용합니다.

{ "Version": "2012-10-17", "Statement": [ { "Action": [ "elasticbeanstalk:CreateConfigurationTemplate" ], "Effect": "Allow", "Resource": [ "arn:aws:elasticbeanstalk:us-east-2:123456789012:configurationtemplate/My App/My Template*" ], "Condition": { "StringEquals": { "elasticbeanstalk:InApplication": ["arn:aws:elasticbeanstalk:us-east-2:123456789012:application/My App"], "elasticbeanstalk:FromSolutionStack": ["arn:aws:elasticbeanstalk:us-east-2::solutionstack/32bit Amazon Linux running Tomcat 7"] } } } ] }

작업: CreateEnvironment

environment

InApplication

FromApplicationVersion

FromConfigurationTemplate

FromSolutionStack

aws:RequestTag/key-name(선택 사항)

aws:TagKeys(선택 사항)

다음 정책은 CreateEnvironment 작업이 솔루션 스택 myenv을 사용하여 애플리케이션 My App에 이름이 32bit Amazon Linux running Tomcat 7인 환경을 생성할 수 있도록 허용합니다.

{ "Version": "2012-10-17", "Statement": [ { "Action": [ "elasticbeanstalk:CreateEnvironment" ], "Effect": "Allow", "Resource": [ "arn:aws:elasticbeanstalk:us-east-2:123456789012:environment/My App/myenv" ], "Condition": { "StringEquals": { "elasticbeanstalk:InApplication": ["arn:aws:elasticbeanstalk:us-east-2:123456789012:application/My App"], "elasticbeanstalk:FromApplicationVersion": ["arn:aws:elasticbeanstalk:us-east-2:123456789012:applicationversion/My App/My Version"], "elasticbeanstalk:FromSolutionStack": ["arn:aws:elasticbeanstalk:us-east-2::solutionstack/32bit Amazon Linux running Tomcat 7"] } } } ] }

작업: CreatePlatformVersion

platform

aws:RequestTag/key-name(선택 사항)

aws:TagKeys(선택 사항)

이 예에서는 CreatePlatformVersion 작업이 이름이 us-east-2로 시작하는 us-east-2_ 리전을 대상으로 지정하는 플랫폼 버전을 생성할 수 있도록 허용합니다.

{ "Version": "2012-10-17", "Statement": [ { "Action": [ "elasticbeanstalk:CreatePlatformVersion" ], "Effect": "Allow", "Resource": [ "arn:aws:elasticbeanstalk:us-east-2:123456789012:platform/us-east-2_*" ] } ] }

작업: CreateStorageLocation

"*"

해당 사항 없음

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

작업: DeleteApplication

application

aws:ResourceTag/key-name(선택 사항)

aws:TagKeys(선택 사항)

다음 정책은 DeleteApplication 작업이 애플리케이션 My App을 삭제할 수 있도록 허용합니다.

{ "Version": "2012-10-17", "Statement": [ { "Action": [ "elasticbeanstalk:DeleteApplication" ], "Effect": "Allow", "Resource": [ "arn:aws:elasticbeanstalk:us-east-2:123456789012:application/My App" ] } ] }

작업: DeleteApplicationVersion

applicationversion

InApplication

aws:ResourceTag/key-name(선택 사항)

aws:TagKeys(선택 사항)

다음 정책은 DeleteApplicationVersion 작업이 애플리케이션 My Version에서 이름이 My App인 애플리케이션 버전을 삭제할 수 있도록 허용합니다.

{ "Version": "2012-10-17", "Statement": [ { "Action": [ "elasticbeanstalk:DeleteApplicationVersion" ], "Effect": "Allow", "Resource": [ "arn:aws:elasticbeanstalk:us-east-2:123456789012:applicationversion/My App/My Version" ], "Condition": { "StringEquals": { "elasticbeanstalk:InApplication": ["arn:aws:elasticbeanstalk:us-east-2:123456789012:application/My App"] } } } ] }

작업: DeleteConfigurationTemplate

configurationtemplate

InApplication(선택 사항)

aws:ResourceTag/key-name(선택 사항)

aws:TagKeys(선택 사항)

다음 정책은 DeleteConfigurationTemplate 작업이 애플리케이션 My Template의 이름이 My App인 구성 템플릿을 삭제할 수 있도록 허용합니다. 애플리케이션 이름을 조건으로 지정하는 것은 선택 사항입니다.

{ "Version": "2012-10-17", "Statement": [ { "Action": [ "elasticbeanstalk:DeleteConfigurationTemplate" ], "Effect": "Allow", "Resource": [ "arn:aws:elasticbeanstalk:us-east-2:123456789012:configurationtemplate/My App/My Template" ] } ] }

작업: DeleteEnvironmentConfiguration

environment

InApplication(선택 사항)

다음 정책은 DeleteEnvironmentConfiguration 작업이 애플리케이션 myenv의 환경 My App에 대한 초안 구성을 삭제할 수 있도록 허용합니다. 애플리케이션 이름을 조건으로 지정하는 것은 선택 사항입니다.

{ "Version": "2012-10-17", "Statement": [ { "Action": [ "elasticbeanstalk:DeleteEnvironmentConfiguration" ], "Effect": "Allow", "Resource": [ "arn:aws:elasticbeanstalk:us-east-2:123456789012:environment/My App/myenv" ] } ] }

작업: DeletePlatformVersion

platform

aws:ResourceTag/key-name(선택 사항)

aws:TagKeys(선택 사항)

다음 정책에서는 DeletePlatformVersion 작업이 이름이 us-east-2로 시작하는 us-east-2_ 리전을 대상으로 지정하는 플랫폼 버전을 삭제할 수 있도록 허용합니다.

{ "Version": "2012-10-17", "Statement": [ { "Action": [ "elasticbeanstalk:DeletePlatformVersion" ], "Effect": "Allow", "Resource": [ "arn:aws:elasticbeanstalk:us-east-2:123456789012:platform/us-east-2_*" ] } ] }

작업: DescribeApplications

application

aws:ResourceTag/key-name(선택 사항)

aws:TagKeys(선택 사항)

다음 정책은 DescribeApplications 작업이 애플리케이션 My App을 설명할 수 있도록 허용합니다.

{ "Version": "2012-10-17", "Statement": [ { "Action": [ "elasticbeanstalk:DescribeApplications" ], "Effect": "Allow", "Resource": [ "arn:aws:elasticbeanstalk:us-east-2:123456789012:application/My App" ] } ] }

작업: DescribeApplicationVersions

applicationversion

InApplication(선택 사항)

aws:ResourceTag/key-name(선택 사항)

aws:TagKeys(선택 사항)

다음 정책은 DescribeApplicationVersions 작업이 애플리케이션 My Version의 애플리케이션 버전 My App을 설명할 수 있도록 허용합니다. 애플리케이션 이름을 조건으로 지정하는 것은 선택 사항입니다.

{ "Version": "2012-10-17", "Statement": [ { "Action": [ "elasticbeanstalk:DescribeApplicationVersions" ], "Effect": "Allow", "Resource": [ "arn:aws:elasticbeanstalk:us-east-2:123456789012:applicationversion/My App/My Version" ] } ] }

작업: DescribeConfigurationOptions

environment

configurationtemplate

solutionstack

InApplication(선택 사항)

aws:ResourceTag/key-name(선택 사항)

aws:TagKeys(선택 사항)

다음 정책은 DescribeConfigurationOptions 작업이 애플리케이션 myenv의 환경 My App에 대한 구성 옵션을 설명할 수 있도록 허용합니다. 애플리케이션 이름을 조건으로 지정하는 것은 선택 사항입니다.

{ "Version": "2012-10-17", "Statement": [ { "Action": "elasticbeanstalk:DescribeConfigurationOptions", "Effect": "Allow", "Resource": [ "arn:aws:elasticbeanstalk:us-east-2:123456789012:environment/My App/myenv" ] } ] }

작업: DescribeConfigurationSettings

environment

configurationtemplate

InApplication(선택 사항)

aws:ResourceTag/key-name(선택 사항)

aws:TagKeys(선택 사항)

다음 정책은 DescribeConfigurationSettings 작업이 애플리케이션 myenv의 환경 My App에 대한 구성 설정을 설명할 수 있도록 허용합니다. 애플리케이션 이름을 조건으로 지정하는 것은 선택 사항입니다.

{ "Version": "2012-10-17", "Statement": [ { "Action": "elasticbeanstalk:DescribeConfigurationSettings", "Effect": "Allow", "Resource": [ "arn:aws:elasticbeanstalk:us-east-2:123456789012:environment/My App/myenv" ] } ] }

작업: DescribeEnvironmentHealth

environment

aws:ResourceTag/key-name(선택 사항)

aws:TagKeys(선택 사항)

다음 정책은 DescribeEnvironmentHealth를 사용하여 myenv라는 환경의 상태 정보를 검색할 수 있도록 허용합니다.

{ "Version": "2012-10-17", "Statement": [ { "Action": "elasticbeanstalk:DescribeEnvironmentHealth", "Effect": "Allow", "Resource": [ "arn:aws:elasticbeanstalk:us-east-2:123456789012:environment/My App/myenv" ] } ] }

작업: DescribeEnvironmentResources

environment

InApplication(선택 사항)

aws:ResourceTag/key-name(선택 사항)

aws:TagKeys(선택 사항)

다음 정책은 DescribeEnvironmentResources 작업이 애플리케이션 My App의 환경 myenv에 대한 AWS 리소스 목록을 반환할 수 있도록 허용합니다. 애플리케이션 이름을 조건으로 지정하는 것은 선택 사항입니다.

{ "Version": "2012-10-17", "Statement": [ { "Action": "elasticbeanstalk:DescribeEnvironmentResources", "Effect": "Allow", "Resource": [ "arn:aws:elasticbeanstalk:us-east-2:123456789012:environment/My App/myenv" ] } ] }

작업: DescribeEnvironments

environment

InApplication(선택 사항)

aws:ResourceTag/key-name(선택 사항)

aws:TagKeys(선택 사항)

다음 정책은 DescribeEnvironments 작업이 애플리케이션 myenv의 환경 myotherenvMy App를 설명할 수 있도록 허용합니다. 애플리케이션 이름을 조건으로 지정하는 것은 선택 사항입니다.

{ "Version": "2012-10-17", "Statement": [ { "Action": "elasticbeanstalk:DescribeEnvironments", "Effect": "Allow", "Resource": [ "arn:aws:elasticbeanstalk:us-east-2:123456789012:environment/My App/myenv", "arn:aws:elasticbeanstalk:us-east-2:123456789012:environment/My App2/myotherenv" ] } ] }

작업: DescribeEvents

application

applicationversion

configurationtemplate

environment

InApplication

aws:ResourceTag/key-name(선택 사항)

aws:TagKeys(선택 사항)

다음 정책은 DescribeEvents 작업이 애플리케이션 myenv의 환경 My Version 및 애플리케이션 버전 My App에 대한 이벤트 설명을 나열할 수 있도록 허용합니다.

{ "Version": "2012-10-17", "Statement": [ { "Action": "elasticbeanstalk:DescribeEvents", "Effect": "Allow", "Resource": [ "arn:aws:elasticbeanstalk:us-east-2:123456789012:environment/My App/myenv", "arn:aws:elasticbeanstalk:us-east-2:123456789012:applicationversion/My App/My Version" ], "Condition": { "StringEquals": { "elasticbeanstalk:InApplication": ["arn:aws:elasticbeanstalk:us-east-2:123456789012:application/My App"] } } } ] }

작업: DescribeInstancesHealth

environment

해당 사항 없음

다음 정책은 DescribeInstancesHealth를 사용하여 myenv라는 환경의 인스턴스에 대한 상태 정보를 검색할 수 있도록 허용합니다.

{ "Version": "2012-10-17", "Statement": [ { "Action": "elasticbeanstalk:DescribeInstancesHealth", "Effect": "Allow", "Resource": [ "arn:aws:elasticbeanstalk:us-east-2:123456789012:environment/My App/myenv" ] } ] }

작업: DescribePlatformVersion

platform

aws:ResourceTag/key-name(선택 사항)

aws:TagKeys(선택 사항)

다음 정책에서는 DescribePlatformVersion 작업이 이름이 us-east-2로 시작하는 us-east-2_ 리전을 대상으로 지정하는 플랫폼 버전을 설명할 수 있도록 허용합니다.

{ "Version": "2012-10-17", "Statement": [ { "Action": [ "elasticbeanstalk:DescribePlatformVersion" ], "Effect": "Allow", "Resource": [ "arn:aws:elasticbeanstalk:us-east-2:123456789012:platform/us-east-2_*" ] } ] }

작업: ListAvailableSolutionStacks

solutionstack

해당 사항 없음

다음 정책은 ListAvailableSolutionStacks 작업이 솔루션 스택 32bit Amazon Linux running Tomcat 7만 반환할 수 있도록 허용합니다.

{ "Version": "2012-10-17", "Statement": [ { "Action": [ "elasticbeanstalk:ListAvailableSolutionStacks" ], "Effect": "Allow", "Resource": "arn:aws:elasticbeanstalk:us-east-2::solutionstack/32bit Amazon Linux running Tomcat 7" } ] }

작업: ListPlatformVersions

platform

aws:RequestTag/key-name(선택 사항)

aws:TagKeys(선택 사항)

이 예에서는 CreatePlatformVersion 작업이 이름이 us-east-2로 시작하는 us-east-2_ 리전을 대상으로 지정하는 플랫폼 버전을 생성할 수 있도록 허용합니다.

{ "Version": "2012-10-17", "Statement": [ { "Action": [ "elasticbeanstalk:ListPlatformVersions" ], "Effect": "Allow", "Resource": [ "arn:aws:elasticbeanstalk:us-east-2:123456789012:platform/us-east-2_*" ] } ] }

작업: ListTagsForResource

application

applicationversion

configurationtemplate

environment

platform

aws:ResourceTag/key-name(선택 사항)

aws:TagKeys(선택 사항)

다음 정책은 기존 리소스가 ListTagsForResource 값과 함께 stage라는 태그를 포함하는 경우에만 test 작업이 해당 기존 리소스의 태그를 나열할 수 있도록 허용합니다.

{ "Version": "2012-10-17", "Statement": [ { "Action": [ "elasticbeanstalk:ListTagsForResource" ], "Effect": "Allow", "Resource": "*", "Condition": { "StringEquals": { "aws:ResourceTag/stage": ["test"] } } } ] }

작업: RebuildEnvironment

environment

InApplication

aws:ResourceTag/key-name(선택 사항)

aws:TagKeys(선택 사항)

다음 정책은 RebuildEnvironment 작업이 애플리케이션 myenv의 환경 My App를 다시 빌드할 수 있도록 허용합니다.

{ "Version": "2012-10-17", "Statement": [ { "Action": [ "elasticbeanstalk:RebuildEnvironment" ], "Effect": "Allow", "Resource": [ "arn:aws:elasticbeanstalk:us-east-2:123456789012:environment/My App/myenv" ], "Condition": { "StringEquals": { "elasticbeanstalk:InApplication": ["arn:aws:elasticbeanstalk:us-east-2:123456789012:application/My App"] } } } ] }

작업: RequestEnvironmentInfo

environment

InApplication

aws:ResourceTag/key-name(선택 사항)

aws:TagKeys(선택 사항)

다음 정책은 RequestEnvironmentInfo 작업이 애플리케이션 myenv의 환경 My App에 대한 정보를 컴파일할 수 있도록 허용합니다.

{ "Version": "2012-10-17", "Statement": [ { "Action": [ "elasticbeanstalk:RequestEnvironmentInfo" ], "Effect": "Allow", "Resource": [ "arn:aws:elasticbeanstalk:us-east-2:123456789012:environment/My App/myenv" ], "Condition": { "StringEquals": { "elasticbeanstalk:InApplication": ["arn:aws:elasticbeanstalk:us-east-2:123456789012:application/My App"] } } } ] }

작업: RestartAppServer

environment

InApplication

다음 정책은 RestartAppServer 작업이 애플리케이션 myenv의 환경 My App에 대한 애플리케이션 컨테이너 서버를 다시 시작할 수 있도록 허용합니다.

{ "Version": "2012-10-17", "Statement": [ { "Action": [ "elasticbeanstalk:RestartAppServer" ], "Effect": "Allow", "Resource": [ "arn:aws:elasticbeanstalk:us-east-2:123456789012:environment/My App/myenv" ], "Condition": { "StringEquals": { "elasticbeanstalk:InApplication": ["arn:aws:elasticbeanstalk:us-east-2:123456789012:application/My App"] } } } ] }

작업: RetrieveEnvironmentInfo

environment

InApplication

aws:ResourceTag/key-name(선택 사항)

aws:TagKeys(선택 사항)

다음 정책은 RetrieveEnvironmentInfo 작업이 애플리케이션 myenv의 환경 My App에 대한 컴파일된 정보를 검색할 수 있도록 허용합니다.

{ "Version": "2012-10-17", "Statement": [ { "Action": [ "elasticbeanstalk:RetrieveEnvironmentInfo" ], "Effect": "Allow", "Resource": [ "arn:aws:elasticbeanstalk:us-east-2:123456789012:environment/My App/myenv" ], "Condition": { "StringEquals": { "elasticbeanstalk:InApplication": ["arn:aws:elasticbeanstalk:us-east-2:123456789012:application/My App"] } } } ] }

작업: SwapEnvironmentCNAMEs

environment

InApplication(선택 사항)

FromEnvironment(선택 사항)

다음 정책은 SwapEnvironmentCNAMEs 작업이 환경 mysrcenvmydestenv의 CNAME을 전환할 수 있도록 허용합니다.

{ "Version": "2012-10-17", "Statement": [ { "Action": [ "elasticbeanstalk:SwapEnvironmentCNAMEs" ], "Effect": "Allow", "Resource": [ "arn:aws:elasticbeanstalk:us-east-2:123456789012:environment/My App/mysrcenv", "arn:aws:elasticbeanstalk:us-east-2:123456789012:environment/My App/mydestenv" ] } ] }

작업: TerminateEnvironment

environment

InApplication

aws:ResourceTag/key-name(선택 사항)

aws:TagKeys(선택 사항)

다음 정책은 TerminateEnvironment 작업이 애플리케이션 myenv의 환경 My App를 종료할 수 있도록 허용합니다.

{ "Version": "2012-10-17", "Statement": [ { "Action": [ "elasticbeanstalk:TerminateEnvironment" ], "Effect": "Allow", "Resource": [ "arn:aws:elasticbeanstalk:us-east-2:123456789012:environment/My App/myenv" ], "Condition": { "StringEquals": { "elasticbeanstalk:InApplication": ["arn:aws:elasticbeanstalk:us-east-2:123456789012:application/My App"] } } } ] }

작업: UpdateApplication

application

aws:ResourceTag/key-name(선택 사항)

aws:TagKeys(선택 사항)

다음 정책은 UpdateApplication 작업이 애플리케이션 My App의 속성을 업데이트할 수 있도록 허용합니다.

{ "Version": "2012-10-17", "Statement": [ { "Action": [ "elasticbeanstalk:UpdateApplication" ], "Effect": "Allow", "Resource": [ "arn:aws:elasticbeanstalk:us-east-2:123456789012:application/My App" ] } ] }

작업: UpdateApplicationResourceLifecycle

application

aws:ResourceTag/key-name(선택 사항)

aws:TagKeys(선택 사항)

다음 정책은 UpdateApplicationResourceLifecycle 작업이 애플리케이션 My App의 수명 주기 설정을 업데이트할 수 있도록 허용합니다.

{ "Version": "2012-10-17", "Statement": [ { "Action": [ "elasticbeanstalk:UpdateApplicationResourceLifecycle" ], "Effect": "Allow", "Resource": [ "arn:aws:elasticbeanstalk:us-east-2:123456789012:application/My App" ] } ] }

작업: UpdateApplicationVersion

applicationversion

InApplication

aws:ResourceTag/key-name(선택 사항)

aws:TagKeys(선택 사항)

다음 정책은 UpdateApplicationVersion 작업이 애플리케이션 My Version에 있는 애플리케이션 버전 My App의 속성을 업데이트할 수 있도록 허용합니다.

{ "Version": "2012-10-17", "Statement": [ { "Action": [ "elasticbeanstalk:UpdateApplicationVersion" ], "Effect": "Allow", "Resource": [ "arn:aws:elasticbeanstalk:us-east-2:123456789012:applicationversion/My App/My Version" ], "Condition": { "StringEquals": { "elasticbeanstalk:InApplication": ["arn:aws:elasticbeanstalk:us-east-2:123456789012:application/My App"] } } } ] }

작업: UpdateConfigurationTemplate

configurationtemplate

InApplication

aws:ResourceTag/key-name(선택 사항)

aws:TagKeys(선택 사항)

다음 정책은 UpdateConfigurationTemplate 작업이 애플리케이션 My Template에 있는 구성 템플릿 My App의 속성 또는 옵션을 업데이트할 수 있도록 허용합니다.

{ "Version": "2012-10-17", "Statement": [ { "Action": [ "elasticbeanstalk:UpdateConfigurationTemplate" ], "Effect": "Allow", "Resource": [ "arn:aws:elasticbeanstalk:us-east-2:123456789012:configurationtemplate/My App/My Template" ], "Condition": { "StringEquals": { "elasticbeanstalk:InApplication": ["arn:aws:elasticbeanstalk:us-east-2:123456789012:application/My App"] } } } ] }

작업: UpdateEnvironment

environment

InApplication

FromApplicationVersion

FromConfigurationTemplate

aws:ResourceTag/key-name(선택 사항)

aws:TagKeys(선택 사항)

다음 정책은 UpdateEnvironment 작업이 애플리케이션 버전 myenv을 배포하여 애플리케이션 My App의 환경 My Version를 업데이트할 수 있도록 허용합니다.

{ "Version": "2012-10-17", "Statement": [ { "Action": [ "elasticbeanstalk:UpdateEnvironment" ], "Effect": "Allow", "Resource": [ "arn:aws:elasticbeanstalk:us-east-2:123456789012:environment/My App/myenv" ], "Condition": { "StringEquals": { "elasticbeanstalk:InApplication": ["arn:aws:elasticbeanstalk:us-east-2:123456789012:application/My App"], "elasticbeanstalk:FromApplicationVersion": ["arn:aws:elasticbeanstalk:us-east-2:123456789012:applicationversion/My App/My Version"] } } } ] }

작업: UpdateTagsForResourceAddTags

application

applicationversion

configurationtemplate

environment

platform

aws:ResourceTag/key-name(선택 사항)

aws:RequestTag/key-name(선택 사항)

aws:TagKeys(선택 사항)

AddTags 작업은 UpdateTagsForResource API와 연결된 두 가지 가상 작업 중 하나입니다.

다음 정책은 기존 리소스가 AddTags 값과 함께 stage라는 태그를 포함하는 경우에만 test 작업이 해당 기존 리소스의 태그를 수정할 수 있도록 허용합니다.

{ "Version": "2012-10-17", "Statement": [ { "Action": [ "elasticbeanstalk:AddTags" ], "Effect": "Allow", "Resource": "*", "Condition": { "StringEquals": { "aws:ResourceTag/stage": ["test"] } } } ] }

작업: UpdateTagsForResourceRemoveTags

application

applicationversion

configurationtemplate

environment

platform

aws:ResourceTag/key-name(선택 사항)

aws:TagKeys(선택 사항)

RemoveTags 작업은 UpdateTagsForResource API와 연결된 두 가지 가상 작업 중 하나입니다.

다음 정책은 RemoveTags 작업이 기존 리소스에서 stage라는 태그 제거를 요청하는 작업을 거부합니다.

{ "Version": "2012-10-17", "Statement": [ { "Action": [ "elasticbeanstalk:RemoveTags" ], "Effect": "Deny", "Resource": "*", "Condition": { "ForAnyValue:StringEquals": { "aws:TagKeys": ["stage"] } } } ] }

작업: ValidateConfigurationSettings

template

environment

InApplication

aws:ResourceTag/key-name(선택 사항)

aws:TagKeys(선택 사항)

다음 정책은 ValidateConfigurationSettings 작업이 애플리케이션 myenv의 환경 My App에 대한 구성 설정의 유효성을 검사할 수 있도록 허용합니다.

{ "Version": "2012-10-17", "Statement": [ { "Action": [ "elasticbeanstalk:ValidateConfigurationSettings" ], "Effect": "Allow", "Resource": [ "arn:aws:elasticbeanstalk:us-east-2:123456789012:environment/My App/myenv" ], "Condition": { "StringEquals": { "elasticbeanstalk:InApplication": ["arn:aws:elasticbeanstalk:us-east-2:123456789012:application/My App"] } } } ] }

Elastic Beanstalk 작업에 사용되는 조건 키

키를 사용하여 종속성을 표현하거나, 권한을 제한하거나, 작업에 대한 입력 파라미터의 제약 조건을 지정하는 조건을 지정할 수 있습니다. Elastic Beanstalk는 다음과 같은 키를 지원합니다.

InApplication

작업이 작동하는 리소스가 포함된 애플리케이션을 지정합니다.

다음 예제에서는 UpdateApplicationVersion 작업이 애플리케이션 버전 My Version의 속성을 업데이트할 수 있도록 허용합니다. InApplication 조건은 My AppMy Version의 컨테이너로 지정합니다.

{ "Version": "2012-10-17", "Statement": [ { "Action": [ "elasticbeanstalk:UpdateApplicationVersion" ], "Effect": "Allow", "Resource": [ "arn:aws:elasticbeanstalk:us-east-2:123456789012:applicationversion/My App/My Version" ], "Condition": { "StringEquals": { "elasticbeanstalk:InApplication": ["arn:aws:elasticbeanstalk:us-east-2:123456789012:application/My App"] } } } ] }
FromApplicationVersion

애플리케이션 버전을 입력 파라미터의 제약 조건 또는 종속성으로 지정합니다.

다음 예제는 UpdateEnvironment 작업이 애플리케이션 myenv의 환경 My App를 업데이트할 수 있도록 허용합니다. FromApplicationVersion 조건은 애플리케이션 버전 VersionLabel만 환경을 업데이트할 수 있도록 My Version 파라미터를 제한합니다.

{ "Version": "2012-10-17", "Statement": [ { "Action": [ "elasticbeanstalk:UpdateEnvironment" ], "Effect": "Allow", "Resource": [ "arn:aws:elasticbeanstalk:us-east-2:123456789012:environment/My App/myenv" ], "Condition": { "StringEquals": { "elasticbeanstalk:InApplication": ["arn:aws:elasticbeanstalk:us-east-2:123456789012:application/My App"], "elasticbeanstalk:FromApplicationVersion": ["arn:aws:elasticbeanstalk:us-east-2:123456789012:applicationversion/My App/My Version"] } } } ] }
FromConfigurationTemplate

구성 템플릿을 입력 파라미터의 제약 조건 또는 종속성으로 지정합니다.

다음 예제는 UpdateEnvironment 작업이 애플리케이션 myenv의 환경 My App를 업데이트할 수 있도록 허용합니다. FromConfigurationTemplate 조건은 구성 템플릿 TemplateName만 환경을 업데이트할 수 있도록 My Template 파라미터를 제한합니다.

{ "Version": "2012-10-17", "Statement": [ { "Action": [ "elasticbeanstalk:UpdateEnvironment" ], "Effect": "Allow", "Resource": [ "arn:aws:elasticbeanstalk:us-east-2:123456789012:environment/My App/myenv" ], "Condition": { "StringEquals": { "elasticbeanstalk:InApplication": ["arn:aws:elasticbeanstalk:us-east-2:123456789012:application/My App"], "elasticbeanstalk:FromConfigurationTemplate": ["arn:aws:elasticbeanstalk:us-east-2:123456789012:configurationtemplate/My App/My Template"] } } } ] }
FromEnvironment

환경을 입력 파라미터의 제약 조건 또는 종속성으로 지정합니다.

다음 예제에서는 SwapEnvironmentCNAMEs 작업이 My Appmysrcenv로 시작하는 이름의 환경을 제외하고, mydestenvmysrcenvPROD*로 시작하는 이름의 모든 환경에 대해 mydestenvPROD*의 CNAME을 스왑할 수 있도록 허용합니다.

{ "Version": "2012-10-17", "Statement": [ { "Action": [ "elasticbeanstalk:SwapEnvironmentCNAMEs" ], "Effect": "Allow", "Resource": [ "arn:aws:elasticbeanstalk:us-east-2:123456789012:environment/My App/mysrcenv*", "arn:aws:elasticbeanstalk:us-east-2:123456789012:environment/My App/mydestenv*" ], "Condition": { "StringNotLike": { "elasticbeanstalk:FromEnvironment": [ "arn:aws:elasticbeanstalk:us-east-2:123456789012:environment/My App/mysrcenvPROD*", "arn:aws:elasticbeanstalk:us-east-2:123456789012:environment/My App/mydestenvPROD*" ] } } } ] }
FromSolutionStack

솔루션 스택을 입력 파라미터의 제약 조건 또는 종속성으로 지정합니다.

다음 정책은 CreateConfigurationTemplate 작업이 애플리케이션 My Template에서 My Template*(My App)으로 시작하는 이름의 구성 템플릿을 생성할 수 있도록 허용합니다. FromSolutionStack 조건은 솔루션 스택 solutionstack32bit Amazon Linux running Tomcat 7 파라미터의 입력 값으로 허용하도록 이 파라미터를 제한합니다.

{ "Version": "2012-10-17", "Statement": [ { "Action": [ "elasticbeanstalk:CreateConfigurationTemplate" ], "Effect": "Allow", "Resource": [ "arn:aws:elasticbeanstalk:us-east-2:123456789012:configurationtemplate/My App/My Template*" ], "Condition": { "StringEquals": { "elasticbeanstalk:InApplication": ["arn:aws:elasticbeanstalk:us-east-2:123456789012:application/My App"], "elasticbeanstalk:FromSolutionStack": ["arn:aws:elasticbeanstalk:us-east-2::solutionstack/32bit Amazon Linux running Tomcat 7"] } } } ] }
aws:ResourceTag/key-name
aws:RequestTag/key-name
aws:TagKeys

태그 기반 조건을 지정합니다. 자세한 내용은 단원을 참조하십시오태그를 사용하여 Elastic Beanstalk 리소스에 대한 액세스 제어