Acceso a GitHub con Personal Access Token
16 Dec 2020
A partir del 13 de agosto de 2021, al utilizar operaciones Git, GitHub impedirá el acceso a sus repositorios mediante el uso de la contraseña de usuario. Esta medida se toma para obligar a los usuarios a utilizar métodos más seguros de autenticación, como son los token de acceso personal (PAT), los token OAuth, o el protocolo SSH.
Existen tres formas de acceso remoto seguro a los repositorios de Github, usando comandos de consola u otras aplicaciones de escritorio:
GitHub Desktop no se ve afectado por esta política, pues internamente usa un token OAuth.
Token de Acceso Personal
Se puede usar un token de acceso personal (PAT) que sustituya a la contraseña del usuario.
Para crear un PAT deberemos seguir los pasos indicados en la Guía de GitHub para Crear un token de acceso personal.
Una vez obtenido el token, se puede usar en lugar de la contraseña cuando se acceda a operaciones HTTPS Git.
$ git clone https://github.com/nombredeusuario/repo.git
Username: tu_nombredeusuario
Password: tu_token
Almacenar las credenciales GitHub en el Git local
Se puede configurar Git para que recuerde, durante un determinado tiempo, las credenciales del usuario introducidas.
- Activar el credential helper. Por defecto Git guardará las credenciales durante 15 minutos.
$ git config --global credential.helper cache
- Para cambiar el tiempo que Git almacenará las credenciales (por ejemplo 1 hora).
$ git config --global credential.helper 'cache --timeout=3600'
Autenticación de Dos Factores
Los usuarios pueden activar la Autenticación de Dos Factores (2FA) para asegurarse de que utilizan un PAT al conectarse a GitHub. A diferencia de la anterior opción, en la que siempre se usa el mismo PAT, con 2FA se generará un nuevo PAT cada vez que se inserte las credenciales.
Esta guía oficial muestra los pasos necesarios para configurar el acceso 2FA con GitHub.
Autenticación mediante SSH
Utilizando el protocolo SSH se puede conectar con GitHub sin tener que indicar el nombre de usuario y el token en cada conexión. Al configurar este método se generará una clave SSH que se añadirá al agente SSH, al igual que a la cuenta GitHub.
Para configurar este protocolo puede consultar la Guía para conectar a GitHub con SSH.
Comentarios