Recuperar claves de aprobación

En este tema se describe cómo recuperar la clave de aprobación (EKPub) de una instancia de VM blindada.

Puedes recuperar la clave de aprobación tanto para la clave de cifrado como para la clave de firma. Puedes usar la clave de cifrado para cifrar datos de modo que solo el vTPM pueda leerlos o utilizar la clave de firma para verificar las firmas que realiza el vTPM. También puedes recurrir a la clave para determinar la identidad de una instancia de VM antes de enviarle información sensible.

Para poder recuperar claves de aprobación, debes contar con el permiso getShieldedInstanceIdentity.

Recuperar claves de aprobación mediante la CLI de Google Cloud

Utiliza el comando gcloud compute instances get-shielded-identity para recuperar la parte pública de la clave de aprobación de una instancia de VM blindada.

    gcloud compute instances get-shielded-identity [INSTANCE_NAME]

Los resultados que obtengas deberían ser similares a los siguientes:

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

Recuperar claves de aprobación mediante la API Compute Engine

Puedes utilizar la API Compute Engine para consultar la información sobre las claves de aprobación. Para obtener más información sobre cómo usar la API, consulta las guías prácticas.

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

Siguientes pasos