Skip to main content

Referencia de tipos de credenciales de GitHub

Documentación de referencia para todos los tipos de credenciales mediante programación que pueden acceder a GitHub, incluidos los formatos de token, la duración, las funcionalidades de autorización de SSO y las opciones de revocación.

En este artículo se proporciona una referencia consolidada para todos los tipos de credenciales programáticas que pueden tener acceso a GitHub. Use esta referencia para auditar la actividad y administrar la revocación de credenciales, especialmente durante los incidentes de seguridad.

Introducción a los tipos de credenciales

En la tabla siguiente se enumeran todos los tipos de credenciales que pueden acceder mediante programación a GitHub.

Tipo de credencialPrefijo de credencialDuración útilRevocaciónAsociado a
Personal access token (classic)ghp_Larga duraciónManualCuenta de usuario
Fine-grained personal access tokengithub_pat_Configurable (hasta 1 año o sin expiración)ManualCuenta de usuario
          [
          OAuth app token de acceso](#oauth-app-access-tokens) | `gho_` | Duradero | Manual | Cuenta de usuario |

| GitHub App token de acceso de usuario | ghu_ | Corta duración (8 horas) | Expiración automática o manual | Cuenta de usuario | | GitHub App token de acceso de instalación | ghs_ | Corta duración (1 hora) | Expiración automática | Instalación de la aplicación | | GitHub App token de actualización | ghr_ | Larga duración (6 meses) | Manual | Cuenta de usuario | | Clave SSH de usuario | No es aplicable | Larga duración | Manual | Cuenta de usuario | | Implementar clave | No es aplicable | Larga duración | Manual | Repositorio | | GITHUB_TOKEN (GitHub Actions) | No es aplicable | Corta duración (duración del trabajo) | Expiración automática | Ejecución de flujo de trabajo |

Revocación de credenciales

En las secciones siguientes se describen las opciones de revocación de cada tipo de credencial en función del rol. Consulte también Vencimiento y revocación de tokens.

Nota:

Los propietarios de empresas tienen opciones para acciones masivas en incidentes importantes. Vea Acciones masivas para incidentes de seguridad.

Personal access token (classic)

  • Si el token le pertenece, puede eliminarlo a través de la configuración de su cuenta personal. Consulte Administración de tokens de acceso personal.

  •         **Los propietarios de la organización y los propietarios** de **empresas** no tienen visibilidad directa ni control sobre tokens individuales. Sin embargo, pueden:
    
  •         **Los propietarios de la organización y los propietarios de la empresa** en GitHub Enterprise Cloud con el inicio de sesión único (SSO) obligado pueden revocar la autorización de SSO para un personal access token (classic) específico. Consulte [Revoking SSO authorization (Revocar la autorización de SSO](#revoking-sso-authorization) ) para obtener más información.
    
  •         **Se revoca automáticamente** si se empuja a un repositorio público o a un gist, o si no se ha usado durante un año. Consulte [AUTOTITLE](/authentication/keeping-your-account-and-data-secure/token-expiration-and-revocation).
    

Fine-grained personal access token

  • Si el token le pertenece, puede eliminarlo a través de la configuración de su cuenta personal. Consulte Administración de tokens de acceso personal.

  •         **Propietarios de la organización**: pueden ver y revocar tokens individuales. Sin embargo, tenga en cuenta que, cuando un propietario de la organización revoca una fine-grained personal access token, las claves SSH creadas por el token seguirán funcionando y el token seguirá siendo capaz de leer recursos públicos dentro de la organización. La revocación cambia el propietario del recurso de la organización al usuario y el usuario puede volver a asignarlo. Consulte [AUTOTITLE](/organizations/managing-programmatic-access-to-your-organization/reviewing-and-revoking-personal-access-tokens-in-your-organization).
    
  •         **Los propietarios de la organización** y **los propietarios de empresas** pueden:
    
  •         **Se revoca automáticamente** si se empuja a un repositorio público o a un gist, o si no se ha usado durante un año. Consulte [AUTOTITLE](/authentication/keeping-your-account-and-data-secure/token-expiration-and-revocation).
    

          OAuth app tokens de acceso

* Los usuarios pueden revocar su autorización a una OAuth app en su configuración de cuenta personal, que revocará los tokens asociados a la aplicación. Consulte Revisión de las aplicaciones autorizadas de OAuth.

  • Los propietarios de la organización pueden denegar el acceso a la organización a un OAuth app previamente aprobado. Consulte Denegación del acceso a una aplicación de OAuth anteriormente aprobada para tu organización.
  • Los propietarios de empresas y organizaciones no pueden revocar directamente la autorización de SSO para tokens individuales OAuth app.
  •         **Se revoca automáticamente** si se empuja a un repositorio público o a un gist, o si no se ha usado durante un año. Consulte [AUTOTITLE](/authentication/keeping-your-account-and-data-secure/token-expiration-and-revocation).
    

          GitHub App tokens de acceso de usuario

* Los usuarios pueden revocar su autorización a una GitHub App en su configuración de cuenta personal. Tenga en cuenta que esto revoca la autorización para todas las organizaciones, no solo una específica. Consulte Revisión y revocación de autorización de aplicaciones de GitHub.

  •         **Los propietarios** de la organización no pueden revocar las autorizaciones de usuario directamente, pero pueden suspender o desinstalar la aplicación para evitar el acceso a los recursos de la organización. Consulte [AUTOTITLE](/apps/using-github-apps/reviewing-and-modifying-installed-github-apps).
    
  • Los propietarios de empresas y organizaciones no pueden revocar directamente la autorización de SSO para un token de acceso individual de usuario GitHub App.
  •         **Expira automáticamente** después de 8 horas de forma predeterminada. Consulte [AUTOTITLE](/authentication/keeping-your-account-and-data-secure/token-expiration-and-revocation#user-token-expired-due-to-github-app-configuration).
    

          GitHub App tokens de actualización

* Los usuarios pueden revocar la GitHub App autorización, que también invalida los tokens de actualización asociados. Consulte Revisión y revocación de autorización de aplicaciones de GitHub.

  •         **Expira automáticamente** después de 6 meses.
    

          GitHub App fichas de acceso para instalación

* Los propietarios de aplicaciones pueden revocar a través de DELETE /installation/token. Consulte Puntos de conexión de la API REST para GitHub App instalaciones. * Propietarios de las organizaciones y empresas: pueden desinstalar la aplicación de la organización, lo que desactiva todos los tokens de instalación asociados. Consulte Revisión y modificación de aplicaciones de GitHub instaladas. * Expira automáticamente después de 1 hora.

Claves SSH de usuario

  •         **Los usuarios** pueden eliminar la credencial a través de **Configuración > claves SSH y GPG**. Consulte [AUTOTITLE](/authentication/keeping-your-account-and-data-secure/reviewing-your-ssh-keys).
    
  •         **Los propietarios de organizaciones y de empresas** en GitHub Enterprise Cloud con SSO obligatorio pueden revocar la autorización de SSO para una clave SSH específica. Una vez revocada, no se puede volver a autorizar la misma clave: el usuario debe crear una nueva clave SSH. Consulte [Revoking SSO authorization (Revocar la autorización de SSO](#revoking-sso-authorization) ) para obtener más información.
    
  •         **Se elimina automáticamente** si no se hausado durante un año. Consulte [AUTOTITLE](/enterprise-cloud@latest/authentication/troubleshooting-ssh/deleted-or-missing-ssh-keys).
    

Para más información sobre las claves SSH, consulte Adición de una nueva clave SSH a la cuenta de GitHub.

Claves de implementación

  •         **Los administradores del repositorio** pueden eliminar claves a través de **la configuración del repositorio > Seguridad > Implementar claves**. También está disponible a través de la API REST de claves de implementación. Consulte [AUTOTITLE](/authentication/keeping-your-account-and-data-secure/reviewing-your-deploy-keys).
    
  •         **Los propietarios de la organización** pueden deshabilitar las claves de implementación por completo en toda la organización, lo que deshabilita todas las claves de implementación existentes. Consulte [AUTOTITLE](/organizations/managing-organization-settings/restricting-deploy-keys-in-your-organization).
    
  •         **Los propietarios de empresas** pueden aplicar una directiva para deshabilitar las claves de implementación en todos los repositorios. Consulte [AUTOTITLE](/admin/enforcing-policies/enforcing-policies-for-your-enterprise/enforcing-repository-management-policies-in-your-enterprise).
    

Para obtener más información sobre la implementación de claves, consulte Administrar las llaves de despliegue.

          `GITHUB_TOKEN` (GitHub Actions)

* Expira automáticamente: GITHUB_TOKEN se crea al principio de cada trabajo de flujo de trabajo y expira cuando se completa el trabajo. No hay ningún mecanismo de revocación manual. Durante un incidente, puede deshabilitar GitHub Actions en el repositorio para evitar que se emita nuevos tokens.

Para obtener más información sobre GITHUB_TOKEN, vea GITHUB_TOKEN.

Autorización de SSO

Cuando se requiere el inicio de sesión único (SSO) en el nivel empresarial, se aplica en el nivel de organización o se habilita para una organización y un miembro ha vinculado una identidad, determinados tipos de credenciales deben estar autorizados para una organización para poder acceder a los recursos de la organización. En la tabla siguiente se indica qué tipos de credenciales se pueden autorizar para una organización.

Tipo de tokenAdmite la autorización de SSO.Los administradores pueden revocar la autorización de SSO
Personal access token (classic)
Fine-grained personal access token
          OAuth app token de acceso | 
          <svg version="1.1" width="16" height="16" viewBox="0 0 16 16" class="octicon octicon-check" aria-label="Yes" role="img"><path d="M13.78 4.22a.75.75 0 0 1 0 1.06l-7.25 7.25a.75.75 0 0 1-1.06 0L2.22 9.28a.751.751 0 0 1 .018-1.042.751.751 0 0 1 1.042-.018L6 10.94l6.72-6.72a.75.75 0 0 1 1.06 0Z"></path></svg>
          [^1] | <svg version="1.1" width="16" height="16" viewBox="0 0 16 16" class="octicon octicon-x" aria-label="No" role="img"><path d="M3.72 3.72a.75.75 0 0 1 1.06 0L8 6.94l3.22-3.22a.749.749 0 0 1 1.275.326.749.749 0 0 1-.215.734L9.06 8l3.22 3.22a.749.749 0 0 1-.326 1.275.749.749 0 0 1-.734-.215L8 9.06l-3.22 3.22a.751.751 0 0 1-1.042-.018.751.751 0 0 1-.018-1.042L6.94 8 3.72 4.78a.75.75 0 0 1 0-1.06Z"></path></svg> |

| GitHub App token de acceso de usuario | [^1] | | | GitHub App token de acceso de instalación | (no obligatorio) | No es aplicable | | GitHub App token de actualización | | No es aplicable | | Clave SSH de usuario | | | | Clave de despliegue | (con ámbito de repositorio) | No es aplicable | | GITHUB_TOKEN (GitHub Actions) | (de ámbito de repositorio) | No es aplicable |

          [^1]: SSO authorization is granted automatically when the user authorizes the app during an active SAML or OIDC session. These authorizations are not visible to users or admins in the GitHub UI, and are not returned by the [List SAML SSO authorizations for an organization](/rest/orgs/orgs#list-saml-sso-authorizations-for-an-organization) REST API endpoint.

Para obtener información sobre cómo autorizar una credencial para el inicio de sesión único, consulte Autorización de un token de acceso personal para su uso con el inicio de sesión único, Administración de tokens de acceso personal y Autorización de una clave SSH para su uso con el inicio de sesión único.

Revocar la autorización de SSO

En GitHub Enterprise Cloud con SSO aplicado, cuando una credencial admite la autenticación de SSO, hay dos opciones independientes de contención:

  •         **Elimine o revoque la propia credencial**: quita permanentemente todo el acceso asociado a la credencial. Consulte las secciones de tipos de credenciales individuales anteriores para saber quién puede realizar esta acción.
    
  •         **Revocar la autorización de SSO de la credencial**: impide que la credencial acceda a los recursos de una organización específica sin eliminarla. Una vez revocado, el usuario no puede volver a autorizar la misma credencial; deben crear uno nuevo.
    

Los administradores de empresa y los propietarios de la organización pueden revocar la autorización de SSO para los tipos de credenciales marcados en la tabla anterior:

  •         **Los propietarios de la organización** pueden administrar las autorizaciones de SSO para organizaciones con SSO de nivel de organización en la interfaz de GitHub usuario. Consulte [AUTOTITLE](/enterprise-cloud@latest/organizations/granting-access-to-your-organization-with-saml-single-sign-on/viewing-and-managing-a-members-saml-access-to-your-organization).
    
  •         **Los propietarios de empresas** pueden administrar autorizaciones de SSO para empresas con SSO de nivel empresarial (incluido Enterprise Managed Users) a través de la interfaz de usuario GitHub. Consulte [AUTOTITLE](/enterprise-cloud@latest/admin/managing-accounts-and-repositories/managing-users-in-your-enterprise/viewing-and-managing-a-users-saml-access-to-your-enterprise#viewing-and-revoking-authorized-credentials).
    

También puede administrar las autorizaciones de SSO a través de la API REST. Consulte Puntos de conexión de API REST para organizaciones.

Durante un incidente de seguridad, los propietarios de la empresa pueden revocar autorizaciones de SSO de forma masiva. Consulte Acciones en masa para incidentes de seguridad.

Acciones masivas para incidentes de seguridad

Durante un incidente de seguridad importante, hay algunas acciones masivas a nivel empresarial que los propietarios de la empresa en GitHub Enterprise Cloud pueden realizar para responder rápidamente. Estas acciones afectan a las claves SSH de usuario, OAuth app los tokens de acceso de usuario, GitHub App los tokens de acceso de usuario, personal access tokens (classic)y fine-grained personal access tokens. No afectan a los tokens de acceso de GitHub App instalación, a las claves de implementación ni GITHUB_TOKEN.

Advertencia

Estas son acciones de alto impacto que se deben reservar para incidentes de seguridad importantes. Es probable que interrumpan las automatizaciones y podrían tardar meses en restaurar el estado original.

  •         **Bloquear el inicio de sesión único**: Bloquear temporalmente el inicio de sesión único para todos los usuarios, excepto los propietarios de la empresa, impidiendo el acceso a los recursos protegidos por inicio de sesión único. Disponible para Enterprise Managed Users o para empresas que usan el inicio de sesión único. Consulte [AUTOTITLE](/enterprise-cloud@latest/admin/managing-iam/respond-to-incidents/lock-down-sso).
    
  •         **Revocar todas las autorizaciones de SSO**: quite las autorizaciones de SSO para las credenciales de usuario en todas las organizaciones de la empresa. Las credenciales no se eliminan, pero pierden el acceso a los recursos de la organización protegida por SSO. Una vez revocadas, las credenciales no se pueden volver a autorizar; los usuarios deben crear nuevas credenciales. Disponible para Enterprise Managed Users o para empresas que usan el inicio de sesión único. Consulte [AUTOTITLE](/enterprise-cloud@latest/admin/managing-iam/respond-to-incidents/revoke-authorizations-or-tokens).
    
  •         **Eliminar todos los tokens y claves de usuario**: elimine completamente las credenciales de usuario y quite todo el acceso. Disponible solo para <c0/><c1>. Consulte [AUTOTITLE](/enterprise-cloud@latest/admin/managing-iam/respond-to-incidents/revoke-authorizations-or-tokens).
    

Nota:

En el caso de las empresas con cuentas personales (no EMU) que usan SSO, la opción "eliminar todos los tokens y claves" no está disponible. La acción "revocar autorizaciones de inicio de sesión único (SSO)" bloquea el acceso a los recursos de la organización protegidos por SSO, pero no impide que las credenciales accedan a los puntos de conexión o recursos de nivel empresarial en organizaciones que no aplican el inicio de sesión único. En el caso de las empresas sin SSO, no hay ninguna acción masiva disponible.