

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

# ElastiCache에서 저장 시 암호화
<a name="at-rest-encryption"></a>

데이터를 안전하게 보관하기 위해 Amazon ElastiCache 및 Amazon S3에서는 캐시의 데이터에 대한 액세스를 제한하는 다른 방식을 제공합니다. 자세한 내용은 [Amazon VPC 및 ElastiCache 보안](VPCs.md) 및 [Amazon ElastiCache의 Identity and Access Management](IAM.md) 섹션을 참조하세요.

ElastiCache의 저장 시 암호화는 디스크의 데이터를 암호화해 데이터 보안을 강화하는 기능입니다. 이 기능은 서버리스 캐시에서 항상 활성화되어 있습니다. 이 기능이 활성화되어 있으면 다음과 같은 항목이 암호화됩니다.
+ 동기화, 백업 및 스왑 작업 중 디스크
+ Amazon S3에 저장된 백업 

데이터 계층화가 활성화된 클러스터의 SSD(Solid-State Drive)에 저장된 데이터는 항상 암호화됩니다.

 ElastiCache는 기본(서비스 관리형) 저장 데이터 암호화와 [AWS Key Management Service(KMS)](https://docs.aws.amazon.com/kms/latest/developerguide/overview.html)에서 자체 대칭 고객 관리형AWS KMS 키를 사용할 수 있는 기능을 제공합니다. 캐시가 백업되면 암호화 옵션에서 기본 암호화 키를 사용할지 또는 고객 관리 키를 사용할지 선택합니다. 자세한 내용은 [저장 데이터 암호화 활성화](#at-rest-encryption-enable) 단원을 참조하십시오.

**중요**  
기존 노드 기반 Valkey 또는 Redis OSS 클러스터에서 저장 시 암호화를 활성화하려면 복제 그룹에서 백업 및 복원을 실행한 **후** 기존 복제 그룹을 삭제해야 합니다.

저장 시 암호화는 캐시를 생성할 때만 캐시에 대해 활성화할 수 있습니다. 데이터를 암호화 및 해독하기 위해 몇 가지 처리가 필요하기 때문에 미사용 데이터 암호화를 활성화하면 이러한 작업 중 성능에 영향이 있을 수 있습니다. 사용 사례에 대한 성능 영향을 파악하기 위해서는 미사용 데이터 암호화를 사용한 상태와 사용하지 않은 상태에서 데이터를 벤치마크해야 합니다.

**Topics**
+ [미사용 데이터 암호화 조건](#at-rest-encryption-constraints)
+ [AWS KMS에서 고객 관리형 키 사용](#using-customer-managed-keys-for-elasticache-security)
+ [저장 데이터 암호화 활성화](#at-rest-encryption-enable)
+ [참고](#at-rest-encryption-see-also)

## 미사용 데이터 암호화 조건
<a name="at-rest-encryption-constraints"></a>

ElastiCache의 미사용 데이터 암호화를 구현하기 위해 계획하는 경우에는 ElastiCache의 미사용 데이터 암호화에 대한 다음 제약을 염두에 둬야 합니다.
+ 저장 중 암호화는 Valkey 7.2 이후 버전 및 Redis OSS 버전(3.2.6, EOL 예정, [Redis OSS 버전 수명 종료 일정](engine-versions.md#deprecated-engine-versions) 참조) 4.0.10 이후에서 실행 중인 복제 그룹에서 지원됩니다.
+ 미사용 데이터 암호화는 Amazon VPC에서 실행 중인 복제 그룹에 대해서만 지원됩니다.
+ 유휴 데이터 암호화는 다음 노드 유형을 실행하는 복제 그룹에 대해서만 지원됩니다.
  + R7g, R6gd, R6g, R5, R4, R3
  + M7g, M6g, M5, M4, M3
  + T4g, T3, T2
  + C7gn

  자세한 내용은 [지원되는 노드 유형](CacheNodes.SupportedTypes.md) 섹션을 참조하세요.
+ 미사용 데이터 암호화는 `AtRestEncryptionEnabled` 파라미터를 명시적으로 `true`로 설정해 활성화합니다.
+ 복제 그룹을 생성하는 경우에만 복제 그룹에 대해 미사용 데이터 암호화를 활성화할 수 있습니다. 복제 그룹을 수정하는 방법으로는 미사용 데이터 암호화 켜기 또는 끄기로 전환할 수 없습니다. 기존 복제 그룹에 대해 미사용 데이터 암호화를 구현하는 방법에 대한 자세한 내용은 [저장 데이터 암호화 활성화](#at-rest-encryption-enable) 섹션을 참조하세요.
+ 클러스터가 r6gd 패밀리의 노드 유형을 사용하는 경우 미사용 데이터 암호화가 활성화되었는지 여부에 관계없이 SSD에 저장된 데이터가 암호화됩니다.
+ 유휴 시 암호화에 고객 관리형 키를 사용하는 옵션은AWS GovCloud(us-gov-east-1 및 us-gov-west-1) 리전에서 사용할 수 없습니다.
+ 클러스터가 r6gd 패밀리의 노드 유형을 사용하는 경우 SSD에 저장된 데이터는 선택한 고객 관리형AWS KMS 키(또는AWS GovCloud 리전의 서비스 관리형 암호화)로 암호화됩니다.
+ Memcached에서 저장 시 암호화는 서버리스 캐시에서만 지원됩니다.
+ Memcached를 사용할 경우,AWS GovCloud(us-gov-east-1 및 us-gov-west-1) 리전에서는 저장된 데이터 암호화를 위한 고객 관리형 키를 사용할 수 없습니다.

미사용 데이터 암호화를 구현하면 백업 및 노드 동기화 작업 중 성능이 저하될 수 있습니다. 이러한 암호화가 구현 성능에 미치는 영향을 확인하려면 미사용 데이터 암호화와 데이터를 암호화하지 않은 경우를 비교해 벤치마크하세요.

## AWS KMS에서 고객 관리형 키 사용
<a name="using-customer-managed-keys-for-elasticache-security"></a>

ElastiCache는 저장 시 암호화를 위한 대칭 고객 관리형AWS KMS 키(KMS 키)를 지원합니다. 고객 관리형 KMS 키는AWS계정에서 생성, 소유 및 관리하는 암호화 키입니다. 자세한 내용은 *AWS Key Management Service 개발자 안내서*에서 [AWS KMS 키](https://docs.aws.amazon.com/kms/latest/developerguide/concepts.html#root_keys)를 참조하세요. 키를 ElastiCache와 함께 사용하려면 먼저AWS KMS에서 키를 생성해야 합니다.

AWS KMS 루트 키를 생성하는 방법을 알아보려면 *AWS Key Management Service 개발자 안내서*의 [키 생성을 참조하세요](https://docs.aws.amazon.com/kms/latest/developerguide/create-keys.html).

ElastiCache를 사용하면AWS KMS와 통합할 수 있습니다. 자세한 내용은 *AWS Key Management Service 개발자 안내서*의 [권한 부여 사용](https://docs.aws.amazon.com/kms/latest/developerguide/grants.html)을 참조하세요. Amazon ElastiCache와AWS KMS 통합을 활성화하는 데는 고객 작업이 필요하지 않습니다.

`kms:ViaService` 조건 키는AWS KMS 키(KMS 키) 사용을 지정된AWS서비스의 요청으로 제한합니다. ElastiCache에서 `kms:ViaService`를 사용하려면 조건 키 `elasticache.AWS_region.amazonaws.com` 및 `dax.AWS_region.amazonaws.com` 모두에 ViaService 이름을 포함시켜야 합니다. 자세한 내용은 [kms:ViaService](https://docs.aws.amazon.com/kms/latest/developerguide/policy-conditions.html#conditions-kms-via-service) 섹션을 참조하세요.

[AWS CloudTrail](https://docs.aws.amazon.com/awscloudtrail/latest/userguide/cloudtrail-user-guide.html)을 사용하여 Amazon ElastiCache가 사용자 대신AWS Key Management Service에 전송하는 요청을 추적할 수 있습니다. 고객 관리형 키와AWS Key Management Service관련된에 대한 모든 API 호출에는 해당 CloudTrail 로그가 있습니다. [ListGlants](https://docs.aws.amazon.com/kms/latest/APIReference/API_ListGrants.html) KMS API 호출을 통해 ElastiCache가 생성하는 그랜트를 볼 수도 있습니다.

고객 관리형 키를 사용하여 복제 그룹을 암호화하면 복제 그룹에 대한 모든 백업이 다음과 같이 암호화됩니다.
+ 자동 일일 백업은 클러스터와 연결된 고객 관리형 키를 사용하여 암호화됩니다.
+ 복제 그룹을 삭제할 때 생성된 최종 백업은 복제 그룹에 연결된 고객 관리형 키를 사용하여 암호화됩니다.
+ 수동으로 생성한 백업은 복제 그룹에 연결된 KMS 키를 사용하기 위해 기본적으로 암호화됩니다. 다른 고객 관리형 키를 선택하여 이를 재정의할 수 있습니다.
+ 백업 복사는 기본적으로 소스 백업과 연결된 고객 관리형 키를 사용합니다. 다른 고객 관리형 키를 선택하여 이를 재정의할 수 있습니다.

**참고**  
선택한 Amazon S3 버킷으로 백업을 내보낼 때 고객 관리형 키를 사용할 수 없습니다. 그러나 Amazon S3으로 내보낸 모든 백업은 [서버 측 암호화](https://docs.aws.amazon.com/AmazonS3/latest/dev/UsingServerSideEncryption.html)를 사용하여 암호화됩니다. 백업 파일을 새 S3 개체로 복사하고 고객 관리형 KMS 키를 사용하여 암호화하거나, KMS 키를 사용하여 기본 암호화로 설정된 다른 S3 버킷에 파일을 복사하거나, 파일 자체에서 암호화 옵션을 변경할 수 있습니다.
또한 고객 관리형 키를 사용하여 암호화에 고객 관리형 키를 사용하지 않는 복제 그룹에 대해 수동으로 생성한 백업을 암호화할 수도 있습니다. 이 옵션을 사용하면 원래 복제 그룹에서 데이터가 암호화되지 않더라도 KMS 키를 사용하여 Amazon S3에 저장된 백업 파일이 암호화됩니다.
백업에서 복원하면 새 복제 그룹을 생성할 때 사용할 수 있는 암호화 옵션과 유사한 암호화 옵션을 선택할 수 있습니다.
+ 캐시를 암호화하는 데 사용한 키에 대해 키를 삭제하거나, 키를 [비활성화](https://docs.aws.amazon.com/kms/latest/developerguide/enabling-keys.html)하거나, [권한 부여를 취소](https://docs.aws.amazon.com/kms/latest/APIReference/API_RevokeGrant.html)하면 캐시를 복구할 수 없게 됩니다. 즉, 하드웨어 장애 후에는 수정하거나 복구할 수 없습니다.AWS KMS는 최소 7일의 대기 기간이 지난 후에만 루트 키를 삭제합니다. 키를 삭제한 후 다른 고객 관리형 키를 사용하여 보관용 백업을 생성할 수 있습니다.
+ 자동 키 교체는AWS KMS 루트 키의 속성을 보존하므로 ElastiCache 데이터에 액세스하는 기능에 영향을 주지 않습니다. 암호화된 Amazon ElastiCache 캐시는 새로운 루트 키 생성 및 기존 키에 대한 모든 참조를 업데이트하는 수동 키 교체를 지원하지 않습니다. 자세한 내용은 *AWS Key Management Service 개발자 안내서*의 [AWS KMS 키 교체](https://docs.aws.amazon.com/kms/latest/developerguide/rotate-keys.html)를 참조하세요.
+ KMS 키를 사용하여 ElastiCache 캐시를 암호화하려면 캐시당 1개의 권한이 필요합니다. 이 권한은 캐시의 수명 기간 동안 사용됩니다. 또한 백업 생성 중에는 백업당 하나의 권한이 사용됩니다. 이 권한은 백업이 생성되면 폐기됩니다.
+ AWS KMS 권한 부여 및 제한에 대한 자세한 내용은 *AWS Key Management Service 개발자 안내서*의 [제한을 참조하세요](https://docs.aws.amazon.com/kms/latest/developerguide/limits.html).

## 저장 데이터 암호화 활성화
<a name="at-rest-encryption-enable"></a>

모든 서버리스 캐시에는 저장 시 암호화가 활성화되어 있습니다.

노드 기반 클러스터를 생성할 때 `AtRestEncryptionEnabled` 파라미터를 `true`로 설정하여 저장 시 암호화를 활성화할 수 있습니다. 기존 복제 그룹에 대해서는 미사용 데이터 암호화를 설정할 수 없습니다.

 ElastiCache 캐시를 생성할 때 저장 시 암호화를 활성화할 수 있습니다.AWS CLI, 또는 ElastiCache API AWS Management Console를 사용하여이 작업을 수행할 수 있습니다.

캐시를 생성할 때 다음 옵션 중 하나를 선택할 수 있습니다.
+ **기본값** – 이 옵션은 저장된 서비스 관리 암호화를 사용합니다.
+ **고객 관리형 키 ** -이 옵션을 사용하면 저장 시 암호화를 위해AWS KMS의 키 ID/ARN을 제공할 수 있습니다.

AWS KMS 루트 키를 생성하는 방법을 알아보려면 Key *AWS Management Service 개발자 안내서의 키* [생성을 참조하세요](https://docs.aws.amazon.com/kms/latest/developerguide/create-keys.html).

**Contents**
+ [를 사용하여 미사용 데이터 암호화 활성화AWS Management Console](#at-rest-encryption-enable-con)
+ [를 사용하여 미사용 데이터 암호화 활성화AWS CLI](#at-rest-encryption-enable-cli)

### 기존 노드 기반 Valkey 또는 Redis OSS 클러스터에 대해 저장 시 암호화 활성화
<a name="at-reset-encryption-enable-existing-cluster"></a>

Valkey 또는 Redis OSS 복제 그룹을 생성할 때에만 미사용 데이터 암호화를 활성화할 수 있습니다. 미사용 데이터 암호화를 활성화하려는 기존 복제 그룹이 있으면 다음 작업을 수행하세요.

**기존 복제 그룹에 대해 미사용 데이터 암호화를 활성화하려면**

1. 기존 복제 그룹의 백업을 수동으로 생성합니다. 자세한 내용은 [수동 백업 지원](backups-manual.md)을 참조하세요.

1. 백업에서 복원하여 새 복제 그룹을 생성합니다. 새 복제 그룹에 대해 미사용 데이터 암호화를 활성화합니다. 자세한 내용은 [백업에서 새 캐시로 복원](backups-restoring.md)을 참조하세요.

1. 새 복제 그룹을 가리키도록 애플리케이션에서 엔드포인트를 업데이트합니다.

1. 이전 복제 그룹을 삭제합니다. 자세한 내용은 [ElastiCache에서 클러스터 삭제](Clusters.Delete.md) 또는 [복제 그룹 삭제](Replication.DeletingRepGroup.md)을 참조하세요.

### 를 사용하여 미사용 데이터 암호화 활성화AWS Management Console
<a name="at-rest-encryption-enable-con"></a>

#### 서버리스 캐시에서 저장 시 암호화 활성화(콘솔)
<a name="at-rest-encryption-enable-con-serverless"></a>

모든 서버리스 캐시에는 저장 시 암호화가 활성화되어 있습니다. 기본적으로AWS소유 KMS 키는 데이터를 암호화하는 데 사용됩니다. 자체AWS KMS키를 선택하려면 다음을 선택합니다.
+ **기본 설정** 섹션을 펼칩합니다.
+ **기본 설정** 섹션에서 **기본 설정 사용자 지정**을 선택합니다.
+ **보안** 섹션에서 **보안 설정 사용자 지정**을 선택합니다.
+ **암호화 키** 설정에서 **고객 관리형 CMK**를 선택합니다.
+ **AWS KMS키** 설정에서 키를 선택합니다.

#### 노드 기반 클러스터에 대해 저장 시 암호화 활성화(콘솔)
<a name="at-rest-encryption-enable-con-self-designed"></a>

자체 캐시를 설계할 때 '간편한 생성' 메서드를 사용하는 '개발 및 테스트' 및 '프로덕션' 구성에서는 **기본** 키를 사용하여 저장 시 암호화가 활성화됩니다. 구성을 직접 선택할 때 다음과 같이 진행합니다.
+ 엔진 버전으로 버전 3.2.6, 4.0.10 또는 이후 버전을 선택합니다.
+ **저장 시 암호화**의 **활성화** 옵션 옆에서 확인란을 클릭합니다.
+ **기본 키** 또는 **고객 관리형 CMK**를 선택합니다.

단계별 절차의 경우 다음을 참조하세요.
+ [Valkey(클러스터 모드 비활성화됨) 클러스터 생성(콘솔)](SubnetGroups.designing-cluster-pre.valkey.md#Clusters.Create.CON.valkey-gs)
+ [Valkey 또는 Redis OSS(클러스터 모드 활성화됨) 클러스터 생성(콘솔)](Clusters.Create.md#Clusters.Create.CON.RedisCluster)

### 를 사용하여 미사용 데이터 암호화 활성화AWS CLI
<a name="at-rest-encryption-enable-cli"></a>

를 사용하여 Valkey 또는 Redis OSS 클러스터를 생성할 때 미사용 데이터 암호화를 활성화하려면 복제 그룹을 생성할 때 *--at-rest-encryption-enabled* 파라미터를AWS CLI사용합니다.

#### Valkey 또는 Redis OSS(클러스터 모드 비활성화됨) 클러스터에 대해 미사용 데이터 암호화 활성화(CLI)
<a name="at-rest-encryption-enable-cli-redis-classic-rg"></a>

다음 작업은 세 개의 노드(*--num-cache-clusters*) 즉, 기본 한 개와 읽기 전용 복제본 두 개가 있는 Valkey 또는 Redis OSS(클러스터 모드 비활성화됨) 복제 그룹 `my-classic-rg`를 생성합니다. 미사용 데이터 암호화가 이 복제 그룹에 대해 활성화되어 있습니다(*--at-rest-encryption-enabled*).

다음 파라미터와 해당 값은 복제 그룹에 대한 암호화를 활성화하는 데 필요합니다.

**키 파라미터**
+ **--engine** - `valkey` 또는 `redis`이어야 합니다.
+ **--engine-version** - 엔진이 Redis OSS인 경우 3.2.6, 4.0.10 또는 그 이상이어야 합니다.
+ **--at-rest-encryption-enabled** - 미사용 데이터 암호화를 활성화하기 위해 필요합니다.

**Example 1: 복제본이 있는 Valkey 또는 Redis OSS(클러스터 모드 비활성화됨) 클러스터**  
Linux, macOS, Unix의 경우:  

```
aws elasticache create-replication-group \
    --replication-group-id my-classic-rg \
    --replication-group-description "3 node replication group" \
    --cache-node-type cache.m4.large \
    --engine redis \    
    --at-rest-encryption-enabled \  
    --num-cache-clusters 3
```
Windows의 경우:  

```
aws elasticache create-replication-group ^
    --replication-group-id my-classic-rg ^
    --replication-group-description "3 node replication group" ^
    --cache-node-type cache.m4.large ^
    --engine redis ^    
    --at-rest-encryption-enabled ^  
    --num-cache-clusters 3 ^
```

추가 정보는 다음을 참조하세요.
+ [Valkey 또는 Redis OSS(클러스터 모드 비활성화됨) 복제 그룹을 처음부터 새로 생성(AWS CLI)](Replication.CreatingReplGroup.NoExistingCluster.Classic.md#Replication.CreatingReplGroup.NoExistingCluster.Classic.CLI)
+ [create-replication-group](https://docs.aws.amazon.com/cli/latest/reference/elasticache/create-replication-group.html)

 

#### Valkey 또는 Redis OSS(클러스터 모드 활성화됨)에 대한 클러스터에서 미사용 데이터 암호화 활성화(CLI)
<a name="at-rest-encryption-enable-cli-clustered-redis"></a>

다음 작업은 3개의 노드 그룹 또는 샤드(*--num-node-groups*)가 있는 Valkey 또는 Redis OSS(클러스터 모드 활성화됨) 복제 그룹 `my-clustered-rg`를 생성합니다. 각 복제 그룹에는 기본 복제본 한 개와 읽기 전용 복제본 두 개, 이렇게 세 개의 노드가 있습니다(*--replicas-per-node-group*). 미사용 데이터 암호화가 이 복제 그룹에 대해 활성화되어 있습니다(*--at-rest-encryption-enabled*).

다음 파라미터와 해당 값은 복제 그룹에 대한 암호화를 활성화하는 데 필요합니다.

**키 파라미터**
+ **--engine** - `valkey` 또는 `redis`이어야 합니다.
+ **--engine-version** - 엔진이 Redis OSS인 경우 4.0.10 또는 그 이상이어야 합니다.
+ **--at-rest-encryption-enabled** - 미사용 데이터 암호화를 활성화하기 위해 필요합니다.
+ **--cache-parameter-group** - 이 클러스터 모드가 활성화된 복제 그룹을 만들려면 `default-redis4.0.cluster.on` 또는 이 클러스터에서 파생된 클러스터여야 합니다.

**Example 2: Valkey 또는 Redis OSS(클러스터 모드 활성화됨) 클러스터**  
Linux, macOS, Unix의 경우:  

```
aws elasticache create-replication-group \
   --replication-group-id my-clustered-rg \
   --replication-group-description "redis clustered cluster" \
   --cache-node-type cache.m3.large \
   --num-node-groups 3 \
   --replicas-per-node-group 2 \
   --engine redis \
   --engine-version 6.2 \
   --at-rest-encryption-enabled \
   --cache-parameter-group default.redis6.x.cluster.on
```
Windows의 경우:  

```
aws elasticache create-replication-group ^
   --replication-group-id my-clustered-rg ^
   --replication-group-description "redis clustered cluster" ^
   --cache-node-type cache.m3.large ^
   --num-node-groups 3 ^
   --replicas-per-node-group 2 ^
   --engine redis ^
   --engine-version 6.2 ^
   --at-rest-encryption-enabled ^
   --cache-parameter-group default.redis6.x.cluster.on
```

추가 정보는 다음을 참조하세요.
+ [처음부터 Valkey 또는 Redis OSS(클러스터 모드 활성화됨) 복제 그룹 만들기(AWS CLI)](Replication.CreatingReplGroup.NoExistingCluster.Cluster.md#Replication.CreatingReplGroup.NoExistingCluster.Cluster.CLI)
+ [create-replication-group](https://docs.aws.amazon.com/cli/latest/reference/elasticache/create-replication-group.html)

## 참고
<a name="at-rest-encryption-see-also"></a>
+ [Amazon VPC 및 ElastiCache 보안](VPCs.md)
+ [Amazon ElastiCache의 Identity and Access Management](IAM.md)