

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

# Amazon Comprehend에서의 KMS 암호화
<a name="kms-in-comprehend"></a>

Amazon Comprehend는 AWS Key Management Service (AWS KMS)와 함께 작동하여 데이터에 대한 향상된 암호화를 제공합니다. Amazon S3는 텍스트 분석, 주제 모델링 또는 사용자 정의 Amazon Comprehend 작업을 생성할 때 사용자가 입력 문서를 암호화 할 수 있게 하였습니다. 와 통합 AWS KMS 하면 Start\$1 및 Create\$1 작업의 스토리지 볼륨에 있는 데이터를 암호화하고 자체 KMS 키를 사용하여 Start\$1 작업의 출력 결과를 암호화할 수 있습니다.

의 경우 AWS Management Console Amazon Comprehend는 자체 KMS 키로 사용자 지정 모델을 암호화합니다. 의 경우 AWS CLI Amazon Comprehend는 자체 KMS 키 또는 제공된 고객 관리형 키(CMK)를 사용하여 사용자 지정 모델을 암호화할 수 있습니다.

**를 사용한 KMS 암호화 AWS Management Console** 

콘솔을 사용하면 두 가지 암호화 옵션을 사용할 수 있습니다.
+ 볼륨 암호화
+ 출력 결과 암호화

**볼륨 암호화를 활성화하려면**

1.  **작업 설정** 에서 **작업 암호화** 옵션을 선택합니다.  
![\[의 KMS 작업 암호화 AWS Management Console\]](http://docs.aws.amazon.com/ko_kr/comprehend/latest/dg/images/kms-1.png)

1. KMS CMK(고객 관리 키)가 현재 사용 중인 계정의 키인지 아니면 다른 계정의 키인지 선택합니다. 현재 계정의 키를 사용하려면 **KMS 키 ID**에서 키 별칭을 선택합니다. 다른 계정의 키를 사용하려면 키의 ARN을 입력해야 합니다.

**출력 결과 암호화를 활성화하려면**

1.  **출력 설정**에서 **암호화** 옵션을 선택합니다.  
![\[의 KMS 출력 결과 암호화 AWS Management Console\]](http://docs.aws.amazon.com/ko_kr/comprehend/latest/dg/images/kms-2.png)

1. CMK(고객 관리 키)가 현재 사용 중인 계정의 키인지 아니면 다른 계정의 키인지 선택합니다. 현재 계정의 키를 사용하려면 **KMS 키 ID**에서 키 ID를 선택합니다. 다른 계정의 키를 사용하려면 키의 ARN을 입력해야 합니다.

이전에 S3 입력 문서에 SSE-KMS를 사용하여 암호화를 설정하였다면 추가 보안을 제공할 수 있습니다. 하지만 이렇게 하면 사용한 IAM 역할은 입력 문서를 암호화하는 데 사용되는 KMS 키에 대한 `kms:Decrypt` 권한을 가지고 있어야 합니다. 자세한 내용은 [KMS 암호화를 사용하는 데 필요한 권한](security_iam_id-based-policy-examples.md#auth-kms-permissions)을 참조하십시오.

**API 작업을 사용한 KMS 암호화** 

모든 Amazon Comprehend `Start*`과 `Create*` API 작업은 KMS의 암호화된 입력 문서를 지원합니다. `Describe*`과 `List*` API 작업은 원래 작업이 `KmsKeyId`을 입력으로 사용했다면 `OutputDataConfig`에 `KmsKeyId`를 반환합니다. 입력으로 사용되지 않았다면 반환되지 않습니다.

이는 [StartEntitiesDetectionJob](https://docs.aws.amazon.com/comprehend/latest/APIReference/API_StartEntitiesDetectionJob.html) 작업을 사용하여 다음 AWS CLI 예제에서 확인할 수 있습니다.

 

```
aws comprehend start-entities-detection-job \
     --region region \
     --data-access-role-arn "data access role arn" \    
     --entity-recognizer-arn "entity recognizer arn" \
     --input-data-config "S3Uri=s3://Bucket Name/Bucket Path" \    
     --job-name job name \
     --language-code en \
     --output-data-config "KmsKeyId=Output S3 KMS key ID" "S3Uri=s3://Bucket Name/Bucket Path/" \
     --volumekmskeyid "Volume KMS key ID"
```

**참고**  
이 예제는 Unix, Linux 및 macOS용 형식으로 표시됩니다. Windows의 경우 각 줄의 끝에 있는 백슬래시(\$1) Unix 연속 문자를 캐럿(^)으로 바꿉니다.

**API 작업을 사용한 고객 관리 키 (CMK) 암호화** 

Amazon Comprehend 사용자 지정 모델 API 작업 `CreateEndpoint`, `CreateDocumentClassifier`및는 `CreateEntityRecognizer`를 통해 고객 관리형 키를 사용한 암호화를 지원합니다 AWS CLI.

보안 주체가 고객 관리 키를 사용하거나 관리하도록 허용하려면 IAM 정책이 필요합니다. 이 키는 정책 설명의 `Resource` 요소에 지정되어 있습니다. 가장 좋은 방법은 정책 설명에 고객 관리형 키를 보안 주체만 사용해야 하는 키로 제한하는 것입니다.

다음 AWS CLI 예제에서는 [CreateEntityRecognizer](https://docs.aws.amazon.com/comprehend/latest/APIReference/API_CreateEntityRecognizer.html) 작업을 사용하여 모델 암호화를 사용하여 사용자 지정 개체 인식기를 생성합니다.



```
aws comprehend create-entity-recognizer \
     --recognizer-name name \
     --data-access-role-arn data access role arn \    
     --language-code en \
     --model-kms-key-id Model KMS Key ID \ 
     --input-data-config file:///path/input-data-config.json
```

**참고**  
이 예제는 Unix, Linux 및 macOS용 형식으로 표시됩니다. Windows의 경우 각 줄의 끝에 있는 백슬래시(\$1) Unix 연속 문자를 캐럿(^)으로 바꿉니다.