Ringkasan Key Management Service API

Key Management Service (KMS) API menggunakan resource kustom Kubernetes untuk mengelola siklus proses kunci kripto.

Untuk menggunakan KMS API, gunakan konsol GDC. Jika aplikasi Anda menggunakan library Anda sendiri untuk memanggil API, gunakan contoh endpoint layanan di bagian berikut, dan definisi API lengkap untuk membuat permintaan Anda:

Endpoint layanan dan dokumen penemuan

KMS API disediakan dalam dua paket, bergantung pada deployment zonal atau deployment global.

Endpoint API untuk KMS API zonal dan global adalah sebagai berikut:

  • https://MANAGEMENT_API_SERVER_ENDPOINT/apis/kms.gdc.goog/v1
  • https://MANAGEMENT_API_SERVER_ENDPOINT/apis/kms.global.gdc.goog/v1

Variabel MANAGEMENT_API_SERVER_ENDPOINT adalah endpoint server Management API.

Dengan menggunakan perintah kubectl proxy, akses URL di browser Anda untuk mendapatkan dokumen penemuan untuk KMS API. Perintah kubectl proxy membuka proxy di 127.0.0.1:8001 ke server Kubernetes API di komputer lokal Anda. Setelah perintah tersebut berjalan, akses dokumen di URL berikut:

  • http://127.0.0.1:8001/apis/kms.gdc.goog/v1
  • http://127.0.0.1:8001/apis/kms.global.gdc.goog/v1

Contoh resource

Berikut adalah contoh resource. Namespace adalah namespace project. Lihat bagian Membuat kunci di halaman Membuat dan menghapus kunci untuk mengetahui informasi selengkapnya tentang cara membuat kunci.

Resource AEADKey

apiVersion: "kms.gdc.goog/v1"
kind: AEADKey
metadata:
  name: my-test-key
  namespace: user-kms-project
spec:
  algorithm: AES_256_GCM

Resource SigningKey

apiVersion: "kms.gdc.goog/v1"
kind: SigningKey
metadata:
  name: my-test-key
  namespace: user-kms-project
spec:
  algorithm: EC_SIGN_P384_SHA384

Resource KeyImport

apiVersion: "kms.gdc.goog/v1"
kind: KeyImport
metadata:
  name: my-test-key-import
  namespace: user-kms-project
spec:
  context:
    mechanism: ECDH_P521_AES256

Resource KeyExport

apiVersion: "kms.gdc.goog/v1"
kind: KeyExport
metadata:
  name: my-test-key-export
  namespace: user-kms-project
spec:
  context:
    mechanism: ECDH_P521_AES256
    publicKey: pub_key_from_import
  keyToExport:
    kind: AEADKey
    name: key_name_to_export

Resource RotationJob

apiVersion: "kms.gdc.goog/v1"
kind: RotationJob
metadata:
  name: my-test-rotate-job
spec:
  rootKeyResourceName: namespaces/kms-system/secrets/kms-key-ctm-root

Resource MZAEADKey

apiVersion: "kms.global.gdc.goog/v1"
kind: MZAEADKey
metadata:
  name: my-test-mz-key
  namespace: user-kms-project
spec:
  algorithm: AES_256_GCM