> ## Documentation Index
> Fetch the complete documentation index at: https://translations.mintlify.site/llms.txt
> Use this file to discover all available pages before exploring further.

# Añade el inicio de sesión con GitHub a tu aplicación

> Aprende a añadir el inicio de sesión con GitHub a tu aplicación con Auth0. Configura una conexión social de GitHub con OAuth 2.0 para permitir que los usuarios se autentiquen con sus cuentas de GitHub.

Auth0 admite el inicio de sesión con GitHub, lo que permite a tus usuarios autenticarse con sus cuentas de GitHub mediante <Tooltip tip="OAuth 2.0: Marco de autorización que define protocolos y flujos de autorización." cta="Ver glosario" href="/es/docs/glossary?term=OAuth+2.0">OAuth 2.0</Tooltip>. Añadir GitHub como opción de inicio de sesión social ofrece una experiencia de acceso rápida y familiar para desarrolladores y usuarios técnicos.

Para configurar esta conexión, registra una aplicación OAuth en GitHub y, a continuación, configura la conexión en el Auth0 Dashboard con las credenciales que proporciona GitHub.

<Card title="Antes de empezar">
  Antes de configurar GitHub como una conexión social, necesitas:

  1. Una [cuenta de Auth0](https://auth0.com/signup). Si no tienes una, puedes registrarte gratis.
  2. Una [cuenta de GitHub](https://github.com/signup).
  3. Una aplicación registrada en el [Auth0 Dashboard](https://manage.auth0.com/#/applications).
</Card>

<div id="configure-github">
  ## Configurar GitHub
</div>

Cree una aplicación OAuth en GitHub para generar las credenciales que Auth0 necesita para establecer la conexión.

<Steps>
  <Step title="Abra la configuración de desarrollador de GitHub">
    Inicie sesión en su cuenta de GitHub. Seleccione su foto de perfil en la esquina superior derecha y, a continuación, seleccione **Settings**. En la barra lateral izquierda, seleccione **Developer settings** y, luego, **OAuth Apps**.
  </Step>

  <Step title="Registre una nueva aplicación OAuth">
    Seleccione **New OAuth App**. Si aún no ha creado ninguna aplicación, seleccione **Register a new application**.

    Complete los siguientes campos:

    | **Campo**                      | **Valor**                                                                                        |
    | ------------------------------ | ------------------------------------------------------------------------------------------------ |
    | **Application name**           | Un nombre que sus usuarios reconozcan y en el que confíen, por ejemplo `My App (Auth0)`          |
    | **Homepage URL**               | La URL completa de la página principal de su aplicación, por ejemplo `https://myapp.example.com` |
    | **Application description**    | (Opcional) Una descripción que se muestra a todos los usuarios de su aplicación                  |
    | **Authorization callback URL** | `https://YOUR_AUTH0_DOMAIN/login/callback`                                                       |

    Reemplace `YOUR_AUTH0_DOMAIN` por el dominio de su inquilino de Auth0. Puede encontrar este valor en [Auth0 Dashboard > Applications > Applications](https://manage.auth0.com/#/applications), en la pestaña **Settings**.

    Puede dejar **Enable Device Flow** sin seleccionar, a menos que su aplicación requiera autorización basada en dispositivos.

    Seleccione **Register application**.
  </Step>

  <Step title="Copie el ID de cliente y el Secreto del cliente">
    Después del registro, GitHub muestra la página de detalles de la aplicación. Copie el valor de **ID de cliente**.

    Seleccione **Generate a new client secret** para crear un secreto. Copie el valor generado de inmediato.

    <Callout icon="file-lines" color="#0EA5E9" iconType="regular">
      GitHub muestra el Secreto del cliente solo una vez. Guárdelo en un lugar seguro antes de salir de la página. Si lo pierde, deberá generar uno nuevo.
    </Callout>
  </Step>
</Steps>

<div id="configure-auth0">
  ## Configurar Auth0
</div>

Agrega la conexión de GitHub a tu inquilino de Auth0 e introduce las credenciales de la sección anterior.

<Steps>
  <Step title="Crear una conexión de GitHub">
    Ve a [Auth0 Dashboard > Authentication > Social](https://manage.auth0.com/#/social) y selecciona **Create Connection**. Selecciona **GitHub** de la lista de proveedores.
  </Step>

  <Step title="Seleccionar el propósito de la conexión">
    En **Purpose**, especifica cómo se usará esta conexión: para el inicio de sesión, las cuentas vinculadas o ambos.
  </Step>

  <Step title="Introducir tus credenciales de GitHub">
    En **General**, introduce el **ID de cliente** y el **Secreto del cliente** que copiaste de GitHub.
  </Step>

  <Step title="Seleccionar permisos">
    En **Permissions**, selecciona los permisos que requiere tu aplicación. La mayoría de las aplicaciones necesitan **Email address** para el correo electrónico del usuario y **Read user** para la información del perfil.
  </Step>

  <Step title="Guardar y habilitar la conexión">
    Selecciona **Create** para guardar la conexión.

    Selecciona la pestaña **Applications** y habilita la conexión para las aplicaciones que deban ofrecer el inicio de sesión con GitHub.
  </Step>
</Steps>

<div id="test-the-connection">
  ## Probar la conexión
</div>

Verifica que la conexión de GitHub funcione antes de implementar en producción.

1. Ve a [Auth0 Dashboard > Authentication > Social](https://manage.auth0.com/#/social).
2. Selecciona la conexión de GitHub de la lista.
3. Selecciona **Try Connection**.
4. Autentícate con tu cuenta de GitHub cuando se te solicite.
5. Confirma que Auth0 devuelve los datos del perfil del usuario, incluidos el username de GitHub y la dirección de correo electrónico.

<div id="keep-reading">
  ## Sigue leyendo
</div>

* [Añade Google Login a tu aplicación](/es/docs/authenticate/identity-providers/social-identity-providers/google)
* [Prueba las conexiones sociales con las claves de desarrollador de Auth0](/es/docs/authenticate/identity-providers/social-identity-providers/devkeys)
* [Crea conexiones sociales personalizadas](/es/docs/authenticate/identity-providers/social-identity-providers/oauth2)
