Google Cloud: ¿Cómo determinar la ID de clave de P12?

Google Cloud: ¿Cómo determinar la ID de clave de P12?

Dehttps://console.cloud.google.com/iam-admin/serviceaccounts?project=[id], un usuario con los permisos adecuados puede proporcionar una clave de cuenta de servicio. Hoy en día te lo entregan en formato JSON, pero antes te daban la opción de recibir un P12 (del cual el JSON es solo el P12 base64, con metadatos). Heredé un proyecto anterior que mantener y tengo un P12 para autenticarme.

Sin embargo, se enumeran varios ID de clave para la cuenta de servicio determinada. Me gustaría rotarlos todos y eliminar todo excepto una clave recién proporcionada. No puedo crear uno nuevo porque ya se alcanzó el máximo (10). Pero no puedo eliminarlo al azar porque la aplicación aún necesita ejecutarse sin obstáculos. Solo se necesita una y, salvo la ruleta, no puedo encontrar una manera de determinar QUÉ clave tengo.

Puedo autenticar:

[~/scratch]$ gcloud auth activate-service-account [email protected] --key-file=x.p12 --prompt-for-password
Password:
WARNING: .p12 service account keys are not recomended unless it is necessary for backwards compatability. Please switch to a newer .json service account key for this account.
Activated service account credentials for: [[email protected]]

y luego ejecutar comandos. Pero no puedo encontrar una manera, ya sea a través de Gcloud o mediante engaños, de hacer que Google me diga QUÉ clave tengo. Probé varios comandos de gcloud. ¿Hay algo en el registro de GCP, llamadas API directas, comandos no documentados o algo obvio que me haya pasado por alto?

Respuesta1

El ID de clave es la huella digital SHA1 del certificado adjunto. Puede extraer la huella digital SHA1 del archivo pkcs12 con el siguiente comando:

openssl pkcs12 -in /your/pkcs12/file.p12 -nodes | openssl x509 -noout -fingerprint

información relacionada