

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

# 리전 간 AWS Secrets Manager 보안 암호 복제
<a name="replicate-secrets"></a>

여러에 보안 암호를 복제 AWS 리전 하여 해당 리전에 분산된 애플리케이션을 지원하여 리전별 액세스 및 짧은 지연 시간 요구 사항을 충족할 수 있습니다. 나중에 필요한 경우 [복제본 보안 암호를 독립 실행형으로 승격](standalone-secret.md)한 다음 독립적으로 복제하도록 설정할 수 있습니다. Secrets Manager는 지정된 리전에 걸쳐 태그 및 리소스 정책과 같은 암호화된 보안 암호 데이터 및 메타데이터를 복제합니다.

복제된 암호의 ARN 리전을 제외하고 기본 암호와 동일합니다. 예를 들면 다음과 같습니다.
+ 기본 보안 암호: `arn:aws:secretsmanager:Region1:123456789012:secret:MySecret-a1b2c3`
+ 복제본 보안 암호: `arn:aws:secretsmanager:Region2:123456789012:secret:MySecret-a1b2c3`

복제본 보안 암호에 대한 요금 정보는 [AWS Secrets Manager 요금](https://aws.amazon.com/secrets-manager/pricing/)을 참조하세요.

다른 리전으로 복제된 소스 데이터베이스에 대한 데이터베이스 보안 인증 정보를 저장하면 보안 암호에 해당 소스 데이터베이스에 대한 연결 정보가 포함됩니다. 그 후에 보안 암호를 복제하면 복제본은 소스 보안 암호의 복사본이 되며 동일한 연결 정보를 포함합니다. 리전 연결 정보를 위해 보안 암호에 추가로 키/값 쌍을 추가할 수 있습니다.

기본 보안 암호에 대한 교체를 켜면 Secrets Manager가 기본 리전의 보안 암호를 교체하고 새 보안 암호 값이 연결된 모든 복제본 보안 암호에 전파됩니다. 모든 복제본 보안 암호에 대해 개별적인 교체를 관리할 필요가 없습니다.

활성화된 모든 AWS 리전에서 보안 암호를 복제할 수 있습니다. 그러나 AWS GovCloud (US) 또는 중국 AWS 리전과 같은 특수 리전에서 Secrets Manager를 사용하는 경우 이러한 특수 AWS 리전 내에서만 보안 암호와 복제본을 구성할 수 있습니다. 활성화된 AWS 리전의 보안 암호를 특수 리전에 복제하거나 특수 리전의 보안 암호를 상용 리전에 복제할 수 없습니다.

보안 암호를 다른 리전으로 복제하려면 먼저 해당 리전을 사용해야 합니다. 자세한 내용은 [AWS 리전 관리](https://docs.aws.amazon.com/general/latest/gr/rande-manage.html#rande-manage-enable)를 참조하세요.

보안 암호가 저장된 리전의 Secrets Manager 엔드포인트를 호출하여 복제하지 않고 여러 리전에서 보안 암호를 사용할 수 있습니다. 엔드포인트 목록은 [AWS Secrets Manager 엔드포인트](asm_access.md#endpoints) 섹션을 참조하세요. 복제를 사용하여 워크로드의 복원력을 개선하려면 [의 재해 복구(DR) 아키텍처 AWS, I부: 클라우드의 복구 전략을](https://aws.amazon.com/blogs/architecture/disaster-recovery-dr-architecture-on-aws-part-i-strategies-for-recovery-in-the-cloud/) 참조하세요.

Secrets Manager는 암호를 복제할 때 CloudTrail 로그 항목을 생성합니다. 자세한 내용은 [를 사용하여 AWS Secrets Manager 이벤트 로깅 AWS CloudTrail](monitoring-cloudtrail.md) 단원을 참조하십시오.

**보안 암호를 다른 리전으로 복제하려면(콘솔)**

1. [https://console.aws.amazon.com/secretsmanager/](https://console.aws.amazon.com/secretsmanager/)에서 Secrets Manager 콘솔을 엽니다.

1. 보안 암호 목록에서 보안 암호를 선택합니다.

1. 보안 암호 세부 정보 페이지의 **복제** 탭에서 다음 중 하나를 수행합니다.
   + 보안 암호가 복제되지 않은 경우에는 **보안 암호 복제(Replicate secret)**를 선택합니다.
   + 보안 암호가 복제된 경우에는 **보안 암호 복제(Replicate secret)** 섹션에서 **리전 추가(Add Region)**를 선택합니다.

1. **복제본 리전 추가(Add replica regions)** 대화 상자에서 다음을 수행합니다.

   1. **AWS 리전(Region)**에서 보안 암호를 복제하고자 하는 리전을 선택합니다.

   1. (선택 사항) **암호화 키(Encryption key)**에서 보안 암호를 암호화할 KMS 키를 선택합니다. 키가 복제본 리전에 있어야 합니다.

   1. (선택 사항) 다른 리전을 추가하려면 **더 많은 리전 추가(Add more regions)**를 선택합니다.

   1. **복제(Replicate)**를 선택합니다.

   보안 암호 세부 정보 페이지로 돌아갑니다. **보안 암호 복제(Replicate Secret)** 섹션에서 각 리전의 **복제 상태(Replication Status)**가 표시됩니다.

## AWS CLI
<a name="replicate-secrets_CLI"></a>

**Example 다른 리전으로 보안 암호 복제**  
다음 [https://docs.aws.amazon.com//cli/latest/reference/secretsmanager/replicate-secret-to-regions.html](https://docs.aws.amazon.com//cli/latest/reference/secretsmanager/replicate-secret-to-regions.html) 예시에서는 eu-west-3으로 보안 암호를 복제합니다. 복제본은 AWS 관리형 키 로 암호화됩니다**aws/secretsmanager**.  

```
aws secretsmanager replicate-secret-to-regions \
        --secret-id MyTestSecret \
        --add-replica-regions Region=eu-west-3
```

**Example 보안 암호 생성 후 복제**  
다음 [예시](https://docs.aws.amazon.com//cli/latest/reference/secretsmanager/create-secret.html)에서는 eu-west-3으로 보안 암호를 생성한 후 복제합니다. 복제본은 로 암호화됩니다 AWS 관리형 키 **aws/secretsmanager**.  

```
aws secretsmanager create-secret \
    --name MyTestSecret \
    --description "My test secret created with the CLI." \
    --secret-string "{\"user\":\"diegor\",\"password\":\"EXAMPLE-PASSWORD\"}"
    --add-replica-regions Region=eu-west-3
```

## AWS SDK
<a name="replicate-secrets_SDK"></a>

보안 암호를 복제하려면 [https://docs.aws.amazon.com/secretsmanager/latest/apireference/API_ReplicateSecretToRegions.html](https://docs.aws.amazon.com/secretsmanager/latest/apireference/API_ReplicateSecretToRegions.html) 명령을 사용합니다. 자세한 내용은 [AWS SDKs](asm_access.md#asm-sdks) 단원을 참조하십시오.

# 에서 복제본 보안 암호를 독립 실행형 보안 암호로 승격 AWS Secrets Manager
<a name="standalone-secret"></a>

복제본 보안 암호는 다른의 기본에서 복제되는 보안 암호입니다 AWS 리전. 이 보안 암호는 기본 암호값과 메타데이터가 동일하지만 다른 KMS 키를 사용하여 암호화할 수 있습니다. 복제본 보안 암호는 암호화 키를 제외하고 기본 보안 암호와 독립적으로 업데이트할 수 없습니다. 복제본 보안 암호를 승격할 경우 복제본 보안 암호가 기본 보안 암호에서 분리되고 복제본 보안 암호가 독립 실행형 보안 암호로 설정됩니다. 기본 보안 암호에 대한 변경 사항은 독립 실행형 보안 암호에 복제되지 않습니다.

기본 암호를 사용할 수 없게 되면 재해 복구 솔루션으로 복제본 암호를 독립 실행형 암호로 승격할 수 있습니다. 또는 복제본에 대해 교체를 켜려는 경우 복제본을 독립 실행형 보안 암호로 승격해야 합니다.

복제본을 승격한 경우, 독립 실행형 보안 암호를 사용하도록 해당 애플리케이션을 업데이트해야 합니다.

Secrets Manager는 암호의 수준을 올릴 때 CloudTrail 로그 항목을 생성합니다. 자세한 내용은 [를 사용하여 AWS Secrets Manager 이벤트 로깅 AWS CloudTrail](monitoring-cloudtrail.md) 단원을 참조하십시오.

**복제본 보안 암호를 승격하려면(콘솔)**

1. [https://console.aws.amazon.com/secretsmanager/](https://console.aws.amazon.com/secretsmanager/)에서 Secrets Manager 콘솔에 로그인합니다.

1. 복제본 리전으로 이동합니다.

1. **보안 암호(Secrets)** 페이지에서 복제 보안 암호를 선택합니다.

1. 복제 보안 암호 세부 정보 페이지에서 **독립 실행형 보안 암호로 승격(Promote to standalone secret)**을 선택합니다.

1. **복제본을 독립형 보안 암호로 승격(Promote replica to standalone secret)** 대화 상자에서 리전을 입력한 다음 **복제본 승격(Promote replica)**을 선택합니다.

## AWS CLI
<a name="standalone-secret-cli"></a>

**Example 복제 보안 암호를 기본으로 승격**  
다음 [https://docs.aws.amazon.com//cli/latest/reference/secretsmanager/stop-replication-to-replica.html](https://docs.aws.amazon.com//cli/latest/reference/secretsmanager/stop-replication-to-replica.html) 예시에서는 복제 암호와 기본 암호 간의 링크를 제거합니다. 복제 보안 암호는 복제본 리전의 기본 보안 암호로 승격됩니다. 복제 리전 내에서 [https://docs.aws.amazon.com//cli/latest/reference/secretsmanager/stop-replication-to-replica.html](https://docs.aws.amazon.com//cli/latest/reference/secretsmanager/stop-replication-to-replica.html)를 직접적으로 호출해야 합니다.  

```
aws secretsmanager stop-replication-to-replica \
    --secret-id MyTestSecret
```

## AWS SDK
<a name="standalone-secret-sdk"></a>

복제본을 독립 실행형 보안 암호로 승격하려면 [https://docs.aws.amazon.com/secretsmanager/latest/apireference/API_StopReplicationToReplica.html](https://docs.aws.amazon.com/secretsmanager/latest/apireference/API_StopReplicationToReplica.html) 명령을 사용합니다. 이 명령은 반드시 복제본 보안 암호 리전에서 호출해야 합니다. 자세한 내용은 [AWS SDKs](asm_access.md#asm-sdks) 단원을 참조하십시오.

# AWS Secrets Manager 복제 방지
<a name="replicate-secrets-permissions"></a>

보안 암호는 [https://docs.aws.amazon.com/secretsmanager/latest/apireference/API_ReplicateSecretToRegions.html](https://docs.aws.amazon.com/secretsmanager/latest/apireference/API_ReplicateSecretToRegions.html)를 사용하여 복제할 수 있고, [https://docs.aws.amazon.com/secretsmanager/latest/apireference/API_CreateSecret.html](https://docs.aws.amazon.com/secretsmanager/latest/apireference/API_CreateSecret.html)를 사용하여 생성한 경우에도 복제할 수 있으므로 사용자가 보안 암호를 복제하는 걸 방지하려면 `AddReplicaRegions` 파라미터가 포함된 작업을 차단하는 것이 좋습니다. 권한 정책의 `Condition` 문을 사용하면 복제본 리전을 추가하지 않는 작업만 허용할 수 있습니다. 사용할 수 있는 조건문은 아래의 정책 예제를 참조하세요.

**Example 복제 권한 방지**  
다음 정책 예제에서는 복제본 리전을 추가하지 않는 모든 작업을 허용하는 방법을 보여줍니다. 이렇게 하면 사용자가 `ReplicateSecretToRegions` 및 `CreateSecret`를 통해 보안 암호를 복제할 수 없습니다.    
****  

```
{
  "Version":"2012-10-17",		 	 	 
  "Statement": [
    {
      "Effect": "Allow",
      "Action": "secretsmanager:*",
      "Resource": "*",
      "Condition": {
        "Null": {
          "secretsmanager:AddReplicaRegions": "true"
        }
      }
    }
  ]
}
```

**Example 특정 리전에만 복제 권한 허용**  
아래의 정책은 다음 작업을 모두 허용하는 방법을 보여줍니다.  
+ 복제 없이 보안 암호 생성
+ 미국 및 캐나다의 리전에만 복제를 포함한 보안 암호 생성
+ 미국 및 캐나다의 리전에만 보안 암호 복제   
****  

```
{
  "Version":"2012-10-17",		 	 	 
  "Statement": [
    {
      "Effect": "Allow",
      "Action": [
        "secretsmanager:CreateSecret",
        "secretsmanager:ReplicateSecretToRegions"
      ],
      "Resource": "*",
      "Condition": {
        "ForAllValues:StringLike": {
          "secretsmanager:AddReplicaRegions": [
            "us-*",
            "ca-*"
          ]
        }
      }
    }
  ]
}
```

# AWS Secrets Manager 복제 문제 해결
<a name="replicate-secrets_troubleshoot"></a>

AWS Secrets Manager 복제는 다양한 이유로 실패할 수 있습니다. 보안 암호가 복제되지 않은 원인을 확인하려면 다음 중 하나를 수행할 수 있습니다.
+ `DescribeSecret` API 작업 호출
+  AWS CloudTrail 이벤트 검토

복제가 실패한 경우 다음과 같은 동작이 발생합니다.
+ 사용할 수 있는 보안 암호 버전이 없는 경우, Secrets Manager는 복제된 리전에서 해당 보안 암호를 제거합니다.
+ 성공적으로 복제된 보안 암호 버전이 있는 경우, 사용자가 `RemoveRegionsFromReplication` API 작업을 사용해 명시적으로 제거할 때까지 복제된 리전에 남아 있습니다.

다음 섹션에서는 복제가 실패하는 몇 가지 일반적인 원인을 설명합니다.

## 선택한 리전에 동일한 이름의 보안 암호가 있습니다
<a name="w2aac17c33c13"></a>

이 문제를 해결하려면 복제본 리전에서 중복된 이름 보안 암호를 덮어쓸 수 있습니다. 복제를 재시도한 다음 **복제 재시도** 대화 상자에서 **덮어쓰기**를 선택합니다.

## 복제를 완료하기 위해 KMS 키에 사용할 수 있는 권한이 없습니다
<a name="w2aac17c33c15"></a>

Secrets Manager는 복제본 리전의 새 KMS 키를 사용하여 다시 암호화하기 전에 먼저 암호를 해독합니다. 기본 리전의 암호화 키에 대한 `kms:Decrypt` 권한이 없는 경우 이 오류가 발생합니다. `aws/secretsmanager` 이외의 KMS 키를 사용하여 복제된 보안 암호를 암호화하려면 키에 `kms:GenerateDataKey` 및 `kms:Encrypt`가 필요합니다. [KMS 키에 대한 권한](security-encryption.md#security-encryption-authz)을(를) 참조하세요.

## KMS 키가 비활성화되었거나 찾을 수 없음
<a name="w2aac17c33c17"></a>

기본 리전의 암호화 키가 비활성화되거나 삭제된 경우 Secrets Manager는 보안 암호를 복제할 수 없습니다. 보안 암호에 비활성화되거나 삭제된 암호화 키를 사용하여 암호화된 [사용자 지정 레이블 버전](whats-in-a-secret.md#term_version)이 있는 경우, 암호화 키를 변경한 경우에도 이 오류가 발생할 수 있습니다. Secrets Manager가 암호화를 수행하는 방법에 대한 자세한 내용은 [의 보안 암호 암호화 및 복호화 AWS Secrets Manager](security-encryption.md)을(를) 참조하세요. 이 문제를 해결하려면 Secrets Manager가 현재 암호화 키를 사용하여 암호화하도록 보안 암호 버전을 다시 생성하면 됩니다. 자세한 내용은 [보안 암호에 대한 암호화 키 변경](manage_update-encryption-key.md#manage_update-encryption-key_CLI)을 참조하세요. 그런 다음 복제를 다시 시도합니다.

```
aws secretsmanager put-secret-value \
  --secret-id testDescriptionUpdate \
  --secret-string "SecretValue" \
  --version-stages "MyCustomLabel"
```

## 복제가 발생하는 리전을 활성화하지 않았습니다
<a name="w2aac17c33c19"></a>

리전을 활성화하는 방법에 대한 자세한 내용은 *AWS 계정 관리 참조 가이드*의 [AWS 리전 관리](https://docs.aws.amazon.com/general/latest/gr/rande-manage.html#rande-manage-enable)를 참조하세요.