Los permisos únicos reaparecen después de restablecer una biblioteca: causa raíz y solución
🔍 WiseChecker

Los permisos únicos reaparecen después de restablecer una biblioteca: causa raíz y solución

Restablece una biblioteca de documentos de SharePoint para heredar los permisos de su sitio principal. Más tarde, revisa la biblioteca y descubre que los permisos únicos han reaparecido. Esto sucede porque SharePoint conserva instantáneas de permisos de los elementos dentro de la biblioteca que anteriormente se habían desasociado de la herencia. Este artículo explica por qué esas instantáneas hacen que reaparezcan los permisos únicos y le proporciona los pasos exactos para eliminarlos de forma permanente.

La causa raíz es que restablecer la herencia en una biblioteca no limpia automáticamente las instantáneas de permisos almacenadas en elementos o carpetas individuales dentro de esa biblioteca. Cuando SharePoint recalcula los permisos durante un trabajo de temporizador en segundo plano, vuelve a aplicar esas instantáneas almacenadas, haciendo que la biblioteca parezca tener permisos únicos de nuevo. Aprenderá a identificar las instantáneas ocultas, borrarlas y evitar que el problema vuelva a aparecer.

Esta solución se aplica a SharePoint Online (Microsoft 365) y SharePoint Server 2019 y versiones posteriores. Los pasos funcionan tanto para bibliotecas de documentos clásicas como modernas.

Puntos clave: Restablecer los permisos de una biblioteca de SharePoint sin instantáneas fantasma

  • Configuración del sitio > Permisos del sitio > Comprobar permisos: Utilice la herramienta Comprobar permisos para verificar que la biblioteca realmente hereda los permisos después del restablecimiento.
  • Configuración de la biblioteca > Permisos para esta biblioteca de documentos > Detener la herencia de permisos > Eliminar permisos únicos: El único método fiable para purgar las instantáneas de permisos almacenadas en los elementos de la biblioteca.
  • Comando de PowerShell Remove-SPOUser -Site: Elimina las entradas de permisos huérfanas que sobreviven a un restablecimiento estándar desde SharePoint Online.

ADVERTISEMENT

Por qué reaparecen los permisos únicos después de restablecer una biblioteca

SharePoint almacena la información de permisos en tres niveles: sitio, biblioteca y elemento. Cuando se rompe la herencia de permisos en una biblioteca, cada elemento y carpeta dentro de esa biblioteca almacena su propia instantánea de permisos. La operación de restablecimiento cambia la configuración de permisos a nivel de biblioteca de nuevo a Heredar permisos, pero no toca las instantáneas de los elementos individuales.

SharePoint ejecuta un trabajo de temporizador en segundo plano llamado Trabajo de temporizador de limpieza de permisos. Este trabajo comprueba cada elemento y carpeta de la biblioteca en busca de instantáneas de permisos. Si encuentra una instantánea que difiere del sitio principal, vuelve a escribir esa instantánea en la biblioteca. El resultado es que la biblioteca muestra permisos únicos de nuevo, aunque acabe de restablecerla.

El mismo problema ocurre cuando se utiliza el botón Restablecer para heredar permisos en la configuración de la biblioteca. Ese botón solo borra la marca a nivel de biblioteca. No elimina las instantáneas almacenadas en los subelementos. Las instantáneas permanecen en la base de datos de contenido de SharePoint y se vuelven a aplicar durante el siguiente ciclo de recálculo de permisos.

Cómo detectar instantáneas de permisos almacenadas

Abra la biblioteca en un navegador. Seleccione cualquier carpeta o archivo. Haga clic en los puntos suspensivos (tres puntos) y elija Administrar acceso. Si el panel muestra Permisos únicos para ese elemento, existe una instantánea. La biblioteca en sí puede mostrar Heredado en la parte superior, pero la instantánea a nivel de elemento hará que la biblioteca vuelva a permisos únicos después de que se ejecute el siguiente trabajo de temporizador.

Pasos para eliminar permanentemente los permisos únicos de una biblioteca

El método siguiente elimina todas las instantáneas de permisos almacenadas en los elementos de la biblioteca y evita que los permisos únicos reaparezcan. Realice estos pasos en el orden indicado.

  1. Rompa la herencia en la biblioteca de nuevo
    Vaya a la configuración de la biblioteca. Haga clic en Permisos para esta biblioteca de documentos. Haga clic en Detener la herencia de permisos. Confirme la acción. Esto hace que la biblioteca vuelva a ser un ámbito de permisos independiente y le permite ver todos los elementos con instantáneas almacenadas.
  2. Elimine todos los permisos únicos de la biblioteca
    Aún en la página de permisos de la biblioteca, haga clic en Eliminar permisos únicos. Este comando elimina todas las instantáneas de permisos almacenadas en los elementos y carpetas dentro de la biblioteca. No elimina los elementos en sí, solo sus datos de permisos almacenados.
  3. Restablezca la biblioteca para heredar permisos
    Haga clic en Heredar permisos. SharePoint ahora recalcula los permisos de la biblioteca. Como no quedan instantáneas en los elementos, la biblioteca permanece en modo heredado. Verifique actualizando la página y comprobando el estado de los permisos de la biblioteca.
  4. Utilice la herramienta Comprobar permisos para confirmar
    Vaya a Configuración del sitio > Permisos del sitio. Haga clic en Comprobar permisos. Introduzca un nombre de usuario o grupo. La herramienta muestra si el acceso se concede a través del sitio principal. Si todos los usuarios muestran Concedido a través de el sitio principal, la herencia está limpia.
  5. Ejecute el trabajo de temporizador de limpieza de permisos manualmente (solo SharePoint Server)
    Si utiliza SharePoint Server, abra Administración central. Vaya a Supervisión > Trabajos de temporizador > Revisar definiciones de trabajos. Busque Limpieza de permisos y haga clic en Ejecutar ahora. Esto fuerza el recálculo inmediatamente para que pueda verificar la solución.

Método de PowerShell para limpieza masiva (SharePoint Online)

Para bibliotecas con más de 5000 elementos, el método del navegador puede agotar el tiempo de espera. Utilice PowerShell para eliminar entradas de permisos huérfanas de forma masiva.

  1. Conéctese a SharePoint Online
    Abra SharePoint Online Management Shell. Ejecute Connect-SPOService -Url https://yourtenant-admin.sharepoint.com. Inicie sesión con una cuenta de administrador global o de administrador de SharePoint.
  2. Obtenga la colección de sitios y la biblioteca
    Ejecute $site = Get-SPOSite -Identity https://yourtenant.sharepoint.com/sites/yoursite. Luego $web = Get-SPWeb -Site $site. Reemplace las direcciones URL con las rutas reales de su sitio y biblioteca.
  3. Elimine las entradas de permisos únicos de los elementos
    Ejecute Get-SPOListItem -Web $web -List "YourLibraryName" | Where-Object {$_.HasUniqueRoleAssignments -eq $true} | ForEach-Object {$_.ResetRoleInheritance()}. Esto borra todas las instantáneas de permisos a nivel de elemento en la biblioteca.
  4. Restablezca la herencia de la biblioteca
    Ejecute $list = $web.Lists["YourLibraryName"]; $list.ResetRoleInheritance(). Esto restablece la biblioteca para heredar permisos del sitio.

ADVERTISEMENT

Si los permisos únicos siguen reapareciendo después de la solución

Incluso después de seguir los pasos anteriores, los permisos únicos pueden reaparecer en escenarios específicos. Las secciones siguientes cubren las causas más comunes y sus soluciones.

La biblioteca de SharePoint muestra permisos únicos después del restablecimiento pero ningún elemento tiene permisos únicos

Esto ocurre cuando hay un cambio de permisos pendiente en el registro de cambios de SharePoint. La biblioteca en sí no tiene instantáneas, pero una operación reciente creó una entrada de cambio de permisos que aún no se ha procesado. Espere 15 minutos a que se ejecute el trabajo de temporizador. Si el problema persiste, ejecute el trabajo de temporizador de limpieza de permisos manualmente como se describe en el paso 5 de la solución principal.

Los permisos únicos reaparecen después de mover archivos a la biblioteca

Cuando mueve archivos desde otra biblioteca o sitio, SharePoint transfiere las instantáneas de permisos desde la ubicación de origen. Los archivos movidos llegan con sus propios permisos únicos. Después del movimiento, seleccione todos los archivos movidos. Utilice el panel Administrar acceso y haga clic en Quitar permisos únicos para cada archivo seleccionado. Luego restablezca la herencia de la biblioteca de nuevo.

Los permisos únicos reaparecen después de una restauración de la colección de sitios

Si restaura una colección de sitios desde una copia de seguridad o la papelera de reciclaje, SharePoint restaura las instantáneas de permisos que existían en el momento de la copia de seguridad. Después de la restauración, rompa la herencia en la biblioteca, elimine los permisos únicos y restablezca la herencia de nuevo. Esto elimina las instantáneas restauradas.

Métodos de restablecimiento de bibliotecas: navegador vs PowerShell

Elemento Método del navegador Método de PowerShell
Ámbito Una sola biblioteca Varias bibliotecas o colecciones de sitios
Límite de elementos Funciona hasta 5000 elementos Funciona para cualquier número de elementos
Eliminación de instantáneas Eliminar permisos únicos manualmente Cmdlet ResetRoleInheritance()
Recálculo de permisos Automático al heredar permisos Manual mediante trabajo de temporizador o ResetRoleInheritance()
Interfaz de usuario requerida Sí No

Ahora puede eliminar permanentemente los permisos únicos de cualquier biblioteca de SharePoint y evitar que reaparezcan después de un restablecimiento. Comience comprobando si algún elemento aún conserva instantáneas de permisos. Si es así, utilice el método del navegador para bibliotecas pequeñas o PowerShell para bibliotecas grandes. Después de borrar las instantáneas, restablezca la herencia una última vez. Para el mantenimiento continuo, ejecute un script de PowerShell semanal que compruebe si hay bibliotecas con permisos únicos inesperados y los borre automáticamente.

ADVERTISEMENT