온프레미스 환경으로부터 KMS로 암호화된 백업 파일을 RDS for SQL Server에 복원하려면 어떻게 해야 합니까?

최종 업데이트 날짜: 2022년 10월 14일

AWS Key Management Service(AWS KMS)로 암호화된 백업 파일을 온프레미스 환경으로부터 Amazon Relational Database Service(Amazon RDS) for Microsoft SQL Server 인스턴스로 복원하려고 합니다. 기본 백업 및 복원 기능을 사용하여 이 작업을 수행하려면 어떻게 해야 하나요?

간략한 설명

AWS KMS 암호화는 AWS KMS 키를 사용하여 Microsoft SQL Server 백업 파일을 RDS for SQL Server에 안전하게 암호화합니다. 이 암호화된 백업을 다른 RDS for SQL Server 인스턴스에 복원할 수 있습니다.

해결 방법

참고: 다음 해결 방법을 시작하기 전에 다음을 생성했는지 확인하세요.

1.    AWS KMS 키 파라미터(@kms_master_key_arn)를 지정하여 기본 백업에서 클라이언트 측 암호화를 시작합니다.

exec msdb.dbo.rds_backup_database @source_db_name='database-name',
@s3_arn_to_backup_to='arn:aws:s3:::bucket-name/Filename.bak',
@kms_master_key_arn='arn:aws:kms:us-east-1:account-id:key/xxxxx-xxxxx-xxxxx-xxxxx-xxxxxxxxx1';

2.    AWS KMS로 암호화된 백업을 동일한 리전 및 계정의 다른 RDS for SQL Server 인스턴스에서 복원합니다. 이렇게 하려면 다음 명령에서 백업을 암호화하는 데 사용한 것과 동일한 AWS KMS 키를 지정합니다.

exec msdb.dbo.rds_restore_database @restore_db_name='database-name',
@s3_arn_to_restore_from='arn:aws:s3:::bucket-name/Filename.bak',
@kms_master_key_arn='arn:aws:kms:us-east-1:account-id:key/xxxxx-xxxxx-xxxxx-xxxxx-xxxxxxxxx1';

동일한 계정의 다른 리전에서 AWS KMS로 암호화된 백업 복원

AWS KMS로 암호화된 백업을 다른 리전의 동일한 계정에서 복원해야 하는 경우 다음을 수행합니다.

1.    다중 리전 AWS KMS 키를 생성합니다. 키 유형으로는 대칭 키를 선택해야 합니다.

2.    필요한 대상 리전의 복제본 키를 생성합니다.

3.    리전 A에 AWS KMS 키 파라미터(@kms_master_key_arn)를 지정하여 암호화된 기본 백업을 시작합니다.

exec msdb.dbo.rds_backup_database @source_db_name='database-name', 
@s3_arn_to_backup_to='arn:aws:s3:::bucket-name/Filename.bak',
@kms_master_key_arn='arn:aws:kms:us-east-1:account-id:key/xxxxx-xxxxx-xxxxx-xxxxx-xxxxxxxxx2';

4.    백업 파일을 동일한 리전의 S3 버킷에 복사합니다. Amazon RDS는 교차 리전 버킷을 지원하지 않습니다.

5.    백업을 암호화하는 데 사용한 것과 동일한 AWS KMS 키 ID를 지정하여 리전 B에서 AWS KMS로 암호화된 백업을 복원합니다.

참고: @kms_master_key_arn에 연결된 리전이 그에 따라 변경됩니다.

exec msdb.dbo.rds_restore_database ;@restore_db_name='database-name',
@s3_arn_to_restore_from='arn:aws:s3:::bucket-name/Filename.bak',
@kms_master_key_arn='arn:aws:kms:us-east-2:account-id:key/xxxxx-xxxxx-xxxxx-xxxxx-xxxxxxxxx2';

온프레미스 환경, 교차 계정 또는 교차 리전에서 AWS KMS로 암호화된 백업 복원

다음 세 가지 시나리오에서는 백업을 복원하기 위한 해결 방법이 필요합니다.

  • AWS KMS로 암호화된 데이터베이스 백업을 동일한 리전의 다른 계정(교차 계정)에서 복원해야 합니다. Amazon RDS는 교차 계정 AWS KMS 키 공유를 지원하지 않습니다. 즉, KMS 키 K1을 사용하여 계정 A의 백업을 암호화한 다음 동일한 키를 사용하여 계정 B에 백업을 복원할 수 없습니다.
  • AWS KMS로 암호화된 데이터베이스 백업을 다른 리전 및 다른 계정(교차 리전 및 교차 계정)에 복원해야 합니다. Amazon RDS는 교차 계정 AWS KMS 키 공유 또는 교차 리전 버킷을 지원하지 않습니다.
  • AWS KMS로 암호화된 데이터베이스 백업을 온프레미스 환경에서 복원해야 합니다. 온프레미스 환경은 외부 엔터티이기 때문에 AWS KMS 키 세부 정보를 인식하지 못합니다. 따라서 복원하기 전에 AWS KMS로 암호화된 파일을 복호화해야 합니다.

이러한 제한 사항에 대한 해결 방법은 Amazon RDS에 사용하기 위해 Microsoft SQL Server 백업의 클라이언트측 암호화 및 복호화에 있는 Amazon RDS for SQL Server에서 내보내기 섹션을 참조하세요.