Récupérer les clés d'endossement

Vous pouvez récupérer la partie publique de la clé d'endossement (EKPub) à partir d'une instance de VM protégée, à la fois pour la clé de chiffrement et pour la clé de signature. Vous pouvez utiliser la clé de chiffrement pour chiffrer les données afin que seul le vTPM puisse les lire, ou la clé de signature pour vérifier les signatures effectuées par le vTPM. Vous pouvez également utiliser la clé pour vérifier l'identité d'une instance de VM avant de lui envoyer des informations sensibles.

Vous devez disposer de l'autorisation getShieldedInstanceIdentity pour récupérer les clés d'endossement.

Récupération des clés d'endossement à l'aide de l'outil de ligne de commande gcloud

Utilisez la commande gcloud compute instances get-shielded-identity pour extraire la partie publique de la clé d'endossement à partir d'une instance de VM protégée.

    gcloud compute instances get-shielded-identity [INSTANCE_NAME]

Les résultats renvoyés se présentent comme suit :

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-----

Récupérer des clés d'endossement à l'aide de l'API Compute Engine

Vous pouvez utiliser l'API Compute Engine pour afficher les informations relatives à la clé d'endossement. Pour plus d'informations sur l'utilisation de l'API, consultez les guides d'utilisation.

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"
}