

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

# 보안
<a name="security-1"></a>

AWS 인프라에 시스템을 빌드하면 보안 책임은 사용자와 AWS가 분담합니다. 이 [공동 책임 모델](https://aws.amazon.com/compliance/shared-responsibility-model/)은 운영 부담을 덜어줍니다. AWS가 호스트 운영 체제, 가상화 계층, 서비스 운영 시설의 물리적 보안을 포함한 구성 요소를 운영, 관리, 제어하기 때문입니다. AWS 보안에 대한 자세한 내용은 [AWS 클라우드 보안](https://aws.amazon.com/security/)을 참조하세요.

## KMS
<a name="aws-kms"></a>

솔루션은 SNS 주제 및 DynamoDB 테이블에 대한 서버 측 암호화를 구성하는 데 사용되는 AWS 관리형 고객 관리형 키를 생성합니다.

## Amazon IAM
<a name="amazon-iam"></a>

솔루션의 Lambda 함수에는 허브 계정 리소스에 액세스하고 Systems Manager 파라미터를 가져오거나 입력하기 위한 액세스, CloudWatch 로그 그룹에 대한 액세스, AWS KMS 키 암호화/복호화 및 SNS 메시지 게시 권한이 필요합니다. 또한 인스턴스 스케줄러는 EC2, RDS, Autoscaling resurces, DB 인스턴스, 인스턴스 속성 수정 및 해당 리소스에 대한 태그 업데이트에 대한 액세스 권한을 제공하는 모든 관리형 계정에서 예약 역할을 생성합니다. 필요한 모든 권한은 솔루션 템플릿의 일부로 생성된 Lambda 서비스 역할에 대한 솔루션에서 제공됩니다.

배포 시 인스턴스 스케줄러는 배포된 허브 템플릿에서 Lambda를 특정 예약해야만 수임할 수 있는 스케줄러 역할과 함께 각 Lambda 함수에 대해 범위가 축소된 IAM 역할을 배포합니다. 이러한 일정 역할은 패턴 `{namespace}-Scheduler-Role` 및 `{namespace}-ASG-Scheduling-Role`을 따르는 이름을 갖습니다.

각 서비스 역할에 제공되는 권한에 대한 자세한 내용은 [CloudFormation 템플릿](aws-cloudformation-templates.md)을 참조하세요.

## 암호화된 EC2 EBS 볼륨
<a name="encrypted-ec2-ebs-volumes"></a>

AWS KMS로 암호화된 EBS 볼륨에 연결된 EC2 인스턴스를 예약할 때는 Instance Scheduler에 연결된 AWS KMS 키(들)를 사용할 수 있는 권한을 부여해야 합니다. 이렇게 하면 Amazon EC2가 시작된 함수 중에 연결된 EBS 볼륨을 복호화할 수 있습니다. 키를 사용해 이 권한을 EC2 인스턴스와 동일한 계정의 예약 역할에 부여해야 합니다.

인스턴스 스케줄러에서 AWS KMS 키를 사용할 수 있는 권한을 부여하려면 키(들)를 사용하여 EC2 인스턴스(들)와 동일한 계정의 인스턴스 스케줄러 스택(허브 또는 스포크)에 AWS KMS 키의 ARN을 추가합니다.

 **EC2용 KMS 키 ARN** 

![\[image3\]](http://docs.aws.amazon.com/ko_kr/solutions/latest/instance-scheduler-on-aws/images/image3.png)


이렇게 하면 다음과 같은 정책이 자동으로 생성되어 해당 계정의 예약 역할에 추가됩니다.

```
 {

   "Version": "2012-10-17",		 	 	 
   "Statement": [
      {
        "Condition": {
            "StringLike": {
               "kms:ViaService": "ec2.*.amazonaws.com"
         },
        "Null": {
              "kms:EncryptionContextKeys": "false",
              "kms:GrantOperations": "false"
         },
        "ForAllValues:StringEquals": {
            "kms:EncryptionContextKeys": [
                 "aws:ebs:id"
              ],
              "kms:GrantOperations": [
                 "Decrypt"
              ]
        },
        "Bool": {
                 "kms:GrantIsForAWSResource": "true"
              }
        },
        "Action": "kms:CreateGrant",
        "Resource": [
             "Your-KMS-ARNs-Here"
        ],
        "Effect": "Allow"
      }
   ]
 }
```

## EC2 라이선스 관리자
<a name="ec2-license-manager"></a>

AWS License Manager에서 관리되는 EC2 인스턴스를 예약할 때 연결된 라이선스 구성을 사용할 수 있는 권한을 인스턴스 스케줄러에 부여해야 합니다. 이를 통해 솔루션은 라이선스 규정 준수를 유지하면서 인스턴스를 올바르게 시작하고 중지할 수 있습니다. License Manager를 사용하여 EC2 인스턴스(들)와 동일한 계정의 예약 역할에이 권한을 부여해야 합니다.

인스턴스 스케줄러와 함께 AWS License Manager를 사용할 수 있는 권한을 부여하려면 License Manager를 사용하여 EC2 인스턴스(들)와 동일한 계정의 인스턴스 스케줄러 스택(허브 또는 스포크)에 License Manager 구성 ARNs을 추가합니다.

 **EC2용 License Manager 구성 ARNs ** 

![\[라이선스 관리자 cfn 파라미터\]](http://docs.aws.amazon.com/ko_kr/solutions/latest/instance-scheduler-on-aws/images/license-manager-cfn-param.png)


이렇게 하면 다음과 같은 정책이 자동으로 생성되어 해당 계정의 예약 역할에 추가됩니다.

```
 {

   "Version": "2012-10-17",		 	 	 
   "Statement": [
      {
        "Action": "ec2:StartInstances",
        "Resource": [
             "Your-License-Manager-ARNs-Here"
        ],
        "Effect": "Allow"
      }
   ]
 }
```

License Manager 권한에 대한 자세한 내용은 [AWS License Manager 사용 설명서의 AWS License Manager에 대한 자격 증명 및 액세스 관리를](https://docs.aws.amazon.com/license-manager/latest/userguide/license-manager-iam.html) 참조하세요. ** 

```
```