Botón para abrir el Menú Botón para cerrar el Menú
Logo da empresa Alura
Iniciar Sesión Nuestros Planes
Formaciones Conoce a Luri
  • Programación _
  • Front End _
  • Data Science _
  • DevOps _
  • Innovación y Gestión _
Artículos de Tecnología > Programación

Nueva exigencia de autenticación por token en Git ¿qué es y qué debo hacer?

Camila Alves
Camila Alves
23/03/2023

Compartir

Mira este artículo:
  1. Entonces ¿qué es necesario hacer para continuar usando las operaciones Git?
  2. Como editar credenciales en Windows
  3. Cómo editar una credencial de Git en Linux
  4. Cómo editar las credenciales en MacOS.
  5. Conclusión

Un portátil con el logo de Github siendo exhibido en la pantalla

¿Últimamente has encontrado este mensaje al ejecutar algunos comandos en git?

Logon failed, use ctrl+c to cancel basic credential prompt.
remote: Support for password authentication was removed on August 13, 2021. 
Please use a personal access token instead.
remote: Please see https://github.blog/2020-12-15-token-authentication-requirements-for-git-operations/ for more information.
fatal: unable to access ‘<repositório Git>’: The request URL returned error: 403 

Espacio para imagen 02

Esto sucedió, porque Github anunció un nuevo requisito de autenticación basado en token para Git. A partir del día 13 de agosto de 2021, la contraseña de la cuenta de Github ya no es aceptada para autenticar operaciones en Git.

Este cambio se debe por motivos de seguridad, ya que los tokens ofrecen algunos beneficios, como la posibilidad de guardar las informaciones del usuario en el token y no en el servidor, así como el hecho de poder configurarse para tener los permisos que desees y tener un periodo de expiración. Es decir, deja de funcionar después de un determinado tiempo, como si fuera una contraseña única y desechable.

De esta forma, si otra persona tiene acceso a tu token, se restringirá únicamente los permisos que hayas configurado previamente. Entonces, no tendrás el riesgo de perder tu cuenta de Github, ya que puedes descartar el token perdido y generar otro nuevamente.

Entonces ¿qué es necesario hacer para continuar usando las operaciones Git?

Github recomienda empezar a utilizar un token de acceso personal, pero si lo deseas, puedes optar por usar una clave SSH.

De esta manera, sigue un paso a paso de como generar tu token personal:

  1. En la página de Github, entra en tu cuenta.
  2. Ya en la página principal, selecciona tu usuario en el rincón superior derecho y haz clic en la opción Settings:

Página principal de Github con el menú del usuario en destaque

  1. En la página que abrirá, haz clic en la opción Devoloper settings, 24ª opción de la lista a la izquierda.

Imagen de la página de configuración de la cuenta con la opción Devoloper settings en destaque

  1. Selecciona la opción Personal access tokens, 3ª opción de la lista a la izquierda. Luego selecciona Tokens(classic), 2ª opción en la lista que se abre luego abajo.

Espacio para imagen 05

  1. Haz clic en la opción Generate new token en la parte superior izquierda y luego en Generate new token (classic) que es la 2ª opción en la nueva lista que se abre.

Espacio para imagen 06

  1. Confirma con tu contraseña de Github.

Espacio para imagen 07

  1. Di un nombre para tu token y define el tiempo de expiración.

Espacio para imagen 08

  1. Marca los permisos que deseas conceder al token. Un detalle, para usar el token para acceder a repositorios, selecciona la opción repo.

Espacio para imagen 09

  1. Por último, al seleccionar todas las opciones elegidas, haz clic en Generate token al final de la pantalla.

Espacio para imagen 10

Listo, aparecerá un código para que puedas copiar y pegar en el Administrador de Credenciales de tu máquina. Este proceso dependerá de tu sistema operacional.

Como editar credenciales en Windows

Después que generas el token, cópialo y accede al Panel de Control. Lo puedes encontrar digitando en la barra de búsqueda.

Espacio para imagen 11

En seguida, accede a Cuentas de Usuario:

Espacio para imagen 12

Haz clic en Administrar Credenciales de Windows:

Espacio para imagen 13

En Credenciales de Windows busca la sección de Credenciales Genéricas o github.com selecciónalo y ponlo a editar;

Espacio para imagen 14

Copia el token generado en la primera etapa y pega en la caja de texto de la Contraseña.

Espacio para imagen 15

En caso de que no encuentres el github.com, puedes seleccionar la opción Agregar una credencial genérica

Espacio para imagen 16

Y llenar los campos:

  • Dirección de red o Internet: https://github.com/
  • Nombre de usuario: El nombre de usuario que tienes en Github
  • Contraseña: El token personal generado anteriormente

Espacio para imagen 17

¡Listo! Luego podrás realizar operaciones de Git nuevamente sin solicitudes de inicio de sesión hasta la fecha de expiración del token generado.

Cómo editar una credencial de Git en Linux

En Linux, este proceso solo se puede realizar en la terminal. Al abrir un repositorio de Git en él y ejecutar comandos como git pull, git push o git clone, Git solicitará usuario y contraseña. Si introduces tu contraseña de GitHub como se hacía anteriormente, recibirás el mensaje citado al principio:

Espacio para imagen 18

De esta manera, simplemente tienes que ejecutar el comando de nuevo y en lugar de la contraseña, pegar tu token generado:

Espacio para imagen 19

Así, el comando se ejecutará con éxito:

Espacio para imagen 20

Sin embargo, aunque funcione, no es viable tener que pegar el token cada vez que se ejecutan estos comandos, ¿verdad? Para ello, simplemente escribe el siguiente comando para que la última contraseña utilizada se guarde:

git config --global credential.helper cache

De esta forma, en el próximo comando que se ejecute, Git solicitará la autenticación nuevamente, pero en los siguientes comandos, Git no pedirá tu nombre de usuario y contraseña de nuevo.

Espacio para imagen 21

Y al final, en caso de que quieras quitar el token de la configuración, haz lo siguiente:

git config --global --unset credential.helper

De esta manera, volverás a tener las solicitudes de autenticación nuevamente:

Espacio para imagen 22

Cómo editar las credenciales en MacOS.

Para configurar el token en Mac, el proceso es similar al de Windows. Accede a Keychain Access, para encontrarlo puedes hacer clic en el icono de búsqueda en la esquina derecha de la barra de menú:

Espacio para imagen 23

Fuente: Imagen retirada de la Documentación de Github

A continuación, busca por github.com, haz clic en internet password, edita y pega el token personal generado.

Si quieres eliminarlo, en la terminal escribe:

git credential-osxkeychain erase

Conclusión

En resumen, este cambio en el uso de tokens para autenticación es muy interesante, ya que puede ofrecer un mayor control y seguridad. Puede realizar todo el proceso mencionado anteriormente tantas veces como sea necesario, así como configurar los permisos y el tiempo de expiración de cada token generado de la manera que consideres mejor.

En caso de fallas de seguridad, por ejemplo, la persona estará limitada a los permisos otorgados al token y su cuenta de GitHub seguirá a salvo. Además, si esto sucede, elimina tu token yendo a GitHub, luego a Settings, Developer settings y Personal access tokens, el mismo procedimiento para generar el token, pero haz clic en Delete:

Espacio para imagen 24

Así estarás seguro nuevamente.

Espacio para imagen de la autora

Camila Fernanda Alves

Soy casi ingeniera de la Universidad Federal de Uberlândia e instructora aquí en Alura. He trabajado como pasante en el Scuba Team y he realizado algunas tutorías de Física, Circuitos Eléctricos e incluso Procesamiento de Señales. Actualmente, estoy comenzando a producir contenido relacionado con DevOps y también estoy aquí para sumergirme en la tecnología con ustedes y, siempre que sea posible, tratar de ayudarlos a encontrar las respuestas que necesitan en los foros. En mi tiempo libre, me gusta jugar juegos de Nintendo y Valorant.

Este artículo fue adecuado para Alura Latam por: Bruno Souza

Artículo Anterior
Estructura de datos: introducción
Siguiente Artículo
Tipos de Autenticación: Contraseña, Token, JWT, Dos Factores y Más.

Ver otros artículos sobre Programación

Navegación

  • Planes
  • Instructores
  • Blog
  • Política de privacidad
  • Términos de uso
  • Sobre nosotros
  • Preguntas frecuentes

¡CONTÁCTANOS!

  • ¡Quiero entrar en contacto!

Blog

  • Programación
  • Data Science
  • Front End
  • Innovación y Gestión
  • DevOps

AOVS Sistemas de Informática S.A CNPJ 05.555.382/0001-33

SÍGUENOS EN NUESTRAS REDES SOCIALES

YouTube Facebook Instagram Linkedin Whatsapp Spotify

NOVEDADES Y LANZAMIENTOS

Aliados

  • Programa de aceleração Scale-Up Endeavor
  • En Alura somos unas de las Scale-Ups seleccionadas por Endeavor, programa de aceleración de las empresas que más crecen en el país.
  • Growth Academy 2021 do Google For Startups
  • Fuimos unas de las 7 startups seleccionadas por Google For Startups en participar del programa Growth Academy en 2021
Alura

Powered by

Caelum

AOVS Sistemas de Informática S.A CNPJ 05.555.382/0001-33

SÍGUENOS EN NUESTRAS REDES SOCIALES

YouTube Facebook Instagram Linkedin Whatsapp Spotify

Cursos

Cursos de Programación
Lógica de Programación | Java
Cursos de Front End
HTML y CSS | JavaScript | React
Cursos de Data Science
Data Science | Machine Learning | Excel | Base de Datos | Data Visualization | Estadística
Cursos de DevOps
Docker | Linux
Cursos de Innovación y Gestión
Transformación Ágil | Marketing Analytics

Alura

  • Educação em Tecnologia

    • logo fiap FIAP
    • logo casa do codigo Casa do Código
    • logo pm3 PM3 - Cursos de Produto
  • Mais Alura

    • logo alura start START BY Alura
    • logo alura lingua Alura Língua
    • logo alura para empresas Alura Para Empresas
    • logo alura latam Alura LATAM
  • Comunidade

    • logo tech guide Tech Guide
    • logo 7 days of code 7 days of code
    • logo Hipsters ponto Jobs Hipsters ponto Jobs
  • Podcasts

    • logo Hipster Network Hipster Network
    • logo Hipsters ponto Tech Hipsters ponto Tech
    • logo Dev sem fronteiras Dev sem Fronteiras
    • logo Like a Boss Like a Boss
    • logo IA Sob Controle IA Sob Controle
    • logo Mesa de Produto Mesa de Produto
    • logo Decode Decode
    • logo FIAPCast FIAPCast