

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

# 관리형 정책에 기반한 정책 예제
<a name="ExamplePolicies_AEB"></a>

이 섹션에서는에 대한 사용자 액세스를 제어하는 방법을 설명하고 일반적인 시나리오에 필요한 액세스를 제공하는 예제 정책을 AWS Elastic Beanstalk 포함합니다. 이 정책은 Elastic Beanstalk 관리형 정책에서 파생되었습니다. 관리형 정책을 사용자 및 그룹에 연결하는 자세한 내용은 [Elastic Beanstalk 사용자 정책 관리](AWSHowTo.iam.managed-policies.md)을 참조하십시오.

이 시나리오에서 Example Corp.은 회사 웹 사이트를 담당하는 세 팀(인프라를 관리하는 관리자, 웹사이트용 소프트웨어를 구축하는 개발자, 웹 사이트를 테스트하는 QA 팀)으로 구성된 소프트웨어 회사입니다. Elastic Beanstalk 리소스에 대한 권한 관리를 지원하기 위해 Example Corp.은 해당되는 각 팀(관리자, 개발자, 테스터)의 구성원이 소속된 세 그룹을 만듭니다. Example Corp.의 바람은 Admins 그룹이 모든 애플리케이션, 환경 및 기본 리소스에 액세스하여 모든 Elastic Beanstalk 자산을 만들고, 문제를 해결하고 삭제하는 것입니다. 개발자에게는 모든 Elastic Beanstalk 자산을 보고 애플리케이션 버전을 생성 및 배포하기 위한 권한이 필요합니다. 개발자는 새 애플리케이션 또는 환경을 생성할 수 없거나 실행 중인 환경을 종료할 수 없습니다. 테스터는 모든 Elastic Beanstalk 리소스를 확인하여 애플리케이션을 모니터링하고 테스트해야 합니다. 테스터는 어떠한 Elastic Beanstalk 리소스도 변경할 수 없어야 합니다.

다음 정책 예제는 각 그룹에 대한 필수 권한을 제공합니다.

## 예제 1: 관리자 그룹 – 모든 Elastic Beanstalk 및 관련 서비스 API
<a name="ExamplePolicies_AEB.admin"></a>

다음 정책은 Elastic Beanstalk를 사용하는 데 필요한 모든 작업에 대한 권한을 사용자에게 부여합니다. 이 정책을 통해 Elastic Beanstalk는 다음 서비스에서 사용자를 대신해 리소스를 프로비저닝하고 관리할 수 있습니다. Elastic Beanstalk는 환경을 생성할 때 이러한 추가 서비스를 사용하여 기본 리소스를 프로비저닝합니다.
+  - Amazon Elastic Compute Cloud
+ Elastic Load Balancing
+ Auto Scaling
+ Amazon CloudWatch
+ Amazon Simple Storage Service
+  Amazon Simple Notification Service
+ Amazon Relational Database Service
+ CloudFormation

이 정책은 예입니다. Elastic Beanstalk가 애플리케이션과 환경을 관리하는 데 사용하는 AWS 서비스에 대한 광범위한 권한을 부여합니다. 예를 들어는 AWS Identity and Access Management (IAM) 사용자가 AWS 계정의 모든 Amazon EC2 리소스에 대해 작업을 수행할 수 있도록 `ec2:*` 허용합니다. 이 권한은 Elastic Beanstalk에서 사용하는 리소스에 국한되지 않습니다. 모범 사례대로 하려면, 개별 사용자에게 각자의 업무를 수행하는 데 필요한 권한만 부여해야 합니다.

------
#### [ JSON ]

****  

```
{
  "Version":"2012-10-17",		 	 	 
  "Statement" : [
    {
      "Effect" : "Allow",
      "Action" : [
        "elasticbeanstalk:*",
        "ec2:*",
        "elasticloadbalancing:*",
        "autoscaling:*",
        "cloudwatch:*",
        "s3:*",
        "sns:*",
        "rds:*",
        "cloudformation:*"
      ],
      "Resource" : "*"
    }
  ]
}
```

------

## 예제 2: 개발자 그룹 – 권한이 높은 작업을 제외한 모든 작업
<a name="ExamplePolicies_AEB.dev"></a>

다음 정책 예는 애플리케이션과 환경을 생성하는 권한을 거부하고 다른 모든 Elastic Beanstalk 작업은 허용합니다.

이 정책은 예입니다. Elastic Beanstalk가 애플리케이션과 환경을 관리하는 데 사용하는 AWS 제품에 대한 광범위한 권한을 부여합니다. 예를 들어, IAM 사용자는 `ec2:*`을(를) 사용하여 AWS 계정의 모든 Amazon EC2 리소스에 대해 모든 작업을 수행할 수 있습니다. 이 권한은 Elastic Beanstalk에서 사용하는 리소스에 국한되지 않습니다. 모범 사례대로 하려면, 개별 사용자에게 각자의 업무를 수행하는 데 필요한 권한만 부여해야 합니다.

------
#### [ JSON ]

****  

```
{
  "Version":"2012-10-17",		 	 	 
  "Statement" : [
    {
      "Action" : [
        "elasticbeanstalk:CreateApplication",
        "elasticbeanstalk:CreateEnvironment",
        "elasticbeanstalk:DeleteApplication",
        "elasticbeanstalk:RebuildEnvironment",
        "elasticbeanstalk:SwapEnvironmentCNAMEs",
        "elasticbeanstalk:TerminateEnvironment"],
      "Effect" : "Deny",
      "Resource" : "*"
    },
    {
      "Action" : [
        "elasticbeanstalk:*",
        "ec2:*",
        "elasticloadbalancing:*",
        "autoscaling:*",
        "cloudwatch:*",
        "s3:*",
        "sns:*",
        "rds:*",
        "cloudformation:*"],
      "Effect" : "Allow",
      "Resource" : "*"
    }
  ]
}
```

------



## 예제 3: 테스터 – 보기 전용
<a name="ExamplePolicies_AEB.tester"></a>

다음 정책 예제는 모든 애플리케이션, 애플리케이션 버전, 이벤트 및 환경에 대한 읽기 전용 액세스를 허용합니다. 어떤 작업도 수행할 수 없습니다.

------
#### [ JSON ]

****  

```
{
  "Version":"2012-10-17",		 	 	 
  "Statement" : [
    {
      "Effect" : "Allow",
      "Action" : [
        "elasticbeanstalk:Check*",
        "elasticbeanstalk:Describe*",
        "elasticbeanstalk:List*",
        "elasticbeanstalk:RequestEnvironmentInfo",
        "elasticbeanstalk:RetrieveEnvironmentInfo",
        "ec2:Describe*",
        "elasticloadbalancing:Describe*",
        "autoscaling:Describe*",
        "cloudwatch:Describe*",
        "cloudwatch:List*",
        "cloudwatch:Get*",
        "s3:Get*",
        "s3:List*",
        "sns:Get*",
        "sns:List*",
        "rds:Describe*",
        "cloudformation:Describe*",
        "cloudformation:Get*",
        "cloudformation:List*",
        "cloudformation:Validate*",
        "cloudformation:Estimate*"
      ],
      "Resource" : "*"
    }
  ]
}
```

------