Geekflare cuenta con el apoyo de nuestra audiencia. Podemos ganar comisiones de afiliados comprando enlaces en este sitio.
Comparte en:

¿Cómo configurar la autenticación sin contraseña en el repositorio privado de GitHub?

gitHub
Escáner de seguridad de aplicaciones web Invicti – la única solución que ofrece verificación automática de vulnerabilidades con Proof-Based Scanning™.

La repetición de la misma tarea es aburrida y dolorosa para programadores como nosotros. ¿No es así?

Una de esas tareas es interactiva con el repositorio privado de GitHub. ¿Qué pasa con eso? Sabes lo que es. Y está buscando formas de resolverlo y aterrizó en este artículo. Dejarás de buscar después de leer este artículo.

Entonces, aquí vamos a hablar sobre cómo acceder al repositorio privado de GitHub sin contraseña. Sin más preámbulos, comencemos.

Hay dos formas de acceder a cualquier repositorio de GitHub. Ellos son HTTPS y  SSH. La mayoría de ustedes está usando HTTPS. Pero ahora se da cuenta de que no es una forma eficaz de utilizar la HTTPS método para clonar los repositorios privados.

El acceso incluye clonación, empuje, tracción, etc. todo lo que esté relacionado con la actualización de nuestro repositorio en el control remoto.

No hay problema a la hora de acceder a los repositorios públicos. Pero, necesitamos autenticarnos mientras acceder a un repositorio privado. Hay diferentes formas de autenticarnos.

Comencemos con el más familiar ...

Si usa HTTPS

Probablemente deberías saber sobre el HTTPS método y buscando a los demás. Veamos rápidamente cómo acceder a un repositorio privado usándolo.

  • Copie el enlace de su repositorio privado.
Repositorio privado de GitHub
Repositorio privado de GitHub
  • Abra el terminal o cmd en su máquina.
  • Pega el comando git clone link para clonar el repositorio privado.
  • Vuelva a colocar la aquí con su enlace de repositorio privado.
  • Nos pedirá que nos autentiquemos. Entonces, tenemos que ingresar nuestras credenciales de GitHub.
  • Primero, nos pedirá que ingresemos nuestro nombre de usuario de GitHub. Ingrese su nombre de usuario de GitHub y presione Enter.
Nombre de usuario de autenticación
Nombre de usuario de autenticación
  • Ahora, necesitamos ingresar la contraseña. Escriba su contraseña de GitHub y presione Enter.
Contraseña de autenticación
Contraseña de autenticación

Eso es; hemos clonado el repositorio privado usando el HTTPS método. Ahora, actualice algo en el repositorio, confirme y envíelo a remoto.

¿Qué notaste?

De nuevo solicita la autenticación.

Autenticación push
Autenticación push
Autenticación push
Autenticación push

¿No es una tarea aburrida y pesada ingresar credenciales cada vez que interactuamos con el repositorio privado?

Sí lo es.

No podemos ingresar nuestras credenciales de GitHub cada vez que interactuamos con nuestro repositorio privado. Es un proceso que toma tiempo y ralentiza nuestro trabajo.

Hay diferentes formas de deshacerse del problema anterior. La mejor forma de hacerlo es utilizar SSH. Pero hay otras formas de hacerlo. Veámoslos todos uno por uno.

.git config

Toda la información sobre las versiones de nuestros repositorios se almacena en .git directorio. Es una carpeta oculta. Hay un config archivo en él que nos permite configurar los ajustes. Pero no se recomienda en general.

Podemos clonar un repositorio privado agregando nuestro nombre de usuario y  la contraseña en la URL del repositorio de la siguiente manera.

git clone https://<strong>username:password</strong>@github.com/<strong>username</strong>/<strong>repository_name</strong>.git

Actualizar el nombre de usuariola contraseñanombre_de_repositorio con los detalles apropiados. Dado que hemos proporcionado nuestras credenciales en la URL, no solicitará autenticación como hemos visto antes.

Por lo tanto, seguiremos el método de autenticación anterior y actualizaremos la configuración de nuestro repositorio en consecuencia. Veamos los pasos para deshacerse de la autenticación repetitiva actualizando la URL.

  • Abra la .git carpeta en su repositorio clonado.
Carpeta .git
Carpeta .git
  • Encontrarás un archivo con el nombre config. Ábralo usando cualquier editor de texto de su elección.
  • Habrá una línea con nuestro enlace de repositorio de la siguiente manera.
Enlace de repositorio en la configuración
Enlace de repositorio en la configuración
  • Actualice la URL agregando su nombre de usuario y  contraseña, como se ve arriba.
Actualización de la URL del repositorio
Actualización de la URL del repositorio

Ahora, actualice de nuevo algo en el repositorio, confirme y envíelo.

¿Observas algo?

Esta vez no debería haber pedido tus credenciales de GitHub. Entonces, hemos resuelto nuestro problema actualizando la configuración de nuestro repositorio.

Es posible que haya notado que no es seguro. Mientras exponemos nuestras credenciales. Y este método no funcionará en caso de que su contraseña de GitHub contenga @ carácter.

Entonces, existen algunas desventajas críticas al usar este método. Por lo tanto, ignorémoslo y pasemos al siguiente método.

credential.helper

EL credential.helper nos permite almacenar las credenciales para siempre en ~/.git-credentials archivo.

Almacenará nuestras credenciales cuando las ingresemos por primera vez. Nuevamente, cuando intentamos acceder al repositorio privado, no pedirá credenciales hasta que esté almacenado en ~/git-credentials expediente. Entonces, esa es una de las formas de evitar nuestro problema. Veámoslo en acción con pasos precisos.

  • Primero, necesitamos activar la opción para almacenar nuestras credenciales con el comando git config credential.helper store.
  • Después de activar la opción, intente acceder al repositorio privado con su nombre de usuario y contraseña.
  • Una vez que haya ingresado su nombre de usuario y contraseña, los almacenará en ~/.git-credentials archivo con sus credenciales de GitHub de la siguiente manera.
git-credenciales
git-credenciales

Ahora, nuevamente el mismo proceso para verificar si está funcionando correctamente o no. Actualiza, confirma y envía. Estoy seguro de que no le pedirá las credenciales si ha seguido los pasos anteriores para almacenar sus credenciales.

Va bien ...

¿Qué sucede si desea guardar las credenciales para horas en lugar de para siempre?

EL credential.helper proporciona una forma de almacenar nuestras credenciales temporalmente durante un cierto período de tiempo. Usamos cache en lugar de store para almacenar las credenciales durante un cierto período de tiempo.

EL cache almacenará nuestras credenciales para 15 minutos por defecto. Después de 15 minutos, el git volverá a solicitar las credenciales. Pero podemos cambiar la hora predeterminada usando el siguiente comando.

git config credential.helper 'cache --timeout={time_in_seconds}'

No olvide dar el tiempo en segundos. Veámoslo en acción.

  • Primero, necesitamos activar la opción de almacenar en caché nuestras credenciales con el comando git config credential.helper cache.
  • Acceda al repositorio privado con su nombre de usuario y contraseña.
  • Una vez que haya ingresado su nombre de usuario y contraseña, almacenará en caché sus credenciales de GitHub durante un tiempo específico.

Ahora, actualice, confirme y presione. Nuevamente, no le pedirá sus credenciales como lo hemos dicho para almacenarlas en caché.

Le hemos mostrado los comandos para trabajar en un repositorio inicializado de git. Podemos actualizar el git configuración global para todos los proyectos agregando el --global bandera en los comandos anteriores.

Personal Access Tokens

Los tokens de acceso personal se utilizan para dar acceso a la API de GitHub. Los tokens de acceso personal son como OAuth tokens. Por lo tanto, se pueden utilizar para la autenticación básica en lugar de una contraseña para git. Por lo tanto, podemos usar los tokens de acceso personal para resolver nuestro problema.

Veamos como hacerlo.

  • Inicie sesión en su cuenta de GitHub.
  • Visite la Ajustes.
Configuración de GitHub
Configuración de GitHub
  • Ahora ve a la Desarrollar escenarios desde la barra de navegación izquierda.
Configuración de desarrollador de GitHub
Configuración de desarrollador de GitHub
Configuración de desarrollador de GitHub
Configuración de desarrollador de GitHub
  • Haga clic en el Tokens de acceso personal para llegar a nuestro destino final. Verá los tokens de acceso personal de la siguiente manera.
Tokens de acceso personal de GitHub
Tokens de acceso personal de GitHub
  • Haga clic en el Generar nuevo token para generar uno nuevo.
Generar nuevo token
Generar nuevo token
  • Escriba el Nota: por la ficha. Puede pensar en ello como notas breves para que la ficha las recuerde.
Token de acceso personal Nota
Token de acceso personal Nota
  • Seleccione los permisos para el token. Los programas que utilizan el token otorgarán acceso a todos los permisos seleccionados. En nuestro caso, seleccione el repo.
Permisos de repositorio
Permisos de repositorio
  • Desplácese hasta la parte inferior y haga clic Generar token del botón.
Generar botón de token
Generar botón de token
  • Mostrará el token de acceso personal solo una vez de la siguiente manera. No podemos volver a ver nuestra ficha personal. Por lo tanto, cópielo y guárdelo en un lugar seguro. Usar una administrador de contraseñas si lo necesitas.
Token de acceso personal
Token de acceso personal
  • Hemos creado con éxito el Token de acceso personal.
  • Ahora es el momento de usarlo para acceder a nuestro repositorio privado.
  • Actualice la URL del repositorio en .git/config archivo como https://{personal_access_token}@github.com/hafeezulkareem/private_repository.git similar al primer método.
Token de acceso personal en la configuración
Token de acceso personal en la configuración

Ahora, intente acceder al repositorio privado.

¿Te pidió la autenticación?

No, no le pedirá la autenticación hasta que el token esté activo. Pasemos a la última forma de resolver nuestro problema.

SSH

SSH se utiliza para autenticarnos. Encuentra el documento completo sobre SSH en GitHub aquí.

La idea es sencilla. Genera una clave SSH, agrégala a la cuenta de GitHub y disfruta autenticación sin contraseña.

Veamos estos tres pasos en detalle.

  • Abra terminal o cmd en su sistema.
  • Ingrese el comando ssh-keygen -t rsa para generar una nueva clave SSH.
  • Solicitará el directorio para guardar la clave. prensa Enter para seleccionar el directorio predeterminado. Pero también puede cambiar el directorio según sus preferencias. Aquí, vamos con el directorio predeterminado.
Directorio SSH
Directorio SSH
  • Ahora, tenemos que ingresar al frase de contraseña para proteger nuestra clave SSH. Pero es opcional.
    • Si elegimos una frase de contraseña para la clave SSH, debemos ingresarla primero cada vez que encendemos nuestro sistema.
    • Si no elegimos la frase de contraseña, no es necesario que la ingrese primero.
Frase de contraseña SSH
Frase de contraseña SSH
  • Ingrese la frase de contraseña nuevamente para confirmarla.
Frase de contraseña SSH
  • Finalmente, generará una nueva clave SSH para nosotros de la siguiente manera.
Clave SSH
Clave SSH

Hemos generado con éxito una nueva clave SSH en nuestros sistemas. Creará dos archivos de la siguiente manera (si ha cambiado la ruta, los nombres de los archivos pueden variar).

Archivos de clave SSH
Archivos de clave SSH

Ahora es el momento de conectarse con nuestra cuenta de GitHub. El contenido del archivo con la extensión .pub deben copiarse en nuestra cuenta de GitHub para la conexión. En mi caso es id_rsa.pub.

  • Inicie sesión en su cuenta de GitHub.
  • Abra la Ajustes.
Configuración de GitHub
Configuración de GitHub
  • Haga clic en Claves SSH y GPG para llegar a nuestro destino final.
Claves SSH y GPG
Claves SSH y GPG
Claves SSH y GPG
Claves SSH y GPG
  • Haga clic en el Nueva clave SSH para agregar nuestra clave SSH recién generada.
Nueva clave SSH
Nueva clave SSH
  • Navegará a la siguiente pantalla.
Nueva clave SSH
Nueva clave SSH
  • Agregue el título apropiado para la clave SSH. Las claves SSH son diferentes para cada sistema. Entonces, elegir en base a esto es una de las buenas opciones. Pero no es la única opción. Puede elegir en función de otras cosas según sus preferencias.
  • Después de elegir el título, copie y pegue el .pub contenido en el segundo campo.
Nueva clave SSH
Nueva clave SSH
  • Finalmente, golpea el Agregar clave SSH y confirme el acceso con su contraseña de GitHub.
  • La clave SSH recién agregada tendrá el siguiente aspecto.
Nueva clave SSH
Nueva clave SSH

Hemos agregado nuestra clave SSH recién generada a GitHub. Ahora, tenemos que autenticar la conexión SSH para disfrutar de la autenticación sin contraseña más adelante. Para hacerlo, ingrese el siguiente comando en la terminal o cmd.

ssh -T git@github.com
Conexión SSH
Conexión SSH

Pedirá confirmación. Confirmalo. Y eso es todo, y hemos terminado.

Ahora, clona tu repositorio privado. Esta vez no pedirá ninguna autenticación.

Actualiza, confirma y envía. Ahí tienes. Ya no le pedirá la autenticación. Disfrútala.

Conclusión

¡Uf! hemos cubierto varios métodos para acceder a repositorios privados sin ingresar credenciales todo el tiempo. Puede utilizar cualquier método. Pero, la mejor práctica general es utilizar la SSH método de autenticación.

Nuevamente, depende de su preferencia; no hay una regla estricta para usar el único SSH método. Pero la mayoría de las empresas utilizan SSH método de autenticación, que es seguro y ahorra mucho tiempo. Y asegúrate de que tu Cartas credenciales estan seguros.

Feliz desarrollo 🙂

Gracias a nuestros patrocinadores
Más lecturas interesantes sobre el desarrollo
Impulse su negocio
Algunas de las herramientas y servicios para ayudar a que su negocio crezca.
  • Invicti utiliza Proof-Based Scanning™ para verificar automáticamente las vulnerabilidades identificadas y generar resultados procesables en cuestión de horas.
    Prueba Invicti
  • Web scraping, proxy residencial, administrador de proxy, desbloqueador web, rastreador de motores de búsqueda y todo lo que necesita para recopilar datos web.
    Prueba Brightdata
  • Semrush es una solución de marketing digital todo en uno con más de 50 herramientas en SEO, redes sociales y marketing de contenido.
    Prueba Semrush
  • Intruder es un escáner de vulnerabilidades en línea que encuentra debilidades de ciberseguridad en su infraestructura, para evitar costosas filtraciones de datos.
    Intente Intruder