本主題說明如何從受防護的 VM 執行個體中擷取簽署金鑰 (EKPub)。
您可以擷取加密金鑰和簽署金鑰的簽署金鑰。可使用加密金鑰來加密資料,如此僅有 vTPM 能讀取該資料,也可以使用簽署金鑰來驗證 vTPM 做出的簽名。您也可以在傳送機密資訊給 VM 執行個體前,使用金鑰來確認該執行個體的身分。
您必須具備 getShieldedInstanceIdentity
權限才能擷取簽署金鑰。
使用 Google Cloud CLI 擷取簽署金鑰
可使用 gcloud compute instances get-shielded-identity
指令列,從受防護的 VM 執行個體中擷取簽署金鑰的公用部分。
gcloud compute instances get-shielded-identity [INSTANCE_NAME]
傳回的結果看起來類似下列所示:
encryptionKey: ekPub: | -----BEGIN PUBLIC KEY----- MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEA4ucWqhLjIkcEJyqc8KJM 12345678abcdefghijklmnopqrstuvwxyz12345678abcdefghijklmnopqrstu oBSrm0swIu3x4LWR/Ebl5KA0EKe9YFGaS9Pguun1m6X8Ld2zAqmoIwnxDiOqxQEU mx2wxkjf0bbjxG5ZI1i3t/c/QzeaE2WWTlKdgnUDyxSloDBq63yywtoIrp1nbDLj X8qdBymixu8jXXp1iGwmEUltnEnx779JKTpKgKTEednri+NcfRmXHrnPCxfiPudQ 4wIDAQAB -----END PUBLIC KEY----- kind: compute#shieldedInstanceIdentity signingKey: ekPub: | -----BEGIN PUBLIC KEY----- MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAzQvcD+2LAnsXAgdsVYAc 12345678abcdefghijklmnopqrstuvwxyz12345678abcdefghijklmnopqrstu V/7WHasUuGlkbqiDOuDWgb15FAn35PU64HGey67McZTUT9EvrkT/ryXi4kZgBtoM lQIDAQAB -----END PUBLIC KEY-----
使用 Compute Engine API 擷取簽署金鑰
您可以使用 Compute Engine API 來查看簽署金鑰資訊。如要深入瞭解如何使用此 API,請參閱使用指南。
GET /compute/v1/projects/[PROJECT_ID]/zones/[ZONE]/instances/[INSTANCE_NAME]/getShieldedInstanceIdentity
{
"signingKey": {
"ekPub": [PEM-formatted key]
},
"encryptionKey": {
"ekPub": [PEM-formatted key]
},
"kind": "compute#shieldedInstanceIdentity"
}
後續步驟
- 瞭解如何修改受防護的 VM 執行個體選項。
- 瞭解自動針對完整性監控事件發出回應的方法。