Mengonfigurasi Key Access Justifications dengan Cloud HSM

Halaman ini menjelaskan cara mengkonfigurasi Key Access Justifications dengan Cloud HSM untuk Assured Workloads Paket kontrol Region Jepang.

Selama langkah-langkah untuk membuat folder Assured Workloads baru untuk Wilayah Jepang, Anda memiliki opsi untuk membuat project baru dan key ring untuk kunci kriptografis. Kunci Kunci Cloud HSM dapat ditambahkan ke key ring ini, dan Anda juga dapat mengonfigurasi kebijakan Key Access Justifications untuk mengontrol akses ke setiap kunci.

Sebelum memulai

  • Kemampuan untuk menggunakan Key Access Justifications dengan kunci Cloud HSM hanya tersedia untuk paket kontrol Region Jepang di Assured Workloads.
  • Pastikan administrator Anda telah memberi Anda salah satu persyaratan Peran Identity and Access Management (IAM) untuk membuat dan mengelola Kebijakan Key Access Justifications dan kunci Cloud HSM itu sendiri.

Izin IAM yang diperlukan

Guna mendapatkan izin yang Anda perlukan untuk membuat dan mengelola kunci Cloud HSM dan kebijakan Key Access Justifications mereka, minta administrator untuk memberi Anda Peran IAM Cloud KMS Admin (roles/cloudkms.admin) pada project yang berisi key ring. Untuk mengetahui informasi selengkapnya tentang cara memberikan peran, lihat Mengelola akses ke project, folder, dan organisasi.

Peran bawaan ini berisi izin yang diperlukan untuk membuat dan mengelola kunci Cloud HSM dan kebijakan Key Access Justifications mereka. Untuk melihat izin yang benar-benar diperlukan, luaskan bagian Izin yang diperlukan:

Izin yang diperlukan

Izin berikut diperlukan untuk membuat dan mengelola kunci Cloud HSM dan kebijakan Key Access Justifications mereka:

  • cloudkms.cryptoKeys.create
  • cloudkms.cryptoKeys.update
  • cloudkms.cryptoKeys.get

Anda mungkin juga bisa mendapatkan izin ini dengan peran khusus atau peran bawaan lainnya.

Mengonfigurasi kunci Cloud HSM dengan Key Access Justifications

Untuk mengonfigurasi Key Access Justifications dengan kunci Cloud HSM, Anda dapat menyertakan kebijakan akses kunci sebagai parameter saat Anda membuat kunci, atau Anda dapat memperbarui dengan kebijakan tersebut setelah kunci dibuat.

Membuat kunci dan kebijakan baru

REST

Buat kunci dan kebijakan baru menggunakan cryptoKeys.create berikut:

POST https://cloudkms.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/keyRings/KEY_RING/cryptoKeys?crypto_key_id=KEY_NAME

Dalam permintaan, ganti nilai placeholder berikut:

  • PROJECT_ID: Project ID yang berisi key ring tempat Anda ingin menambahkan kunci—misalnya, 919698201234.
  • LOCATION: Lokasi key ring—misalnya, us-west1.
  • KEY_RING: Nama key ring yang Anda tentukan saat Anda membuat project pengelolaan kunci folder Assured Workloads dan key ring—misalnya, my-key-ring.
  • KEY_NAME: Nama kunci HSM yang ingin Anda buat—untuk contoh, my-hsm-key.

Isi permintaan:

{
  "purpose": "PURPOSE",
  "versionTemplate": {
    "protectionLevel": "HSM",
    "algorithm": "ALGORITHM"
  },
  "keyAccessJustificationsPolicy": {
    "allowedAccessReasons": [
      ALLOWED_ACCESS_REASONS
    ]
  }
}

Dalam isi permintaan, ganti nilai placeholder berikut:

  • PURPOSE: Tujuan kunci. Untuk daftar kunci yang berbeda tujuan, lihat Tujuan utama—misalnya, ENCRYPT_DECRYPT.
  • ALGORITHM: Algoritma kriptografi yang akan digunakan. Untuk daftar algoritma yang tersedia, lihat Algoritma Cloud KMS—misalnya, GOOGLE_SYMMETRIC_ENCRYPTION.
  • ALLOWED_ACCESS_REASONS: Kebijakan Key Access Justifications yang menentukan nol atau lebih diizinkan kode justifikasi untuk mengakses kunci enkripsi—misalnya, CUSTOMER_INITIATED_ACCESS.

Contoh permintaan dan isi permintaan berikut hanya mengizinkan akses justifikasi karena beberapa alasan:

POST https://cloudkms.googleapis.com/v1/projects/919698201234/locations/us-west1/keyRings/my-key-ring/cryptoKeys?crypto_key_id=my-hsm-key
{
  "purpose": "ENCRYPT_DECRYPT",
  "versionTemplate": {
    "protectionLevel": "HSM",
    "algorithm": "GOOGLE_SYMMETRIC_ENCRYPTION"
  },
  "keyAccessJustificationsPolicy": {
    "allowedAccessReasons": [
      "CUSTOMER_INITIATED_ACCESS",
      "GOOGLE_INITIATED_SYSTEM_OPERATION"
    ]
  }
}

Memperbarui kebijakan kunci yang sudah ada

REST

Perbarui kunci yang ada di Cloud KMS menggunakan cryptoKeys.patch berikut:

PATCH https://cloudkms.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/keyRings/KEY_RING/cryptoKeys/KEY_NAME?update_mask=keyAccessJustificationsPolicy

Dalam permintaan, ganti nilai placeholder berikut:

  • PROJECT_ID: Project ID project yang berisi kunci untuk kunci—misalnya, 919698201234.
  • LOCATION: Lokasi key ring—misalnya, us-west1.
  • KEY_RING: Nama key ring yang Anda tentukan saat Anda membuat project pengelolaan kunci folder Assured Workloads dan key ring—misalnya, my-key-ring.
  • KEY_NAME: Nama kunci HSM yang ingin Anda perbarui—untuk contoh, my-hsm-key.

Isi permintaan:

{
  "purpose": "PURPOSE",
  "versionTemplate": {
    "protectionLevel": "HSM",
    "algorithm": "ALGORITHM"
  },
  "keyAccessJustificationsPolicy": {
    "allowedAccessReasons": [
      ALLOWED_ACCESS_REASONS
    ]
  }
}

Dalam isi permintaan, ganti nilai placeholder berikut:

  • PURPOSE: Tujuan kunci. Untuk daftar kunci yang berbeda tujuan, lihat Tujuan utama—misalnya, ENCRYPT_DECRYPT.
  • ALGORITHM: Algoritma kriptografi yang akan digunakan. Untuk daftar algoritma yang tersedia, lihat Algoritma Cloud KMS—misalnya, GOOGLE_SYMMETRIC_ENCRYPTION.
  • ALLOWED_ACCESS_REASONS: Kebijakan Key Access Justifications yang menentukan nol atau lebih diizinkan kode justifikasi untuk mengakses kunci enkripsi—misalnya, CUSTOMER_INITIATED_ACCESS.

Contoh permintaan dan isi permintaan berikut hanya mengizinkan akses justifikasi karena beberapa alasan:

PATCH https://cloudkms.googleapis.com/v1/projects/919698201234/locations/us-west1/keyRings/my-key-ring/cryptoKeys/my-hsm-key?keyAccessJustificationsPolicy
{
  "purpose": "ENCRYPT_DECRYPT",
  "versionTemplate": {
    "protectionLevel": "HSM",
    "algorithm": "GOOGLE_SYMMETRIC_ENCRYPTION"
  },
  "keyAccessJustificationsPolicy": {
    "allowedAccessReasons": [
      "CUSTOMER_INITIATED_ACCESS",
      "GOOGLE_INITIATED_SYSTEM_OPERATION"
    ]
  }
}

Mendapatkan kebijakan Key Access Justifications untuk sebuah kunci

REST

Mendapatkan metadata tentang kunci yang ada di Cloud KMS menggunakan cryptoKeys.get berikut:

GET https://cloudkms.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/keyRings/KEY_RING/cryptoKeys/KEY_NAME

Di parameter permintaan, ganti nilai placeholder berikut dengan sendiri:

  • PROJECT_ID: Project ID yang berisi key ring untuk —misalnya, 919698201234.
  • LOCATION: Lokasi key ring—misalnya, us-west1.
  • KEY_RING: Nama key ring yang Anda tentukan saat Anda membuat project pengelolaan kunci folder Assured Workloads dan key ring—misalnya, my-key-ring.
  • KEY_NAME: Nama kunci HSM yang ingin Anda dapatkan—untuk contoh, my-hsm-key.

Contoh permintaan berikut mendapatkan metadata tentang kunci di Cloud KMS:

GET https://cloudkms.googleapis.com/v1/projects/919698201234/locations/us-west1/keyRings/my-key-ring/cryptoKeys/my-hsm-key

Isi respons berisi metadata tentang kunci Anda, termasuk keyAccessJustificationsPolicy Contoh:

{
  "purpose": "ENCRYPT_DECRYPT",
  "versionTemplate": {
    "protectionLevel": "HSM",
    "algorithm": "GOOGLE_SYMMETRIC_ENCRYPTION"
  },
  "keyAccessJustificationsPolicy": {
    "allowedAccessReasons": [
      "CUSTOMER_INITIATED_ACCESS",
      "GOOGLE_INITIATED_SYSTEM_OPERATION"
    ]
  }
}