Skip to main content

Solución de problemas de administración de acceso e identidad para la empresa

Revisa los problemas y soluciones comunes de la administración de acceso e identidad para su empresa.

Visualización de información de identidad externa de un usuario

Si un usuario no puede autenticarse correctamente con SAML, puede ser útil ver información sobre la identidad de inicio de sesión único vinculada a la cuenta del usuario en GitHub. Para más información, consulta Visualizar y administrar el acceso de SAML de un usuario a tu empresa.

Conflictos de nombre de usuario

Si tu empresa usa Enterprise Managed Users, GitHub normaliza el valor del atributo SCIM userName que envía un proveedor de identidades (IdP) en una llamada API de SCIM para crear el nombre de usuario de cada persona en GitHub. Si varias cuentas se normalizan en el mismo nombre de usuario de GitHub, se produce un conflicto de nombre de usuario y solo se crea la primera cuenta de usuario. Para más información, consulta Consideraciones sobre el nombre de usuario para la autenticación externa.

Errores al cambiar las configuraciones de autenticación

Si tienes problemas al cambiar entre distintas configuraciones de autenticación, como cambiar la configuración de SSO de SAML de una organización a una cuenta empresarial o migrar de SAML a OIDC para Enterprise Managed Users, asegúrate de seguir nuestros procedimientos recomendados para el cambio.

Acceso a la empresa cuando el inicio de sesión único no está disponible

Si un error de configuración de SAML o un problema con el proveedor de identidades (IdP) te impide usar el inicio de sesión único, puedes usar un código de recuperación para acceder a la empresa. Para más información, consulta Acceso a la cuenta de empresa si el proveedor de identidades no está disponible.

Errores de aprovisionamiento de SCIM

Para evitar superar el límite de frecuencia en GitHub, no asignes más de 1000 usuarios por hora a la integración de SCIM en tu IdP. Si usas grupos para asignar usuarios a la aplicación IdP, no agregues más de 1000 usuarios por hora a cada grupo. Si superas estos umbrales, los intentos de aprovisionar usuarios pueden producir un error de "límite de velocidad". Puedes revisar los registros de IdP para confirmar si se ha producido un error en las operaciones de envío de cambios o de aprovisionamiento de SCIM que se han intentado realizar debido a un error de límite de frecuencia. La respuesta a un intento de aprovisionamiento con errores dependerá del IdP.

Microsoft Entra ID (anteriormente conocido como Azure AD) reintentará los intentos de aprovisionamiento de SCIM automáticamente durante el siguiente ciclo de sincronización de Entra ID. El intervalo de aprovisionamiento de SCIM predeterminado para Entra ID es de 40 minutos. Para más información sobre este comportamiento de reintento, consulta la documentación de Microsoft o bien contacta con el Soporte técnico de Microsoft si necesitas más ayuda.

Okta realizará los reintentos de aprovisionamiento de SCIM que han generado errores con la intervención manual del administrador de Okta. Para obtener más información sobre cómo un administrador de Okta puede reintentar una tarea con errores para una aplicación específica, consulta la documentación de Okta o bien contacta con el soporte técnico de Okta.

En una empresa con usuarios administrados donde SCIM funciona correctamente por lo general, a veces se produce un error en los intentos de aprovisionamiento de SCIM de usuario individuales. Los usuarios no podrán iniciar sesión hasta que su cuenta se aprovisione en GitHub. Estos errores de aprovisionamiento de usuarios de SCIM individuales producen un código de estado HTTP 400 y suelen deberse a problemas con la normalización del nombre de usuario o los conflictos de nombre de usuario, en los que otro usuario con el mismo nombre de usuario normalizado ya existe en la empresa. Consulta Consideraciones sobre el nombre de usuario para la autenticación externa.

Errores de autenticación de SAML

Si los usuarios experimentan errores al intentar autenticarse con SAML, consulta Autenticación SAML.

Errores de identidad de SAML en conflicto

Cuando los usuarios intentan autenticarse con el proveedor de identidades (IdP) de SAML para acceder a una organización o empresa de GitHub por primera vez, pueden encontrar el siguiente mensaje de error.

La cuenta de usuario de GitHub [nombre de usuario de GitHub] está actualmente vinculada. Pero intentas autenticarte con tu proveedor de identidades mediante la identidad de SAML de [cuenta de usuario de IdP], que ya está vinculada a otra cuenta de usuario de GitHub en la [organización o empresa]. Ponte en contacto con uno de los propietarios de la [organización o empresa] de GitHub para obtener ayuda.

Si el IdP es Entra ID, el mensaje de error incluirá el valor User Object ID de la identidad vinculada en Entra ID, a la que GitHub hace referencia como External ID.

Este mensaje de error se produce porque una identidad externa solo se puede vincular a una sola cuenta de usuario de GitHub dentro de una organización o empresa.

Identificación del usuario con una identidad en conflicto

Cuando los usuarios te comunican este error, puedes ejecutar los pasos siguientes para identificar las cuentas en conflicto.

  1. Usa GraphQL API de GitHub para determinar qué usuario está vinculado a la identidad externa en conflicto.
    • Si SAML está configurado en el nivel de organización de GitHub: un propietario de la organización debe consultar las identidades externas existentes en el nivel de organización y filtrarlas por el valor NameID de SAML de la cuenta de IdP con la que el usuario se autentica cuando se produce este error. Consulta el ejemplo org-saml-identities-filtered-by-nameid-username.graphql en el repositorio platform-samples.
    • Si SAML está configurado en el nivel de empresa de GitHub: un propietario de la empresa debe consultar las identidades externas existentes en el nivel de empresa y filtrarlas por el valor NameID de SAML de la cuenta de IdP con la que el usuario se autentica cuando se produce este error. Consulta el ejemplo enterprise-saml-identities-filtered-by-nameid.graphql en el repositorio platform-samples.
  2. Si has identificado un usuario de GitHub asociado a la identidad externa en conflicto, para confirmar si sigue activo en la empresa y en cualquier organización de esta, un propietario de la empresa puede seguir los pasos descritos en Visualizar a las personas en tu empresa.

Resolución del conflicto

Cuando hayas seguido los pasos para identificar cuentas en conflicto, hay varias opciones de resolución en función de los resultados. Si tienes problemas al intentar seguir estos pasos o tienes preguntas, puedes abrir una incidencia de soporte técnico de GitHub mediante Portal de soporte de GitHub.

El usuario de GitHub en conflicto ya no necesita acceso

Si hay una cuenta de usuario de GitHub asociada a la identidad externa en conflicto que ya no necesita acceso a la organización o empresa de GitHub, quítala como miembro. Si el usuario se quita correctamente, también se debe quitar su identidad de SAML vinculada y la identidad de SCIM vinculada si existe en el nivel de organización.

  • Si usas el aprovisionamiento de SCIM para administrar la pertenencia a la organización, debes desaprovisionar al usuario del IdP desde SCIM, en lugar de seguir los pasos de GitHub. De lo contrario, la identidad de SAML y SCIM vinculada del usuario permanecerá en la organización, lo que puede seguir causando el error.
  • Si no usas el aprovisionamiento de SCIM para administrar la pertenencia a la organización, consulta Eliminar a un miembro de tu organización o Eliminar a un miembro de tu empresa. Asegúrate de quitar también el acceso del usuario de la aplicación de GitHub para la organización o empresa en el IdP.

Para confirmar que una identidad de SAML o SCIM se ha quitado correctamente de una organización de GitHub para un usuario, consulta Solución de problemas de administración de acceso e identidad para la organización.

El usuario de GitHub en conflicto todavía necesita acceso

Si hay una cuenta de usuario de GitHub asociada a la identidad externa en conflicto y este usuario todavía necesita acceso a la organización o empresa, tendrás que cambiar la identidad vinculada de la cuenta de usuario, o bien hacer que el usuario que recibe el error se autentique con otra identidad de IdP.

  • Si usas el aprovisionamiento de SCIM para administrar la pertenencia a una organización y tienes que cambiar la identidad externa vinculada a la cuenta de GitHub del miembro, desaprovisiona al usuario del IdP (por ejemplo, cancela la asignación del usuario y vuelve a asignarlo a la aplicación).
    • Cuando se desaprovisiona el usuario de IdP, su cuenta de GitHub y la identidad de SAML/SCIM vinculada se quitarán de la organización de GitHub.
    • Cuando el usuario IdP se vuelve a aprovisionar en la organización de GitHub, se creará una invitación de organización pendiente y una identidad de SCIM sin vincular. Esto permitirá al usuario iniciar sesión con esta cuenta de usuario de GitHub, autenticarse mediante SAML y vincular la nueva identidad de IdP a su cuenta. Estos pasos ayudarán a garantizar que la nueva identidad de SAML y SCIM estén vinculadas correctamente a la cuenta de usuario de GitHub de la organización.
  • Si no usas el aprovisionamiento de SCIM para administrar la pertenencia a la organización o si SAML está configurado en el nivel de la empresa, puedes revocar la identidad externa vinculada para el usuario mediante los pasos descritos en uno de los artículos siguientes:

No se ha encontrado ningún usuario de GitHub en conflicto

Si no hay ninguna cuenta de usuario de GitHub asociada a la identidad externa en conflicto, puedes revocar la identidad externa.

  • Si usas el aprovisionamiento de SCIM para administrar la pertenencia a la organización, quita la identidad obsoleta y desvinculada del IdP (por ejemplo, desasigna al usuario de la aplicación de IdP).
  • Si no usas el aprovisionamiento de SCIM para administrar la pertenencia a la organización, para revocar la identidad externa vinculada, ve a una de las siguientes direcciones URL para revocar la identidad externa. Reemplaza USERNAME por el nombre del usuario de GitHub que no puede iniciar sesión y ORGANIZATION o ENTERPRISE por el valor adecuado.
    • https://github.com/orgs/ORGANIZATION/people/USERNAME/sso
    • https://github.com/enterprises/ENTERPRISE/people/USERNAME/sso

Información adicional