構成証明トークンのクレーム


次の表に、構成証明トークンでサポートされている最上位のクレームを示します。これらの項目は、OpenID Connect 1.0 仕様に準拠しています。

証明書トークンの詳細

キー タイプ 説明
ヘッダー
x5c 文字列 PKI トークンにのみ存在します。PKI トークンの検証に使用する証明書チェーン。ルート証明書は、 PKI トークン検証エンドポイントからダウンロードできます。
JSON データ ペイロード
attester_tcb 文字列配列

1 つ以上の TCB(トラステッド コンピューティング ベース)コンポーネント。このクレームは、証明書エビデンスのソースを指定するためのものです。

Confidential Space の hwmodel claim "GCP_INTEL_TDX" の値は ["INTEL"] に設定されます。これは、証明書のルート オブ トラストが Intel 固有のハードウェア テクノロジーに由来することを示します。

aud 文字列

対象者。Workload Identity プールで使用されるデフォルトのトークンの場合、オーディエンスは https://sts.googleapis.com です。このトークンは、Confidential VM インスタンスのランチャーによって 1 時間ごとに取得されます。

カスタム オーディエンスを含むトークンでは、オーディエンスはトークン リクエストのオーディエンスからエコーされます。最大長は 512 バイトです。

dbgstat 文字列 ハードウェアのデバッグ ステータス。プロダクション イメージでは、値は disabled-since-boot です。デバッグ画像では、値は enabled です。
eat_nonce 文字列または文字列配列 認証トークンの 1 つ以上のノンス。値は、カスタム トークン リクエストで送信されたトークン オプションからエコーされます。各ノンスは 8 ~ 88 バイトの範囲内にする必要があります。最大 6 個のノンスを指定できます。
exp 整数、Unix タイムスタンプ トークンが処理のために受け入れられなくなる有効期限。値は、1970-01-01T0:0:0Z から UTC で測定された有効期限までの秒数を表す JSON 数値です。
google_service_accounts 文字列配列 Confidential Space ワークロードを実行している検証済みのサービス アカウント。
hwmodel 文字列

ハードウェア トークンの一意の識別子。有効な値は次のとおりです。

  • GCP_AMD_SEV
  • GCP_AMD_SEV_ES
  • GCP_SHIELDED_VM
  • GCP_INTEL_TDX
https://aws.amazon.com/tags オブジェクト AWS プリンシパル タグのクレームをご覧ください。
iat 整数、Unix タイムスタンプ JWT が発行された時刻。値は、1970-01-01T0:0:0Z から発行時刻までの秒数を UTC で測定した JSON 数値です。
iss 文字列 トークンの発行者。https://confidentialcomputing.googleapis.com に設定されます。
nbf 整数、Unix タイムスタンプ JWT を処理に使用できない期間。
oemid Uint64 Google の プライベート エンタープライズ番号(PEN)11129)。
secboot ブール値 セキュアブートが有効になっているかどうか。セキュアブートが有効になっている場合、VM のブートプロセス中にファームウェアとオペレーティング システムが認証されます。この値は常に true です。
sub 文字列 サブジェクト。Confidential VM の完全修飾仮想マシン ID です。例: https://www.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/instances/INSTANCE_ID。この形式は、インスタンスの selfLink と呼ばれます。
submods 配列 さまざまな申し立ての配列。サブモジュールのクレームをご覧ください。
tdx 配列 さまざまな申し立ての配列。インテル TDX の主張をご覧ください。
swname 文字列

VM の承認済みオペレーティング システムの名前。

値は CONFIDENTIAL_SPACEGCE です。CONFIDENTIAL_SPACE 値は、すべての検証に合格した強化された Confidential Space イメージとデバッグ Confidential Space イメージ用です。

swversion 文字列配列

オペレーティング システムのバージョン。値は 1 つの値のみを含む文字列配列です。

バージョンは YYYYMM## 形式です。ここで、## は、同じ月に使用されるイメージの前にリリースされたイメージの数を示すカウンタです。

インテル TDX クレーム

次の表に、構成証明トークンの tdx クレームを示します。

キー タイプ 説明
gcp_attester_tcb_status 文字列

評価対象の Google Cloud プラットフォームの TCB レベルのステータスを表す文字列値。tcbStatus の詳細については、Intel の Provisioning Certification Service API ドキュメントをご覧ください。

このクレームは、Google がファームウェアのロールアウトを開始した時点で、TDX TCB バージョンが Intel の参照値と一致していたことを示します。ただし、Google のフリートが Intel のリアルタイム TCB 参照値で常に最新の状態に保たれる保証はありません。

gcp_attester_tcb_date 文字列 証明する Google Cloud プラットフォームの TCB 日付。時刻値は、ISO 8601 形式の UTC (YYYY-MM-DDThh:mm:ssZ) です。

サブモジュールの申し立て

次の表に、構成証明トークンの submods クレームを示します。

キー タイプ 説明
confidential_space.support_attributes 文字列配列 値には USABLESTABLELATEST を含めることができます。詳細については、 Confidential Space イメージのライフサイクルをご覧ください。
confidential_space.monitoring_enabled オブジェクト 有効になっているシステム モニタリングの種類が表示されます。値は {"memory":false} または {"memory":true} です。
container オブジェクト ワークロード コンテナの請求をご覧ください。
gce オブジェクト Compute Engine の請求をご覧ください。

ワークロード コンテナのクレーム

次の表に、構成証明トークンの container クレームを示します。これらのクレームの詳細については、証明書のアサーションをご覧ください。

キー タイプ 説明
args 文字列配列 コンテナが呼び出される完全な argv。このクレームには、コンテナのエントリポイント パスと追加のコマンドライン引数が含まれます。
cmd_override 文字列配列 ワークロード イメージで使用されている CMD コマンドとパラメータ。
env オブジェクト コンテナに明示的に渡された環境変数とその値。
env_override オブジェクト コンテナ内の上書きされた環境変数。
image_digest 文字列 ワークロード コンテナのイメージ ダイジェスト。
image_id 文字列 ワークロード コンテナのイメージ ID。
image_reference 文字列 Confidential Space で実行されているワークロード コンテナのロケーション。
image_signatures オブジェクト配列 コンテナ イメージの署名クレームをご覧ください。
restart_policy 文字列 ワークロードが停止したときのコンテナ ランチャーの再起動ポリシー。有効な値は AlwaysOnFailureNever です。デフォルトは Never です。

Compute Engine の請求

次の表に、構成証明トークンの gce クレームを示します。

キー タイプ 説明
instance_id 文字列 VM インスタンス ID。
instance_name 文字列 VM インスタンス名。
project_id 文字列 VM が実行されているプロジェクトの プロジェクト ID
project_number 文字列 VM が実行されているプロジェクトのプロジェクト番号。
zone 文字列 Confidential VM が実行されている Compute Engine ゾーン。

コンテナ イメージの署名クレーム

次の表に、構成証明トークンの image_signatures クレームを示します。

キー タイプ 説明
key_id 文字列

公開鍵の 16 進数のフィンガープリント。フィンガープリントを取得するには、次のコマンドを実行します。

openssl pkey -pubin -in public_key.pem -outform DER | openssl sha256

ここで、public_key.pem は PEM 形式の公開鍵です。

signature 文字列 署名付きコンテナに関連付けられ、 Simple Signing 形式に準拠するペイロードの base64 エンコードされた署名。
signature_algorithm 文字列

鍵の署名に使用されるアルゴリズム。次のいずれかになります。

  • RSASSA_PSS_SHA256(SHA-256 ダイジェストを使用する RSASSA-PSS)
  • RSASSA_PKCS1V15_SHA256(SHA-256 ダイジェストを使用する RSASSA-PKCS1 v1_5)
  • ECDSA_P256_SHA256(P-256 曲線上の ECDSA(SHA-256 ダイジェストを使用))

AWS プリンシパル タグのクレーム

次の表に、構成証明トークンの AWS_PrincipalTag クレームを示します。これらのクレームは、構成証明トークンの principal_tags オブジェクトの https://aws.amazon.com/tags クレームに配置されます。https://aws.amazon.com/tags クレームの構造については、AWS プリンシパル タグのクレームをご覧ください。

キー タイプ 説明
confidential_space.support_attributes 文字列配列

サポート属性の派生クレーム。これは、元のクレームの連結された文字列形式です。

たとえば、元のクレームが「Latest」、「Stable」、「Usable」の場合、この属性には「LATEST=STABLE=USABLE」が含まれます。元のクレームが「Usable」のみの場合、この属性には「USABLE」が含まれます。

container.image_digest 文字列配列 ワークロード コンテナの請求をご覧ください。

コンテナ イメージの署名とダイジェストが 1 つのトークンに同時に表示されることはありません。したがって、AWS ポリシーで container.image_digest を使用している場合は、container.signatures.key_ids への参照をすべて削除する必要があります。

container.signatures.key_id 文字列配列

コンテナ イメージ署名キー ID の連結リスト。このフィールドは、配列内の 1 つの文字列に結合された複数の署名キー ID を表します。

たとえば、キー ID が aKey1zKey2bKey3 の場合、このクレームには値 aKey1=bKey3=zKey2 が含まれます。

コンテナ イメージの署名とダイジェストが 1 つのトークンに同時に表示されることはありません。したがって、AWS ポリシーで container.signatures.key_ids を使用している場合は、container.image_digest への参照をすべて削除する必要があります。

コンテナ イメージの署名クレームの詳細については、 コンテナ イメージの署名クレームを含む AWS ポリシーをご覧ください。

gce.project_id 文字列配列 Compute Engine の請求をご覧ください。
gce.zone 文字列配列 Compute Engine の請求をご覧ください。

次のステップ