סקירה כללית על שירות ניהול מפתחות (KMS) API

ממשק ה-API של Key Management Service‏ (KMS) משתמש במשאבים מותאמים אישית של Kubernetes כדי לנהל את מחזור החיים של המפתחות הקריפטוגרפיים.

כדי להשתמש ב-KMS API, צריך להשתמש במסוף GDC. אם האפליקציה משתמשת בספריות משלכם כדי לקרוא ל-API, צריך להשתמש בנקודת הקצה של השירות שמופיעה בדוגמה בקטע הבא, ובהגדרות המלאות של ה-API כדי ליצור את הבקשות:

נקודת קצה של שירות ומסמך Discovery

ממשקי ה-KMS API מסופקים בשני חבילות, בהתאם לפריסה אזורית או לפריסה גלובלית.

נקודות הקצה של ממשקי ה-API של KMS ברמת האזור וברמה הגלובלית הן:

  • 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 בדפדפן ולקבל את מסמך ה-Discovery של 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

מקורות מידע לדוגמה

אלה דוגמאות למשאבים. מרחב השמות הוא מרחב שמות של פרויקט. מידע נוסף על יצירת מפתחות זמין בקטע יצירת מפתח בדף יצירה ומחיקה של מפתחות.

AEADKey resource

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