Oracle Transparent Data Encryption - Amazon Relational Database Service

Oracle Transparent Data Encryption

Amazon RDS는 Oracle Enterprise Edition에서 지원되는 Oracle Advanced Security 옵션의 한 가지 기능인 Oracle Transparent Data Encryption(TDE)을 지원합니다. 이 기능은 스토리지에 데이터를 쓰기 전에 자동으로 데이터를 암호화한 뒤에 데이터를 스토리지에서 읽을 때 다시 자동으로 해독합니다. 이 옵션은 기존 보유 라이선스 사용(BYOL) 모델에만 지원됩니다.

TDE는 제3자가 데이터 파일 및 백업을 가져올 경우 민감한 데이터를 암호화해야 하는 시나리오에서 유용합니다. TDE는 보안 관련 규정을 준수해야 하는 경우에도 유용합니다.

Oracle Database의 TDE에 대한 자세한 설명은 이 가이드의 범위를 벗어납니다. 자세한 내용은 다음 Oracle Database 리소스를 참조하세요.

RDS for Oracle과 TDE를 사용하는 방법에 대한 자세한 내용은 다음 블로그를 참조하세요.

TDE 암호화 모델

Oracle Transparent Data Encryption은 TDE 테이블스페이스 암호화 및 TDE 열 암호화의 두 가지 모드를 지원합니다. TDE 테이블스페이스 암호화는 전체 애플리케이션 테이블을 암호화하는 데 사용됩니다. TDE 열 암호화는 중요 데이터를 포함하는 개별 데이터 요소를 암호화하는 데 사용됩니다. TDE 테이블스페이스 암호화와 열 암호화를 모두 사용하는 하이브리드 암호화 솔루션을 적용할 수도 있습니다.

참고

Amazon RDS가 DB 인스턴스의 Oracle Wallet 및 TDE 마스터 키를 관리합니다. [ALTER SYSTEM set encryption key] 명령을 사용하여 암호화 키를 설정하지 않아도 됩니다.

TDE 옵션을 활성화한 후 다음 명령을 사용하여 Oracle Wallet의 상태를 확인할 수 있습니다.

SELECT * FROM v$encryption_wallet;

암호화된 테이블스페이스를 생성하려면 다음 명령을 사용합니다.

CREATE TABLESPACE encrypt_ts ENCRYPTION DEFAULT STORAGE (ENCRYPT);

암호화 알고리즘을 지정하려면 다음 명령을 사용하십시오.

CREATE TABLESPACE encrypt_ts ENCRYPTION USING 'AES256' DEFAULT STORAGE (ENCRYPT);

테이블스페이스 암호화에 대한 이전 문은 온프레미스 Oracle 데이터베이스에서 사용하는 것과 동일합니다.

TDE 옵션에 대한 제한 사항

TDE 옵션은 영구적이고 지속적입니다. TDE 옵션이 활성화된 옵션 그룹에 DB 인스턴스를 연결한 후에는 다음 작업을 수행할 수 없습니다.

  • 현재 연결된 옵션 그룹에서 TDE 옵션을 비활성화합니다.

  • DB 인스턴스를 TDE 옵션이 포함되지 않은 다른 옵션 그룹에 연결합니다.

  • TDE 옵션을 사용하는 DB 스냅샷을 공유합니다. DB 스냅샷 공유에 대한 자세한 내용은 Amazon RDS의 DB 스냅샷 공유 단원을 참조하십시오.

지속 옵션 및 영구 옵션에 대한 자세한 내용은 지속적이거나 영구적인 옵션 섹션을 참조하세요.

DB 인스턴스가 TDE를 사용하는지 여부 결정

DB 인스턴스가 TDE 옵션을 활성화한 옵션 그룹과 연결되어 있는지 확인할 수 있습니다. DB 인스턴스와 연동되어 있는 옵션 그룹은 RDS 콘솔, describe-db-instance AWS CLI 명령 또는 API 작업 DescribeDBInstances를 사용하여 확인할 수 있습니다.

TDE 옵션 추가

DB 인스턴스에 TDE 옵션을 추가하려면 다음 단계를 완료하세요.

  1. (권장) DB 인스턴스의 스냅샷을 만듭니다.

  2. 다음 태스크 중 하나를 수행합니다.

    • 처음부터 새 옵션 그룹을 만듭니다. 자세한 내용은 옵션 그룹 생성 단원을 참조하십시오.

    • AWS CLI 또는 API를 사용하여 기존 옵션 그룹을 복사합니다. 자세한 내용은 옵션 그룹 생성 단원을 참조하십시오.

    • 기본값이 아닌 기존 옵션 그룹을 재사용합니다. 가장 좋은 방법은 현재 DB 인스턴스나 스냅샷과 연결되어 있지 않은 옵션 그룹을 사용하는 것입니다.

  3. 이전 단계의 옵션 그룹에 새 옵션을 추가합니다.

  4. 현재 DB 인스턴스와 연결된 옵션 그룹에 활성화된 옵션이 있는 경우 이러한 옵션을 새 옵션 그룹에 추가합니다. 이 전략은 새 옵션을 활성화하는 동안 기존 옵션이 제거되는 것을 방지합니다.

  5. 새 옵션 그룹을 DB 인스턴스에 추가합니다.

TDE 옵션을 옵션 그룹에 추가하고 DB 인스턴스와 연결하는 방법
  1. RDS 콘솔에서 옵션 그룹을 선택합니다.

  2. 옵션을 추가할 옵션 그룹의 이름을 선택합니다.

  3. 옵션 추가를 선택합니다.

  4. 옵션 이름에서 TDE를 선택한 다음 옵션 설정을 구성합니다.

  5. 옵션 추가를 선택합니다.

    중요

    하나 이상의 DB 인스턴스에 현재 연결되어 있는 옵션 그룹에 TDE 옵션을 추가하면 모든 DB 인스턴스가 자동으로 다시 시작되는 동안 인스턴스가 잠시 중단됩니다.

    옵션 추가에 대한 자세한 내용은 옵션 그룹에 옵션 추가 섹션을 참조하세요.

  6. 옵션 그룹을 새 DB 인스턴스 또는 기존 DB 인스턴스와 연결합니다.

    • 새 DB 인스턴스의 경우, 인스턴스를 시작할 때 옵션 그룹을 적용하십시오. 자세한 내용은 Amazon RDS DB 인스턴스 생성 섹션을 참조하세요.

    • 기존 DB 인스턴스의 경우, 해당 인스턴스를 수정하고 새 옵션 그룹을 연결하여 옵션 그룹을 적용하십시오. 기존 DB 인스턴스에 새 옵션을 추가하는 경우 DB 인스턴스를 자동으로 다시 시작하는 동안 인스턴스가 잠시 중단됩니다. 자세한 내용은 Amazon RDS DB 인스턴스 수정 단원을 참조하십시오.

다음 예제에서는 AWS CLI add-option-to-option-group 명령을 사용하여 TDE 옵션을 myoptiongroup이라는 옵션 그룹에 추가합니다. 자세한 내용은 시작하기: Flink 1.13.2를 참조하세요.

대상 LinuxmacOS, 또는Unix:

aws rds add-option-to-option-group \ --option-group-name "myoptiongroup" \ --options "OptionName=TDE" \ --apply-immediately

Windows의 경우:

aws rds add-option-to-option-group ^ --option-group-name "myoptiongroup" ^ --options "OptionName=TDE" ^ --apply-immediately

TDE 옵션이 포함되지 않은 DB 인스턴스로 데이터 복사

TDE 옵션을 DB 인스턴스에서 제거하거나 TDE 옵션을 포함하지 않는 옵션 그룹과 연결할 수 없습니다. TDE 옵션이 포함되지 않은 인스턴스로 데이터를 마이그레이션하려면 다음 작업을 수행하세요.

  1. DB 인스턴스의 데이터를 복호화합니다.

  2. TDE가 활성화된 옵션 그룹과 연결되지 않은 새 DB 인스턴스로 데이터를 복사합니다.

  3. 원본 DB 인스턴스를 삭제합니다.

새 인스턴스에는 이전 DB 인스턴스와 동일한 이름을 사용할 수 있습니다.

Oracle Data Pump와 함께 TDE 사용 시 고려 사항

Oracle Data Pump를 사용하여 암호화된 덤프 파일을 가져오거나 내보낼 수 있습니다. Amazon RDS는 Oracle Data Pump에 대한 암호 암호화 모드 (ENCRYPTION_MODE=PASSWORD)를 지원합니다. Amazon RDS는 Oracle Data Pump에 대해 투명 암호화 모드 (ENCRYPTION_MODE=TRANSPARENT)를 지원하지 않습니다. 자세한 내용은 Oracle Data Pump를 사용한 가져오기 단원을 참조하십시오.