設定預設的金鑰存取依據政策

本頁面說明如何為 Assured Workloads 設定預設的金鑰存取依據政策。您可以為機構、資料夾或專案設定預設的 Key Access Justifications 政策。除非在建立金鑰時設定 Key Access Justifications 政策,否則系統會自動將預設的 Key Access Justifications 政策套用至該資源中建立的新金鑰。預設金鑰存取依據政策不會套用至現有金鑰。

事前準備

  • 只有在 Assured Workloads 中,才能為日本區域控制項套件的 Cloud KMS 金鑰設定預設的金鑰存取理由政策。

必要 IAM 權限

如要取得建立及管理預設金鑰存取依據政策所需的權限,請要求管理員在包含金鑰的機構、資料夾或專案中,授予您「金鑰存取依據政策設定管理員」 (roles/cloudkms.keyAccessJustificationsPolicyConfigAdmin) IAM 角色。如要進一步瞭解如何授予角色,請參閱「管理專案、資料夾和機構的存取權」。

這個預先定義的角色具備建立及管理預設金鑰存取依據政策所需的權限。如要查看確切的必要權限,請展開「必要權限」部分:

所需權限

如要建立及管理預設金鑰存取依據政策,必須具備下列權限:

  • cloudkms.keyAccessJustificationsConfig.getKeyAccessJustificationsPolicyConfig
  • cloudkms.keyAccessJustificationsConfig.updateKeyAccessJustificationsPolicyConfig
  • cloudkms.keyAccessJustificationsConfig.showEffectiveKeyAccessJustificationsPolicyConfig

您或許還可透過自訂角色或其他預先定義的角色取得這些權限。

設定預設的金鑰存取依據政策

REST

使用 organizations.updateKeyAccessJustificationsPolicyConfig 方法,在機構中建立或更新預設的金鑰存取依據政策:

curl "https://cloudkms.googleapis.com/v1/organizations/ORGANIZATION_ID/kajPolicyConfig?updateMask=defaultKeyAccessJustificationPolicy" \
  --request "PATCH" \
  --header "authorization: Bearer TOKEN" \
  --header "content-type: application/json" \
  --data '{"name": "organizations/ORGANIZATION_ID/kajPolicyConfig", "defaultKeyAccessJustificationPolicy": POLICY}'

更改下列內容:

  • ORGANIZATION_ID:您要為哪個機構設定預設金鑰存取依據政策的機構 ID。
  • POLICY:允許的「金鑰存取理由」政策清單 allowedAccessReasons,格式為 JSON 物件,例如 {"allowedAccessReasons": ["CUSTOMER_INITIATED_ACCESS", "GOOGLE_INITIATED_SYSTEM_OPERATION"]}。如需可能的原因清單,請參閱原因代碼

使用 folders.updateKeyAccessJustificationsPolicyConfig 方法,在資料夾上建立或更新預設金鑰存取依據政策:

curl "https://cloudkms.googleapis.com/v1/folders/FOLDER_ID/kajPolicyConfig?updateMask=defaultKeyAccessJustificationPolicy" \
  --request "PATCH" \
  --header "authorization: Bearer TOKEN" \
  --header "content-type: application/json" \
  --data '{"name": "folders/FOLDER_ID/kajPolicyConfig", "defaultKeyAccessJustificationPolicy": POLICY}'

更改下列內容:

  • FOLDER_ID:您要設定預設金鑰存取依據政策的資料夾 ID。
  • POLICY:允許的「金鑰存取理由」政策清單 allowedAccessReasons,格式為 JSON 物件,例如 {"allowedAccessReasons": ["CUSTOMER_INITIATED_ACCESS", "GOOGLE_INITIATED_SYSTEM_OPERATION"]}。如需可能的原因清單,請參閱原因代碼

使用 projects.updateKeyAccessJustificationsPolicyConfig 方法,在專案中建立或更新預設的金鑰存取依據政策:

curl "https://cloudkms.googleapis.com/v1/projects/PROJECT_ID/kajPolicyConfig?updateMask=defaultKeyAccessJustificationPolicy" \
  --request "PATCH" \
  --header "authorization: Bearer TOKEN" \
  --header "content-type: application/json" \
  --data '{"name": "projects/PROJECT_ID/kajPolicyConfig", "defaultKeyAccessJustificationPolicy": POLICY}'

更改下列內容:

  • PROJECT_ID:要設定預設金鑰存取依據政策的專案 ID。
  • POLICY:允許的「金鑰存取理由」政策清單 allowedAccessReasons,格式為 JSON 物件,例如 {"allowedAccessReasons": ["CUSTOMER_INITIATED_ACCESS", "GOOGLE_INITIATED_SYSTEM_OPERATION"]}。如需可能的原因清單,請參閱原因代碼

取得預設金鑰存取依據政策

REST

使用 organizations.getKajPolicyConfig 方法,取得機構現有預設金鑰存取依據政策的中繼資料:

curl "https://cloudkms.googleapis.com/v1/organizations/ORGANIZATION_ID/kajPolicyConfig"

ORGANIZATION_ID 替換為要取得預設金鑰存取理由政策的機構 ID。

回應類似以下內容:

{
  "name" : "organizations/ORGANIZATION_ID/kajPolicyConfig"
  "defaultKeyAccessJustificationPolicy": {
    "allowedAccessReasons": [
      "CUSTOMER_INITIATED_ACCESS",
      "GOOGLE_INITIATED_SYSTEM_OPERATION"
    ]
  }
}

使用 folders.getKajPolicyConfig 方法,取得資料夾中現有預設金鑰存取依據政策的中繼資料:

curl "https://cloudkms.googleapis.com/v1/folders/FOLDER_ID/kajPolicyConfig"

FOLDER_ID 替換為您要取得預設金鑰存取依據政策的資料夾 ID。

回應類似以下內容:

{
  "name" : "folders/FOLDER_ID/kajPolicyConfig"
  "defaultKeyAccessJustificationPolicy": {
    "allowedAccessReasons": [
      "CUSTOMER_INITIATED_ACCESS",
      "GOOGLE_INITIATED_SYSTEM_OPERATION"
    ]
  }
}

使用 projects.getKajPolicyConfig 方法,取得專案現有預設金鑰存取依據政策的中繼資料:

curl "https://cloudkms.googleapis.com/v1/projects/PROJECT_ID/kajPolicyConfig"

PROJECT_ID 替換為要取得預設金鑰存取理由政策的專案 ID。

回應類似以下內容:

{
  "name" : "project/PROJECT_ID/kajPolicyConfig"
  "defaultKeyAccessJustificationPolicy": {
    "allowedAccessReasons": [
      "CUSTOMER_INITIATED_ACCESS",
      "GOOGLE_INITIATED_SYSTEM_OPERATION"
    ]
  }
}

取得專案的有效預設金鑰存取依據政策

專案會從最接近的祖先繼承預設政策。如果單一專案的祖先設定了多項預設政策,您可以取得專案的有效政策,查看套用至該專案中新建立 Cloud KMS 金鑰的政策。

REST

使用 projects.showEffectiveKeyAccessJustificationsPolicyConfig 方法,取得專案中有效預設金鑰存取依據政策的中繼資料:

curl "https://cloudkms.googleapis.com/v1/projects/PROJECT_ID:showEffectiveKeyAccessJustificationsPolicyConfig"

PROJECT_ID 替換為您要取得有效預設金鑰存取理由政策的專案 ID。

回應類似以下內容:

{
  "effectiveKajPolicy" : {
    "name" : "folders/FOLDER_ID/kajPolicyConfig"
    "defaultKeyAccessJustificationPolicy": {
      "allowedAccessReasons": [
        "CUSTOMER_INITIATED_ACCESS",
        "GOOGLE_INITIATED_SYSTEM_OPERATION"
      ]
    }
  }
}

後續步驟