Si usas Enterprise Managed Users, usarás SCIM para:
- Desaprovisionar usuarios y grupos para quitar su acceso.
- Vuelve a aprovisionar los usuarios que se desaprovisionaron anteriormente.
Antes de desaprovisionar un usuario, es importante comprender los efectos del desaprovisionamiento, que dependen del tipo de llamada API de desaprovisionamiento que GitHub recibe del proveedor de identidades.
Importante
Antes de leer más, asegúrate de comprender cómo la empresa ha implementado SCIM. GitHub proporciona una aplicación de "preparada" si usas un proveedor de identidades (IdP) compatible para la autenticación y el aprovisionamiento. Si no usas una aplicación preparada, usarás la API de REST para realizar solicitudes SCIM. Consulta Acerca de Enterprise Managed Users.
Tipos de desaprovisionamiento de usuarios
Cuando se desaprovisiona un usuario, se suspende la cuenta de GitHub, lo que significa que el usuario no puede acceder a tu empresa. Independientemente del tipo de desaprovisionamiento, una cuenta desaprovisionada nunca se elimina de una empresa.
El tipo de llamada de desaprovisionamiento que GitHub recibe del proveedor de identidades determina si es posible anular el aprovisionamiento (restablecer) un usuario desaprovisionado.
- Desaprovisionamiento temporal: en determinados escenarios, el usuario puede dejar de estar suspendido a través de la integración de SCIM.
- Desaprovisionamiento permanente: no es posible dejar de suspender al usuario. Se debe aprovisionar una nueva cuenta si la persona necesita recuperar el acceso.
Efectos del desaprovisionamiento de un usuario
Al desaprovisionar una cuenta de usuario, ya sea a través del IdP o la API de REST, GitHub realizará cambios en la cuenta de usuario.
Efectos del desaprovisionamiento temporal
- El usuario se suspende y pierde el acceso a tu empresa y a cualquier recurso privado.
- Una vez suspendida la cuenta de usuario, se mostrará en la página "Miembros suspendidos" en lugar de la página "Miembros" de la sección "Personas" de la configuración empresarial.
- El nombre de usuario del usuario se ofusca en un hash del nombre de usuario original, seguido de
_SHORTCODE
para las empresas en GitHub.com. - Con Entra ID, la dirección de correo electrónico del usuario sigue siendo la misma. En todos los demás casos, el correo electrónico del usuario está ofuscado.
- La identidad SCIM del usuario permanece vinculada a su cuenta de usuario en GitHub. Con Entra ID, el valor del valor del atributo
active
en su identidad SCIM vinculada almacenada se actualiza deTrue
aFalse
. - Si el usuario tiene bifurcaciones de repositorios privados o internos, las bifurcaciones se eliminan en un plazo de 24 horas. Las bifurcaciones se restaurarán si el usuario deja de estar suspendido en un plazo de 90 días.
- Si el usuario es miembro de cualquier grupo de IdP aprovisionado por SCIM, se ocultan de estos grupos y se quitan de los equipos asignados a estos grupos. Ten en cuenta que esto sucede incluso si el usuario sigue siendo miembro del grupo en el lado de IdP.
- Si la pertenencia a la organización la administran los grupos de IdP, el usuario se quitará de las organizaciones cuando se quiten de esos grupos de IdP o se quiten de todos los equipos asignados a los grupos de IdP de la organización.
- Si la pertenencia a la organización se administra directamente, el usuario permanecerá como "miembro suspendido" de la organización, sin acceso, hasta que se quite manualmente.
Un propietario de la empresa puede obtener acceso temporal a los repositorios privados de un miembro suspendido (esto incluye repositorios de espacios de nombres de usuario y bifurcaciones que aún no se han eliminado). Consulta Acceso a repositorios propiedad del usuario en tu empresa.
Efectos del desaprovisionamiento permanente
- El usuario se suspende y pierde el acceso a tu empresa y a cualquier recurso privado.
- Una vez suspendida la cuenta de usuario, se mostrará en la página "Miembros suspendidos" en lugar de la página "Miembros" de la sección "Personas" de la configuración empresarial.
- El nombre de usuario del usuario se ofusca en un hash del nombre de usuario original, seguido de
_SHORTCODE
para las empresas en GitHub.com. - La dirección de correo electrónico del usuario está ofuscada.
- El nombre para mostrar del usuario se establece en una cadena vacía.
- La identidad de SCIM vinculada del usuario, incluidos todos los atributos SCIM del usuario, se elimina.
- Los personal access tokens, fine-grained personal access tokens, claves SSH, claves GPG y autorizaciones de aplicación del usuario se eliminan. La eliminación de claves puede afectar a la comprobación de confirmación. Consulta Acerca de la verificación de firma de confirmación.
- Los repositorios propiedad del usuario se eliminan.
- Los recursos creados por el usuario, como los comentarios, se conservan.
- Si el usuario es miembro de cualquier grupo de IdP aprovisionado por SCIM, se ocultan de estos grupos y se quitan de los equipos asignados a estos grupos. Ten en cuenta que esto sucede incluso si el usuario sigue siendo miembro del grupo en el lado de IdP.
- Si la pertenencia a la organización la administran los grupos de IdP, el usuario se quitará de las organizaciones cuando se quiten de esos grupos de IdP o se quiten de todos los equipos asignados a los grupos de IdP de la organización.
- Si la pertenencia a la organización se administra directamente, el usuario permanecerá como "miembro suspendido" de la organización, sin acceso, hasta que se quite manualmente.
Acciones que desencadenan el desaprovisionamiento
Las diferentes acciones desencadenan el desaprovisionamiento temporal y el desaprovisionamiento rígido, y los desencadenadores varían según la integración de SCIM. Por lo general, la mayoría de las acciones que se realizan en las aplicaciones IdP "preparadas" solo desencadenan el desaprovisionamiento temporal, con algunas excepciones.
Desencadenadores de desaprovisionamiento temporal
Integración de SCIM | Desencadenador de desaprovisionamiento temporal |
---|---|
REST API | Se envía una solicitud PUT o PATCH a /scim/v2/enterprises/{enterprise}/Users/{scim_user_id} , actualizando el campo active de un usuario a false . |
Entra ID | Un usuario está deshabilitado en Entra ID, sin asignar de la aplicación, quitado de todos los grupos asignados o eliminado temporalmente del inquilino por el administrador. Para obtener más información, consulta Eliminación temporal en la documentación de Microsoft. |
Okta | Un usuario no tiene la asignación de la aplicación, se quita de todos los grupos asignados o se desactiva con el botón "Desactivar". Ten en cuenta que el botón "Suspender" no envía una solicitud a GitHub. Okta solo envía llamadas de desaprovisionamiento temporal. |
PingFederate | El usuario se suspende, deshabilita o quita del almacén de usuarios de destino del aprovisionamiento. |
Desencadenadores de desaprovisionamiento permanente
Integración de SCIM | Desencadenador de desaprovisionamiento permanente |
---|---|
REST API | Se envía una solicitud DELETE a /scim/v2/enterprises/{enterprise}/Users/{scim_user_id} . |
Entra ID | La eliminación estricta de una cuenta de usuario de Entra ID, como se describe en Eliminaciones estrictas en la documentación de Microsoft. Los usuarios de Entra ID eliminados temporalmente (que se encuentran en la página "Usuarios > usuarios eliminados" del portal de administración de Entra ID) se eliminan automáticamente de forma permanente por Entra ID 30 días después de eliminarse temporalmente. |
Okta | N/D. Okta no envía llamadas de desaprovisionamiento permanente. |
PingFederate | Si la configuración "Quitar acción de usuario" está establecida en "Eliminar" en lugar de "Deshabilitar" como resultado de una configuración incorrecta, esta acción enviará una llamada de desaprovisionamiento de forma permanente. Consulta la documentación de PingIdentity. |
Restablecer una cuenta de usuario que se desaprovisionó temporalmente
Para restaurar el acceso del usuario y los detalles de la cuenta, puedes volver a aprovisionar la cuenta de un usuario que se desaprovisionó temporalmente, siempre y cuando la cuenta de usuario de IdP sea la misma. La cuenta de usuario de IdP debe ser la misma porque una cuenta de usuario desaprovisionada temporalmente sigue vinculada a esta identidad externa, en función de SCIM external ID
(id. de objeto de usuario de IdP) y SCIM User ID
. No se puede cambiar la identidad externa vinculada a una cuenta de usuario desaprovisionada individualmente.
Efectos del reaprovisionamiento
- El usuario no está suspendido y recupera el acceso a tu empresa.
- El nombre de usuario y la dirección de correo electrónico del usuario se restauran.
- Si el usuario es miembro de un grupo de IdP aprovisionado por SCIM asignado a un equipo de una organización, el usuario se agregará a la organización inmediatamente después de que se vuelva a aprovisionar su cuenta de usuario. Si anteriormente eran miembros de la organización, se restablecerá su pertenencia, siempre y cuando no haya transcurrido más de 90 días desde que se quitaron. Consulta Restablecer a un miembro anterior de su organización.
- Si el usuario no es miembro de un grupo de IdP aprovisionado por SCIM asignado a un equipo de una organización, un propietario de la organización GitHub deberá agregar manualmente su cuenta de usuario a la organización una vez que se vuelva a aprovisionar.
- Las bifurcaciones eliminadas se restauran si el usuario deja de estar suspendido hasta 90 días después de la suspensión.
- Los elementos asociados al usuario se restauran, entre los que se incluyen:
- GitHub Apps, OAuth apps y autorizaciones de aplicaciones
- Personal access tokens
- Claves SSH
- Autorizaciones de tokens y claves
- Repositorios propiedad del usuario
Acciones que desencadenan el reaprovisionamiento
La forma de volver a aprovisionar un usuario depende de la integración de SCIM y de la acción que lo desaprovisionó temporalmente.
Implementación de SCIM | Acción para volver a aprovisionar usuarios |
---|---|
Entra ID | Vuelve a habilitar una cuenta deshabilitada o vuelve a asignar un usuario a la aplicación, ya sea directamente o a través de un grupo asignado. Espera 40 minutos para que los cambios se procesen o acelera el proceso con el botón "Aprovisionar a petición". |
Okta | Reactivar la cuenta o reasignar el usuario a la aplicación, ya sea directamente o a través de un grupo. |
PingFederate | Dejar de suspender o volver a habilitar el usuario en el almacén de usuarios, o volver a agregar al usuario en el grupo de almacenes de datos o filtro dirigido por el aprovisionamiento. |
REST API | Envía una solicitud PUT o PATCH a /scim/v2/enterprises/{enterprise}/Users/{scim_user_id} , actualizando el campo active del usuario a true . |
Restablecer una cuenta de usuario que se desaprovisionó permanentemente
No se puede restaurar una cuenta de usuario de GitHub que se desaprovisionó permanentemente a través de SCIM. En su lugar, tendrás que aprovisionar una nueva cuenta de GitHub para el usuario.
Puedes reutilizar el nombre de usuario del usuario desaprovisionado de forma permanente al aprovisionar la nueva cuenta. Sin embargo, no es posible combinar la cuenta de usuario desaprovisionada de forma permanente con la nueva cuenta de usuario en GitHub.
- Si las direcciones de correo electrónico del usuario desaprovisionado permanentemente y el nuevo usuario coinciden, GitHub atribuirá las confirmaciones de Git existentes asociadas a la dirección de correo electrónico al nuevo usuario.
- Los recursos y comentarios existentes creados por el usuario original no se asociarán al nuevo usuario.
Eventos del registro de auditoría
El registro de auditoría de la empresa muestra detalles sobre tu actividad. Puede usar el registro de auditoría para admitir la configuración de SCIM. Para más información, consulta Acerca del registro de auditoría de la empresa.
Importante
Se recomienda encarecidamente que un propietario de la empresa habilite características del registro de auditoría, como el streaming de registros de auditoría, la divulgación de IP de origen y la opción de transmitir solicitudes de API. El streaming de estos eventos permite a los administradores establecer una directiva de retención de registros que se adapte a las necesidades de su negocio y usar sus herramientas preferidas para consultar estos registros.
Eventos para el desaprovisionamiento temporal
Cuando se desaprovisiona temporalmente un usuario, el evento external_identity.update
no aparece en el registro de auditoría. Los siguientes eventos aparecen en el registro de auditoría:
user.suspend
user.remove_email
user.rename
external_identity.deprovision
- Si la solicitud tiene éxito,
external_identity.scim_api_success
- Si la solicitud da error,
external_identity.scim_api_failure
- Si el usuario es miembro de cualquier grupo de IdP que se asigne a los equipos,
team.remove_member
- Si el IdP administra la pertenencia de un usuario a una organización y se quitan de todos los equipos asignados a grupos de IdP de la organización,
org.remove_member
Eventos para desaprovisionar de forma permanente
external_identity.deprovision
user.remove_email
- Si la solicitud tiene éxito,
external_identity.scim_api_success
- Si la solicitud da error,
external_identity.scim_api_failure
- Si el usuario es miembro de cualquier grupo de IdP que se asigne a los equipos,
team.remove_member
- Si el IdP administra la pertenencia de un usuario a una organización y se quitan de todos los equipos asignados a grupos de IdP de la organización,
org.remove_member
Eventos para el reaprovisionamiento
Cuando reactivas un usuario, el evento external_identity.update
no aparece en el registro de auditoría. Los siguientes eventos aparecen en el registro de auditoría:
user.unsuspend
user.remove_email
user.rename
external_identity.provision
- Si la solicitud tiene éxito,
external_identity.scim_api_success
- Si la solicitud da error,
external_identity.scim_api_failure
- Si el usuario es miembro de un grupo de IdP aprovisionado por SCIM y este grupo se asigna a un equipo de una organización,
org.add_member