SQL 쿼리, DDL, DML 작업이 애플리케이션 변경 없이 정상적으로 작동하므로 암호화는 투명합니다. 데이터는 디스크에 쓰기 전에 자동으로 암호화되고 메모리에 읽어올 때 복호화됩니다.
키 계층 구조
AlloyDB Omni는 데이터베이스와 사용자 관리 보안 인프라 간에 엄격한 직무 분리를 유지하는 2단계 키 계층 구조를 구현합니다.
- 데이터 암호화 키 (DEK): AlloyDB Omni에서 생성하고 소유합니다. 이러한 키는 실제 데이터 파일, WAL, 임시 파일을 암호화합니다. AlloyDB Omni는 디스크에 DEK를 저장하지만 KEK로 래핑합니다.
-
키 암호화 키 (KEK): 외부 키 관리 서비스 (KMS)에서 관리하는 기본 키입니다.
AlloyDB Omni는 KEK를 사용하여 DEK를 암호화합니다.
AlloyDB Omni는 시작 시에만 이 키에 액세스하여 DEK를 래핑 해제합니다. KEK는 데이터베이스 디스크에 영구적으로 저장되지 않습니다.
AlloyDB Omni에서 TDE가 작동하는 방식
TDE가 사용 설정되면 AlloyDB Omni는 외부 KMS와 통합되는 계층화된 암호화 모델을 사용하여 데이터를 보호합니다.
- 초기화 및 키 검색: 클러스터의 시작 또는 초기화 단계에서 AlloyDB Omni 엔진은 KMS에 대한 보안 연결을 설정합니다. JSON 웹 토큰 (JWT)을 사용하여 인증하고 KEK를 가져옵니다.
- DEK 래핑 해제: AlloyDB Omni는 KEK를 사용하여 래핑된 상태로 로컬 스토리지에 저장된 DEK를 래핑 해제합니다. 그런 다음 이러한 DEK가 메모리에 로드됩니다.
- 투명한 데이터 작업:
- 디스크에 쓰기: 데이터베이스가 데이터 블록, WAL 레코드 또는 임시 파일을 실제 디스크에 쓸 때 실제 디스크에 쓰기 전에 AES-256 알고리즘을 사용하여 데이터를 자동으로 암호화합니다.
- 디스크에서 읽기: 데이터베이스가 데이터를 메모리로 읽어야 하는 경우 메모리에 보관된 DEK를 사용하여 블록을 자동으로 복호화합니다.
- 보안 경계: KEK는 로컬 데이터베이스 디스크에 저장되지 않으므로 물리적 저장 매체가 손상되더라도 외부 보관소에 대한 승인된 액세스 권한이 없으면 데이터를 읽을 수 없습니다.
암호화 범위 및 사양
AlloyDB Omni는 업계 표준 AES-256 알고리즘을 사용하여 데이터를 보호합니다.
- 데이터 파일 (표 및 색인): AES-256-XTS
- 미리 쓰기 로그 (WAL): AES-256-CTR
- 임시 파일: 임시 데이터 유형에 따라 AES-256-XTS 또는 AES-256-CTR
- 키 래핑: AES-256-KWP.
백업 및 고가용성
TDE가 사용 설정된 경우 pgBackRest를 사용하여 만든 백업은 소스 클러스터의 암호화 구성을 상속합니다. 이렇게 하면 백업 데이터가 기본 데이터베이스와 동일한 수준의 보안으로 보호됩니다.
지원되는 KMS 및 인증
AlloyDB Omni는 HashiCorp Vault를 외부 KMS 제공업체로 지원합니다. AlloyDB Omni는 KV-V2 비밀 엔진만 지원하며 지원되는 유일한 인증 방법은 JWT입니다.
참고: AlloyDB Omni는 파일 기반 KMS를 지원합니다. 하지만 프로덕션 워크로드에서는 사용하지 않고 테스트 목적으로만 사용하는 것이 좋습니다.PostgreSQL 도구 호환성
TDE 지원 클러스터는 환경 변수를 통해initdb를 제외한 모든 기본 PostgreSQL 도구를 투명하게 지원합니다.
initdb를 사용하는 경우 KEK URL을 전달해야 합니다.
자세한 내용은 TDE 지원 클러스터 만들기를 참고하세요.
제한사항
- 기존 클러스터에서는 TDE를 사용 설정할 수 없습니다.
- 사용 설정한 후에는 TDE를 사용 중지할 수 없습니다.
- TDE 지원 클러스터에는 메이저 버전 업그레이드가 지원되지 않습니다.
- 암호화된 백업을 암호화되지 않은 서버로 복원하거나 암호화되지 않은 백업을 암호화된 서버로 복원할 수 없습니다.
- DEK 순환은 지원되지 않습니다.
- KEK URL 경로가 동일하게 유지되는 한 KEK 순환이 지원됩니다.
- KEK 순환은 외부 KMS 제공업체로 HashiCorp Vault에 대해서만 지원됩니다.
FILE_COPY전략을 사용하여CREATE DATABASE할 수 없습니다.- TDE 지원 클러스터에서 Barman 백업은
rsync모드만 지원합니다.postgres백업 방법은 지원되지 않습니다.