Sobre cómo autorizar credenciales con GitHub App
De forma predeterminada, lo instalado por la empresa GitHub Apps no puede autorizar el uso de credenciales. Para reducir el número de veces que los miembros de la empresa deben autorizar la misma credencial para las organizaciones individuales, puede permitir que una aplicación autorice las claves de autenticación SSH existentes personal access tokens (classic) o comprobadas de propiedad del usuario. Se permiten hasta 50 organizaciones seleccionadas por solicitud.
Para autorizar una credencial para una sola organización sin GitHub App, consulte Autorización de un token de acceso personal para su uso con el inicio de sesión único o Autorización de una clave SSH para su uso con el inicio de sesión único.
Prerequisites
Para que la aplicación pueda autorizar las credenciales, se deben cumplir los siguientes requisitos:
- La empresa debe usar SSO empresarial.
- El propietario de la credencial debe ser miembro de cada organización donde la aplicación autorizará la credencial.
Creación de GitHub App
-
Registre una nueva aplicación. Para obtener instrucciones, consulte Registro de una aplicación de GitHub. La aplicación debe:
- Pertenecer a la empresa o a una organización dentro de la empresa.
- Disponer de acceso de escritura al permiso Credenciales de empresa.
-
Anote el identificador de cliente de la aplicación y, a continuación, genere y almacene de forma segura una clave privada. Consulte Administración de claves privadas para aplicaciones de GitHub.
-
Instale la aplicación en su cuenta empresarial. Consulte Instalación de una aplicación de GitHub en tu empresa.
-
En la dirección URL de la página de instalación de la aplicación, anote el identificador de instalación. El identificador es la cadena de números al final de la
/enterprises/ENTERPRISE/settings/installations/IDdirección URL.
Permitir que un GitHub App autorice credenciales
-
Vaya a su empresa. Por ejemplo, desde la página Empresas en GitHub.com.
-
En Configuración, haz clic en Seguridad de autenticación.
-
En "Credenciales", habilite Permitir GitHub Apps para autorizar las credenciales.
Generación de un token de acceso de instalación
La aplicación debe usar un token de acceso de instalación empresarial para autenticar sus solicitudes de API. Los tokens de acceso de instalación de la organización, los tokens de acceso de usuario y personal access tokens no se admiten.
Para generar un token de acceso de instalación:
- Use el identificador de cliente y la clave privada de la aplicación para generar un token web JSON (JWT). Consulte Generación de un token web JSON (JWT) para una aplicación de GitHub.
- Utiliza el JWT y el identificador de instalación de enterprise para crear un token de acceso de instalación. Consulte Generación de un token de acceso de instalación para una aplicación de GitHub.
El token de acceso de la instalación hereda los permisos de la empresa concedidos a la aplicación, no se puede restringir más y caduca al cabo de una hora.
Búsqueda de identificadores de credenciales
Para las credenciales que ya están autorizadas para una organización de su empresa, un propietario de la organización puede usar la API REST para obtener identificadores de forma masiva. Consulte Puntos de conexión de API REST para organizaciones.
En la respuesta, use authorized_credential_id para una fingerprint, o personal access token (classic) para una clave SSH. No use credential_id, que identifica la autorización de la credencial para esa organización.
Este extremo no devuelve credenciales no autorizadas para la organización. Para obtener un identificador para otra credencial, use uno de estos métodos:
- Para un personal access token (classic), abra el token desde la página de configuración del token. El identificador del token es el número al final de la
/settings/tokens/IDdirección URL. Como alternativa, si el token se usó para una acción registrada en el registro de auditoría de empresa, un propietario de la empresa puede encontrar el identificador en el campo deltoken_idevento. El identificador solo está disponible en el registro de auditoría mientras se conserva un evento visible para la empresa autenticado con ese token. Comparta el identificador, no el valor del token. Para obtener más información, vea Administración de tokens de acceso personal y Búsqueda en el registro de auditoría de la empresa. - Para una clave SSH, encuentre la huella digital SHA-256 de la clave de autenticación verificada y propiedad del usuario. Para obtener más información, vea Revisar tus claves SSH.
Autorización de una credencial
Use la API REST para autorizar la credencial de las organizaciones seleccionadas. Por ejemplo:
curl --request POST \
--url "https://api.github.com/enterprises/ENTERPRISE/credential-authorizations" \
--header "Accept: application/vnd.github+json" \
--header "Authorization: Bearer INSTALLATION-ACCESS-TOKEN" \
--header "X-GitHub-Api-Version: 2026-03-10" \
--data '{
"credential_id": 12345678,
"credential_type": "classic_pat",
"organizations": ["ORGANIZATION-1", "ORGANIZATION-2"]
}'
Sustituya ENTERPRISE por el slug de la empresa, INSTALLATION-ACCESS-TOKEN por el token de acceso de la instalación y ORGANIZATION-1 y ORGANIZATION-2 por los slugs de la organización. Sustituya 12345678 por el identificador de personal access token (classic). Para autorizar una clave SSH en su lugar, sustituya 12345678 por la huella digital SHA-256 de la clave y classic_pat por ssh_key.
Para obtener más información, vea Puntos de conexión de API REST para autorizaciones de credenciales de empresa.
Deshabilitación de la autorización de credenciales mediante GitHub Apps
Deshabilitar la configuración impide que las aplicaciones creen nuevas autorizaciones de credenciales. Las autorizaciones existentes permanecen activas hasta que se revocan, se revoca o elimina la credencial, o el propietario de la credencial pierde la pertenencia a la organización.
Puede usar la misma API REST para revocar las autorizaciones que creó una aplicación a través de la delegación empresarial.