No se pudieron hacer las confirmaciones de mi segundo correo como “verificadas” en GitHub

3 minutos de lectura

Avatar de usuario de Dentrax
dentrax

Actualmente, uso 2 correos electrónicos (Personal + Empresa) con una clave SSH para iniciar sesión en GitHub. Pero uso la misma clave GPG para firmar. Ambos están verificados en mi página de configuración de correo electrónico de GitHub.

En el primero (personal), no hay problema, cuando hago una confirmación aparece como Verificado. En el segundo (empresa), las confirmaciones aparecen como Inconfirmado en GitHub con el siguiente mensaje de advertencia:

El correo electrónico en esta firma no coincide con el correo electrónico del confirmador.

$ gpg --list-secret-keys --keyid-format LONG

...
sec   rsa4096/MY_GPG_KEY_ID 2020-05-19 [SC] [expires: 2022-05-19]
...
uid    [ultimate] Furkan (Company key) <second_email@test.com>
uid    [ultimate] Furkan <first_email@test.com>

En el repositorio:

$ git log --show-signature

...
gpg: Good signature from "Furkan (Company key) <second_email@test.com>" [ultimate]
gpg:                 aka "Furkan <first_email@test.com>" [ultimate]
Author: MyGitHubNickname <second_email@test.com>
...

Ajustes de configuración locales:

$ git config --local --list

...
user.name=Furkan
user.email=second_email@test.com

Ajustes de configuración globales:

$ git config --global --list

...
user.name=MyGitHubNickname
user.email=second_email@test.com
user.signingkey=MY_40_CHARACTER_SIGNING_KEY

Pero no funcionó:

$ git commit -S --amend --reset-author
$ git push --force

Veo MI_GPG_KEY_ID clave en la parte inferior de esta ventana emergente, exactamente lo mismo.

imagen

Seguí Solución de problemas de verificación de firma de confirmación y Usar una dirección de correo electrónico verificada en su clave GPG guías como se describe en GitHub Docs, pero aún así no solucionó el problema.

  • En su configuración de usuario de GitHub > “Claves SSH y GPG”, ¿ve ambas direcciones de correo electrónico en la lista para la clave en cuestión?

    – qianshi

    12 oct 2021 a las 11:06


  • No pude ver ambas direcciones de correo electrónico en las claves GPG, hay dos correos iguales, pero se configuró en mi correo principal. Exporté la clave pública gpg de mi correo secundario: gpg --output public.pgp --armor --export name@mail Pero GitHub dice: “La clave ya existe y la clave pública ya existe”

    – Dentrax

    13 oct 2021 a las 8:12


Todo lo que has hecho hasta ahora es correcto; solo te falta el paso final, que es actualizar la copia de GitHub de tu clave pública.

Necesita regenerar su clave pública (gpg --armor --export KEY_ID), luego, en la configuración de usuario de GitHub > “Claves SSH y GPG”, debe eliminar la clave original y cargue la clave pública regenerada.

Así es como debería quedar. Las confirmaciones firmadas con cualquiera de las direcciones enumeradas ahora se mostrarán como verificadas.

Clave GPG con dos direcciones de correo electrónico asociadas

  • Si cargó anteriormente esta misma clave pero con una sola dirección, por alguna razón, GitHub no le permitirá cargar su clave actualizada si no elimina primero la original (“La clave ya existe y la Clave pública ya existe”). .

    – qianshi

    14 de octubre de 2021 a las 2:16

  • eliminar la clave original“me lo resolvio

    – FANTASMA-34

    10 de noviembre de 2022 a las 21:10

En mi caso hubo una discrepancia entre el autor y el autor. GitHub muestra al autor de forma predeterminada, pero el confirmador se configuró en algo generado automáticamente.

Puedes consultar con git log --format=full

  • Según su comando git, he notado que mis confirmaciones están utilizando un correo electrónico generado aleatoriamente como Autor y Confirmación. Después de actualizar mi correo electrónico en Menú Git -> Opciones, ahora puedo ver el signo verificado para mi confirmación y, por primera vez, no me pidió la contraseña para la confirmación. No sé cómo sucedió. Si alguien sabe cómo es posible confirmar la verificación sin contraseña.

    – Pranesh Janarthanan

    21 de junio de 2021 a las 9:03


  • Mismo. Verifique el correo electrónico actual usando git config user.email y, si es incorrecto, establecer con git config user.email "newemail@example.com" o git config --global user.email "newemail@example.com".

    – nicolaus-hee

    17 de diciembre de 2021 a las 17:28

¿Ha sido útil esta solución?