저장 데이터 암호화

기본적으로 BigQuery는 저장 중 고객 콘텐츠를 암호화합니다. BigQuery는 사용자 측의 추가 작업 없이 자동으로 암호화를 처리합니다. 이 옵션을 Google 기본 암호화라고 부릅니다. Google 기본 암호화는 Google이 자체 암호화된 데이터에 사용하는 것과 동일한 강화된 키 관리 시스템을 사용합니다. 이러한 시스템에는 엄격한 키 액세스 제어 및 감사가 포함됩니다. 각 BigQuery 객체의 데이터 및 메타데이터는 고급 암호화 표준(AES)을 사용하여 암호화됩니다.

암호화 키를 제어하려면 BigQuery를 포함한 CMEK 통합 서비스와 함께 Cloud KMS에서 고객 관리 암호화 키(CMEK)를 사용하면 됩니다. Cloud KMS 키를 사용하면 보호 수준, 위치, 순환 일정, 사용 및 액세스 권한, 암호화 경계를 관리할 수 있습니다. Cloud KMS를 사용하면 키 사용을 추적하고, 감사 로그를 보고, 키 수명 주기를 제어할 수도 있습니다. Google에서 데이터를 보호하는 대칭 키 암호화 키(KEK)를 소유하고 관리하는 대신 사용자가 Cloud KMS에서 이러한 키를 제어하고 관리할 수 있습니다.

CMEK로 리소스를 설정한 후 BigQuery 리소스에 액세스하는 환경은 Google 기본 암호화를 사용하는 것과 유사합니다. 암호화 옵션에 대한 자세한 내용은 고객 관리 Cloud KMS 키를 참조하세요.

Cloud KMS Autokey를 사용하는 CMEK

CMEK를 수동으로 만들어 BigQuery 리소스를 보호하거나 Cloud KMS Autokey를 사용할 수 있습니다. Autokey를 사용하면 BigQuery에서 리소스를 만들 때 필요에 따라 키링과 키가 생성됩니다. 암호화 및 복호화 작업에 키를 사용하는 서비스 에이전트가 없으면 생성되며, 필요한 Identity and Access Management(IAM) 역할이 부여됩니다. 자세한 내용은 Autokey 개요를 참조하세요.

수동으로 생성된 CMEK를 사용하여 BigQuery 리소스를 보호하는 방법은 고객 관리 Cloud KMS 키를 참조하세요.

Cloud KMS Autokey에서 만든 CMEK를 사용하여 BigQuery 리소스를 보호하는 방법은 BigQuery 리소스에 Autokey 사용을 참조하세요.

테이블의 개별 값 암호화

BigQuery 테이블 내에서 개별 값을 암호화하려면 연관 데이터로 암호화 인증(AEAD)이라는 암호화 기능을 사용합니다. 모든 고유 고객의 데이터를 공통 테이블에 보관하려면 AEAD 함수를 사용해서 서로 다른 키를 사용하여 각 고객의 데이터를 암호화합니다. AEAD 암호화 함수는 AES를 기반으로 합니다. 자세한 내용은 GoogleSQL의 AEAD 암호화 개념을 참조하세요.

클라이언트 측 암호화

클라이언트 측 암호화는 저장 데이터 BigQuery 암호화와 별개입니다. 클라이언트 측 암호화를 사용하도록 선택하면 클라이언트 측 키 및 암호화 작업을 사용자가 관리해야 합니다. 데이터를 BigQuery에 쓰기 전에 먼저 암호화해야 합니다. 이 경우 사용자 키와 Google 키를 사용하여 데이터가 두 번 암호화됩니다. 마찬가지로 BigQuery에서 읽혀지는 데이터도 Google 키와 사용자 키를 사용하여 두 번 복호화됩니다.

전송 중 데이터

읽기 및 쓰기 작업 도중 인터넷을 통해 전송되는 데이터를 보호하기 위해 Google Cloud는 전송 계층 보안(TLS)을 사용합니다. 자세한 내용은 Google Cloud의 전송 중인 데이터 암호화를 참조하세요.

Google 데이터 센터 내에서 데이터는 머신 간에 전송될 때 암호화됩니다.

다음 단계

BigQuery 및 기타 Google Cloud 제품의 저장 데이터 암호화에 대한 자세한 내용은 Google Cloud의 저장 데이터 암호화를 참조하세요.