下表說明驗證權杖中支援的頂層聲明。這些項目符合 OpenID Connect 1.0 規格。
鍵 | 類型 | 說明 |
---|---|---|
標頭 | ||
x5c | 字串 | 僅存在於 PKI 權杖中。用來驗證 PKI 權杖的憑證鏈結。您可以從 PKI 權杖驗證端點下載根憑證。 |
JSON 資料酬載 | ||
attester_tcb |
字串陣列 |
一或多個 TCB (可信運算基底) 元件。這項聲明是用來指定認證證據的來源。 對於 Confidential Space 的 |
aud |
字串 |
目標對象。如果是搭配工作負載身分識別集區使用的預設權杖,對象為 如果是含有自訂目標對象的權杖,目標對象會從權杖要求中的目標對象回傳。長度上限為 512 個位元組。 |
dbgstat |
字串 | 硬體的偵錯狀態。在正式版圖片中,這個值為 disabled-since-boot 。在偵錯圖片中,該值為 enabled 。 |
eat_nonce |
字串或字串陣列 | 驗證權杖的一或多個隨機值。這些值會從自訂權杖要求中傳送的權杖選項回呼。每個隨機值必須介於 8 到 88 個位元組之間 (含 8 和 88)。最多可使用六個隨機碼。 |
exp |
Int,Unix 時間戳記 | 權杖的到期時間,系統不得在該時間或之後接受權杖進行處理。這個值是 JSON 數字,代表從 1970-01-01T0:0:0Z (以世界標準時間為準) 到到期時間的秒數。 |
google_service_accounts |
字串陣列 | 執行 Confidential Space 工作負載的已驗證服務帳戶。 |
hwmodel |
字串 |
硬體權杖的專屬 ID。有效值如下:
|
https://aws.amazon.com/tags |
物件 | 請參閱 AWS 主體標記聲明。 |
iat |
Int,Unix 時間戳記 | JWT 的核發時間。這個值是 JSON 數字,代表從 1970-01-01T0:0:0Z (以世界標準時間為準) 到問題發生時間的秒數。 |
iss |
字串 | 權杖的簽發者,設為 https://confidentialcomputing.googleapis.com 。 |
nbf |
Int,Unix 時間戳記 | JWT 無法用於處理作業的時間。 |
oemid |
Uint64 | Google
私人企業編號 (PEN),即 11129 。
|
secboot |
布林值 | 是否已啟用安全啟動功能,確保 VM 啟動程序期間已驗證韌體和作業系統。這個值一律為 true 。 |
sub |
字串 | 主體,也就是機密 VM 的完整虛擬機器 ID。例如:
https://www.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/instances/INSTANCE_ID 。
這個格式稱為「執行個體的 selfLink」。 |
submods |
陣列 | 一系列各種聲明。請參閱「Submods claims」。 |
tdx |
陣列 | 一系列各種聲明。請參閱「Intel TDX 聲明」。 |
swname |
字串 |
VM 的核准作業系統名稱。 值為 |
swversion |
字串陣列 |
作業系統版本。這個值是字串陣列,且只包含一個值。 版本格式為 |
Intel TDX 聲明
下表說明認證權杖中的 tdx
聲明。
鍵 | 類型 | 說明 |
---|---|---|
gcp_attester_tcb_status |
字串 |
字串值,代表受評估 Google Cloud 平台 TCB 層級狀態。如要進一步瞭解 這項聲明表示 Google 開始推出韌體時,TDX TCB 版本與 Intel 的參考值一致。不過,這無法保證 Google 裝置群組會根據 Intel 的即時 TCB 參考值保持最新狀態。 |
gcp_attester_tcb_date |
字串 | 認證平台適用的 TCB 日期。
Google Cloud 時間值為世界標準時間,採用 ISO 8601 格式 (YYYY-MM-DDThh:mm:ssZ) 。
|
Submods claims
下表說明認證權杖中的 submods
聲明。
鍵 | 類型 | 說明 |
---|---|---|
confidential_space.support_attributes |
字串陣列 | 值可以包含 USABLE 、STABLE 和 LATEST 。詳情請參閱「
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 |
字串 | 工作負載停止時,容器啟動器的重新啟動政策。
有效值為 Always 、OnFailure 和 Never 。預設值為 Never 。 |
Compute Engine 索賠
下表說明認證權杖中的 gce
聲明。
鍵 | 類型 | 說明 |
---|---|---|
instance_id |
字串 | VM 執行個體 ID。 |
instance_name |
字串 | VM 執行個體名稱。 |
project_id |
字串 | VM 執行的專案 專案 ID。 |
project_number |
字串 | VM 執行的專案編號。 |
zone |
字串 | 機密 VM 執行的 Compute Engine 區域。 |
容器映像檔簽章聲明
下表說明驗證權杖中的 image_signatures
聲明。
鍵 | 類型 | 說明 |
---|---|---|
key_id |
字串 |
公開金鑰的十六進位指紋。如要取得指紋,請執行下列指令: openssl pkey -pubin -in public_key.pem -outform DER | openssl sha256 其中 |
signature |
字串 | 與已簽署容器相關聯的酬載,其 Base64 編碼簽章,且遵循 簡易簽署格式。 |
signature_algorithm |
字串 |
用於簽署金鑰的演算法。可以是下列其中一項:
|
AWS 主體標記聲明
下表說明認證權杖中的 AWS_PrincipalTag
聲明。這些聲明會放在認證權杖的 principal_tags
物件中,也就是 https://aws.amazon.com/tags
聲明。如要瞭解 https://aws.amazon.com/tags
聲明結構,請參閱 AWS 主體標記聲明。
鍵 | 類型 | 說明 |
---|---|---|
confidential_space.support_attributes |
字串陣列 |
衍生支援屬性聲明。 這是原始聲明的串連字串表示法。 舉例來說,如果原始聲明是「最新」、「穩定」和「可用」,這個屬性會包含「LATEST=STABLE=USABLE」。如果原始著作權聲明只有「可用」,這項屬性就會包含「USABLE」。 |
container.image_digest |
字串陣列 | 請參閱「工作負載容器聲明」。 容器映像檔簽章和摘要不會出現在單一權杖中。因此,如果您在 AWS 政策中使用 |
container.signatures.key_id |
字串陣列 |
容器映像檔簽章金鑰 ID 的串連清單。這個欄位代表多個簽章金鑰 ID,這些 ID 會在陣列中合併為單一字串。 舉例來說,如果您有鍵 ID 容器映像檔簽章和摘要不會出現在單一權杖中。因此,如果您在 AWS 政策中使用 如要進一步瞭解容器映像檔簽章聲明,請參閱 AWS 政策與容器映像檔簽章聲明。 |
gce.project_id |
字串陣列 | 請參閱 Compute Engine 聲明。 |
gce.zone |
字串陣列 | 請參閱 Compute Engine 聲明。 |
後續步驟
如要進一步瞭解認證聲明,請參閱 IETF 草案「實體認證權杖 (EAT)」。
如要進一步瞭解 OpenID 符記聲明,請參閱 OpenID Connect Core 1.0。