デフォルトの Key Access Justifications ポリシーを設定する

このページでは、Assured Workloads のデフォルトの Key Access Justifications ポリシーを構成する方法について説明します。組織、フォルダ、プロジェクトのデフォルトの Key Access Justifications ポリシーを設定できます。鍵の作成時に Key Access Justifications ポリシーが鍵に設定されていない限り、デフォルトの Key Access Justifications ポリシーが、そのリソース内で作成された新しい鍵に自動的に適用されます。デフォルトの Key Access Justifications ポリシーは、既存の鍵には適用されません。

始める前に

  • デフォルトの Key Access Justifications ポリシーを設定できるのは、Assured Workloads の日本リージョン コントロール パッケージに登録されているフォルダ内の Cloud KMS 鍵に対してのみです。

必要な IAM 権限

デフォルトの Key Access Justifications ポリシーを作成および管理するために必要な権限を取得するには、鍵を含む組織、フォルダ、またはプロジェクトに対する Key Access Justifications ポリシー構成管理者 roles/cloudkms.keyAccessJustificationsPolicyConfigAdmin)IAM ロールを付与するよう管理者に依頼してください。ロールの付与については、プロジェクト、フォルダ、組織に対するアクセス権の管理をご覧ください。

この事前定義ロールには、デフォルトの Key Access Justifications ポリシーを作成および管理するために必要な権限が含まれています。必要とされる正確な権限については、「必要な権限」セクションを開いてご確認ください。

必要な権限

デフォルトの Key Access Justifications ポリシーを作成および管理するには、次の権限が必要です。

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

カスタムロールや他の事前定義ロールを使用して、これらの権限を取得することもできます。

デフォルトの Key Access Justifications ポリシーを設定または変更する

コンソール

  1. Google Cloud コンソールで、[鍵管理] ページに移動します。

    [鍵管理] に移動

  2. [KMS Controls] をクリックし、[Key Access Justifications(KAJ)] をクリックします。

  3. [編集] をクリックします。

  4. [Key Access Justifications ポリシーを設定する] を選択し、[特定の理由コードを許可する] を選択します。

  5. [Justification reasons](正当な理由)で、[Customer-initiated access](お客様が自発的に行ったアクセス)、[Google-initiated system operation](Google が自発的に行ったシステム オペレーション)、および許可するその他の理由コードを選択します。お客様が開始したアクセスGoogle が開始したシステム オペレーションは、どちらも正常な機能に不可欠です。

  6. [作成] をクリックします。

gcloud

組織のデフォルト ポリシーを設定する

--organization フラグを指定して kms kaj-config update コマンドを使用し、フォルダのデフォルトの Key Access Justifications ポリシーを作成または更新します。

gcloud beta kms kaj-config update
    --organization=ORGANIZATION_NUMBER
    --allowed-access-reasons="ALLOWED_ACCESS_REASONS"

次のように置き換えます。

  • ORGANIZATION_NUMBER: デフォルトの Key Access Justifications ポリシーを設定する組織の番号。
  • ALLOWED_ACCESS_REASONS: 許可されたアクセス理由を一覧表示する Key Access Justifications ポリシー。カンマ区切りのリストとしてフォーマットされます(例: CUSTOMER_INITIATED_ACCESS,GOOGLE_INITIATED_SYSTEM_OPERATION)。正当化理由の一覧については、正当化コードをご覧ください。

フォルダにデフォルト ポリシーを設定する

--folder フラグを指定して kms kaj-config update コマンドを使用し、フォルダのデフォルトの Key Access Justifications ポリシーを作成または更新します。

gcloud beta kms kaj-config update
    --folder=FOLDER_ID
    --allowed-access-reasons="ALLOWED_ACCESS_REASONS"

次のように置き換えます。

  • FOLDER_ID: デフォルトの Key Access Justifications ポリシーを設定するフォルダの ID。
  • ALLOWED_ACCESS_REASONS: 許可されたアクセス理由を一覧表示する Key Access Justifications ポリシー。カンマ区切りのリストとしてフォーマットされます(例: CUSTOMER_INITIATED_ACCESS,GOOGLE_INITIATED_SYSTEM_OPERATION)。正当化理由の一覧については、正当化コードをご覧ください。

プロジェクトのデフォルト ポリシーを設定する

--project フラグを指定して kms kaj-config update コマンドを使用し、プロジェクトのデフォルトの Key Access Justifications ポリシーを作成または更新します。

gcloud beta kms kaj-config update
    --project=PROJECT_ID
    --allowed-access-reasons="ALLOWED_ACCESS_REASONS"

次のように置き換えます。

  • PROJECT_ID: デフォルトの Key Access Justifications ポリシーを設定するプロジェクトの ID。
  • ALLOWED_ACCESS_REASONS: 許可されたアクセス理由を一覧表示する Key Access Justifications ポリシー。カンマ区切りのリストとしてフォーマットされます(例: CUSTOMER_INITIATED_ACCESS,GOOGLE_INITIATED_SYSTEM_OPERATION)。正当化理由の一覧については、正当化コードをご覧ください。

REST

組織のデフォルト ポリシーを設定する

organizations.updateKeyAccessJustificationsPolicyConfig メソッドを使用して、組織のデフォルトの Key Access Justifications ポリシーを作成または更新します。

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: デフォルトの Key Access Justifications ポリシーを設定する組織の ID。
  • POLICY: 許可された allowedAccessReasons を一覧表示する Key Access Justifications ポリシー。JSON オブジェクトとしてフォーマットされます(例: {"allowedAccessReasons": ["CUSTOMER_INITIATED_ACCESS", "GOOGLE_INITIATED_SYSTEM_OPERATION"]})。考えられる正当化理由の一覧については、正当化コードをご覧ください。

フォルダにデフォルト ポリシーを設定する

folders.updateKeyAccessJustificationsPolicyConfig メソッドを使用して、フォルダのデフォルトの Key Access Justifications ポリシーを作成または更新します。

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: デフォルトの Key Access Justifications ポリシーを設定するフォルダの ID。
  • POLICY: 許可された allowedAccessReasons を一覧表示する Key Access Justifications ポリシー。JSON オブジェクトとしてフォーマットされます(例: {"allowedAccessReasons": ["CUSTOMER_INITIATED_ACCESS", "GOOGLE_INITIATED_SYSTEM_OPERATION"]})。考えられる正当化理由の一覧については、正当化コードをご覧ください。

プロジェクトのデフォルト ポリシーを設定する

projects.updateKeyAccessJustificationsPolicyConfig メソッドを使用して、プロジェクトのデフォルトの Key Access Justifications ポリシーを作成または更新します。

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: デフォルトの Key Access Justifications ポリシーを設定するプロジェクトの ID。
  • POLICY: 許可された allowedAccessReasons を一覧表示する Key Access Justifications ポリシー。JSON オブジェクトとしてフォーマットされます(例: {"allowedAccessReasons": ["CUSTOMER_INITIATED_ACCESS", "GOOGLE_INITIATED_SYSTEM_OPERATION"]})。考えられる正当化理由の一覧については、正当化コードをご覧ください。

デフォルトの Key Access Justifications ポリシーを表示する

コンソール

  1. Google Cloud コンソールで、[鍵管理] ページに移動します。

    [鍵管理] に移動

  2. [KMS Controls] をクリックし、[Key Access Justifications (KAJ)] をクリックします。選択した組織、フォルダ、プロジェクトのデフォルト ポリシーが表示されます。

gcloud

組織のデフォルトのポリシーを表示する

組織に設定されているデフォルトのポリシーを表示するには、--organization フラグを指定して kms kaj-config describe コマンドを実行します。

gcloud beta kms kaj-config describe --organization=ORGANIZATION_NUMBER

ORGANIZATION_NUMBER は、組織の番号に置き換えます。

レスポンスは次の例のようになります。

defaultKeyAccessJustificationPolicy:
  defaultPolicyAvailable: true
  allowedAccessReasons:
  - CUSTOMER_INITIATED_ACCESS
  - GOOGLE_INITIATED_SYSTEM_OPERATION
name: organizations/ORGANIZATION_NUMBER/kajPolicyConfig

フォルダのデフォルト ポリシーを表示する

フォルダに設定されているデフォルトのポリシーを表示するには、--folder フラグを指定して kms kaj-config describe コマンドを実行します。

gcloud beta kms kaj-config describe --folder=FOLDER_ID

FOLDER_ID は、フォルダの ID に置き換えます。

レスポンスは次の例のようになります。

defaultKeyAccessJustificationPolicy:
  defaultPolicyAvailable: true
  allowedAccessReasons:
  - CUSTOMER_INITIATED_ACCESS
  - GOOGLE_INITIATED_SYSTEM_OPERATION
name: folders/FOLDER_ID/kajPolicyConfig

プロジェクトのデフォルト ポリシーを表示する

プロジェクトに設定されているデフォルトのポリシーを表示するには、--project フラグを指定して kms kaj-config describe コマンドを実行します。

gcloud beta kms kaj-config describe --project=PROJECT_ID

PROJECT_ID は、プロジェクトの ID に置き換えます。

レスポンスは次の例のようになります。

defaultKeyAccessJustificationPolicy:
  defaultPolicyAvailable: true
  allowedAccessReasons:
  - CUSTOMER_INITIATED_ACCESS
  - GOOGLE_INITIATED_SYSTEM_OPERATION
name: projects/PROJECT_ID/kajPolicyConfig

このコマンドは、プロジェクトに設定されているデフォルトのポリシーがある場合は、そのポリシーを返します。プロジェクトにデフォルト ポリシーが設定されていない場合、プロジェクトが親フォルダまたは組織からデフォルト ポリシーを継承していても、このコマンドはポリシーを返しません。プロジェクトで有効なデフォルト ポリシーを表示するには、このページのプロジェクトで有効なデフォルトの Key Access Justifications ポリシーを表示するをご覧ください。

REST

organizations.getKajPolicyConfig メソッドを使用して、組織の既存のデフォルトの Key Access Justifications ポリシーに関するメタデータを取得します。

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

ORGANIZATION_ID は、デフォルトの Key Access Justifications ポリシーを取得する組織の ID に置き換えます。

レスポンスは次の例のようになります。

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

folders.getKajPolicyConfig メソッドを使用して、フォルダの既存のデフォルトの Key Access Justifications ポリシーに関するメタデータを取得します。

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

FOLDER_ID は、デフォルトの Key Access Justifications ポリシーを取得するフォルダの ID に置き換えます。

レスポンスは次の例のようになります。

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

projects.getKajPolicyConfig メソッドを使用して、プロジェクトの既存のデフォルトの Key Access Justifications ポリシーに関するメタデータを取得します。

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

PROJECT_ID は、デフォルトの Key Access Justifications ポリシーを取得するプロジェクトの ID に置き換えます。

レスポンスは次の例のようになります。

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

プロジェクトで有効なデフォルトの Key Access Justifications ポリシーを表示する

プロジェクトは、最も近い親フォルダまたは組織からデフォルトのポリシーを継承します。単一のプロジェクトの祖先に複数のデフォルト ポリシーが設定されている場合は、プロジェクトの有効なポリシーを取得して、そのプロジェクトで作成された新しい Cloud KMS 鍵に適用されるポリシーを確認できます。

Google Cloud コンソールで、プロジェクトに実際に適用されているデフォルトの Key Access Justifications ポリシーは、プロジェクトで鍵を作成しているときに表示されます。キーの作成時に、有効なデフォルト ポリシーを継承するか、新しいキーとポリシーを作成するかを選択します。

gcloud

プロジェクトの有効なデフォルトの Key Access Justifications ポリシーに関するメタデータを表示するには、projects.showEffectiveKeyAccessJustificationsPolicyConfig メソッドを呼び出します。

gcloud beta kms kaj-config show-effective-config --project=PROJECT_ID

PROJECT_ID は、有効なデフォルトの Key Access Justifications ポリシーを取得するプロジェクトの ID に置き換えます。

レスポンスは次の例のようになります。

effectiveKajPolicy:
  defaultKeyAccessJustificationPolicy:
    defaultPolicyAvailable: true
    allowedAccessReasons:
    - CUSTOMER_INITIATED_ACCESS
    - GOOGLE_INITIATED_SYSTEM_OPERATION
  name: folders/FOLDER_ID/kajPolicyConfig

REST

プロジェクトの有効なデフォルトの Key Access Justifications ポリシーに関するメタデータを表示するには、projects.showEffectiveKeyAccessJustificationsPolicyConfig メソッドを呼び出します。

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

PROJECT_ID は、有効なデフォルトの Key Access Justifications ポリシーを取得するプロジェクトの ID に置き換えます。

レスポンスは次の例のようになります。

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

次のステップ