Question

Difficulty: MediumData Encryption at Rest, in Transit, and Key Management (KMS/CMEK/CSEK)

A financial services organization is storing sensitive transactional data in Cloud Spanner. Compliance regulations mandate that data at rest must be encrypted using encryption keys managed in Google Cloud KMS by a centralized security team, completely separated from database administrators. Additionally, automated key rotation must be configured without requiring application code changes or manually re-encrypting existing data. Which key management strategy should the cloud architect recommend?

  1. Configure Customer-Managed Encryption Keys (CMEK) using Cloud KMS, and grant the Cloud Spanner Service Agent the Cloud KMS CryptoKey Encrypter/Decrypter role on the KMS key.Answer
  2. B
    Implement Customer-Supplied Encryption Keys (CSEK) by passing raw 256-bit AES keys in API request headers, enabling Cloud KMS to manage automated key rotation.
  3. C
    Configure Customer-Managed Encryption Keys (CMEK) using Cloud KMS, and grant database administrators the primitive Owner role on the Cloud KMS KeyRing to simplify operational management.
  4. D
    Use Google-default encryption while relying on IAM data access roles and perimeters to protect data at rest and prevent exfiltration without configuring Cloud KMS.

Answer

Configure Customer-Managed Encryption Keys (CMEK) using Cloud KMS, granting the Cloud Spanner Service Agent the Cloud KMS CryptoKey Encrypter/Decrypter role.
The correct strategy uses Customer-Managed Encryption Keys (CMEK) managed via Cloud KMS. Security teams can configure automated key rotation schedules in Cloud KMS, while granting the Cloud Spanner Service Agent the specific fine-grained Cloud KMS CryptoKey Encrypter/Decrypter role (`roles/cloudkms.cryptoKeyEncrypterDecrypter`). This maintains strict separation of duties and satisfies regulatory mandates.

Step-by-Step Solution

1
Analyze key management requirements
The requirement demands centralized key lifecycle management in Cloud KMS with automated key rotation and separation of duties.
CMEK integrates Cloud KMS with GCP services, allowing security administrators to enforce key rotation and policies independently of database administrators.
2
Determine service identity permissions
Grant `roles/cloudkms.cryptoKeyEncrypterDecrypter` to the Cloud Spanner Service Agent.
GCP services require specific service agent service account roles on Cloud KMS keys to encrypt and decrypt data on behalf of the customer.

Key Concept

Customer-Managed Encryption Keys (CMEK) and Key Management Service (KMS) Access Control
Rate this question