Key Management Service API の概要

Key Management Service(KMS)API は、Kubernetes カスタム リソースを使用して暗号鍵のライフサイクルを管理します。

KMS API を使用するには、GDC コンソールを使用します。アプリケーションで独自のライブラリを使用して API を呼び出す場合は、次のセクションのサービス エンドポイントの例と、リクエストの作成に使用する完全な API 定義を採用します。

サービス エンドポイントとディスカバリ ドキュメント

KMS API は、ゾーン デプロイまたはグローバル デプロイに応じて 2 つのパッケージで提供されます。

ゾーン KMS API とグローバル KMS API の API エンドポイントは、それぞれ次のとおりです。

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

MANAGEMENT_API_SERVER_ENDPOINT 変数は、Management API サーバーのエンドポイントです。

kubectl proxy コマンドを使用して、ブラウザで URL にアクセスし、KMS API のディスカバリ ドキュメントを取得します。kubectl proxy コマンドは、ローカルマシンの 127.0.0.1:8001 から Kubernetes API サーバーへのプロキシを開きます。このコマンドの実行後、次の URL でドキュメントにアクセスします。

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

サンプル リソース

リソースの例を次に示します。Namespace はプロジェクト Namespace です。鍵の作成の詳細については、鍵の作成と削除ページの鍵の作成をご覧ください。

AEADKey リソース

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

SigningKey リソース

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

KeyImport リソース

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

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

RotationJob リソース

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

MZAEADKey リソース

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