Cuando mueves archivos dentro de OneDrive for Business o entre OneDrive y SharePoint, la herencia de permisos puede romperse inesperadamente. Esto significa que los archivos que anteriormente heredaban permisos de una carpeta principal pueden tener permisos únicos, causando problemas de acceso para los usuarios que deberían tener acceso. La causa raíz es que OneDrive y SharePoint tratan los archivos movidos como elementos nuevos, cortando el vínculo de herencia con la carpeta de origen. Este artículo explica por qué ocurre esto y proporciona los pasos exactos para restaurar la herencia de permisos después de mover archivos.
Conclusiones clave: Restaurar la herencia de permisos después de mover archivos
- Permisos del sitio de SharePoint > Configuración de permisos avanzados > Administrar permisos: Use el botón Heredar permisos para volver a vincular un archivo con el conjunto de permisos de su carpeta principal.
- Cliente de sincronización de OneDrive > Configuración > Cuenta > Desvincular este equipo: Desvincula y vuelve a vincular OneDrive para forzar una actualización de permisos en los archivos movidos.
- SharePoint Online Management Shell > Set-PnPFileInheritance: Cmdlet de PowerShell para romper o restaurar la herencia de permisos en múltiples archivos a escala.
Por qué mover archivos rompe la herencia de permisos
SharePoint y OneDrive for Business utilizan un modelo de herencia de permisos. De forma predeterminada, los archivos y subcarpetas heredan permisos de su carpeta principal. Cuando mueves un archivo usando el comando Mover a o Copiar a, SharePoint trata el archivo movido como un elemento nuevo en la ubicación de destino. Esta acción rompe automáticamente la herencia, dando al archivo permisos únicos que pueden no coincidir con los permisos de la carpeta de destino.
El mismo comportamiento ocurre cuando arrastras y sueltas archivos en OneDrive o SharePoint. El conjunto de permisos del archivo no se conserva; en su lugar, se restablece para heredar de la nueva carpeta principal. Sin embargo, si el archivo tenía permisos únicos antes del movimiento, esos permisos únicos se pierden y se reemplazan con la herencia de la carpeta de destino. Esta inconsistencia conduce a errores de acceso denegado para los usuarios que anteriormente tenían acceso.
Este comportamiento es por diseño. Microsoft prioriza la seguridad: mover un archivo a una nueva ubicación no debería arrastrar permisos antiguos que podrían otorgar acceso no deseado. Pero para los administradores que gestionan bibliotecas de documentos con estructuras de permisos complejas, esto crea trabajo adicional para volver a aplicar permisos después de cada movimiento de archivo.
Pasos para restaurar la herencia de permisos después de mover archivos
Sigue estos pasos para restaurar la herencia en archivos que tienen la herencia de permisos rota después de ser movidos. Estas instrucciones se aplican a SharePoint Online y OneDrive for Business accedidos a través de un navegador.
- Abre el archivo o carpeta en un navegador
Navega al sitio de SharePoint o carpeta de OneDrive donde ahora reside el archivo movido. Selecciona el archivo o carpeta que tiene la herencia rota. - Accede al panel Administrar acceso
Haz clic en los tres puntos (puntos suspensivos) junto al nombre del archivo y luego selecciona Administrar acceso. Alternativamente, selecciona el archivo y haz clic en el icono Administrar acceso en la barra de herramientas. - Revisa los permisos actuales
En el panel Administrar acceso, busca el mensaje “Este elemento tiene permisos únicos”. Esto confirma que la herencia está rota. - Abre la configuración de permisos avanzados
Haz clic en los tres puntos en el panel Administrar acceso y luego selecciona Configuración avanzada. Esto abre la página Permisos para el elemento. - Restaura la herencia
En la pestaña Permisos, haz clic en el botón de la cinta etiquetado Heredar permisos. Aparece un cuadro de diálogo de confirmación. Haz clic en Aceptar para restaurar la herencia. El elemento ahora heredará permisos de su carpeta principal. - Verifica que la herencia se haya restaurado
Vuelve al panel Administrar acceso. El mensaje ahora debería decir “Este elemento hereda permisos de su carpeta principal”.
Si necesitas restaurar la herencia en múltiples archivos a la vez, usa SharePoint Online Management Shell con el cmdlet Set-PnPFileInheritance. Ejecuta PowerShell como administrador y conéctate a tu inquilino. Luego usa el comando Set-PnPFileInheritance -Identity "https://tenant.sharepoint.com/sites/site/library/folder/file.docx" -Inherit para restaurar la herencia en un archivo específico. Para operaciones masivas, itera sobre una lista CSV de URLs de archivos.
Si la herencia de permisos aún se rompe después de la solución principal
A veces el botón Heredar permisos está atenuado, o la herencia se rompe de nuevo después de un movimiento posterior. Aquí hay patrones de falla comunes y sus soluciones.
El botón Heredar permisos está atenuado
Esto ocurre cuando el elemento está desprotegido o tiene un estado de aprobación que bloquea los cambios de permisos. Si el archivo está desprotegido, regístralo. Si el archivo está en una biblioteca con aprobación de contenido, asegúrate de que el archivo esté en un estado aprobado. Es posible que debas aprobar el archivo como propietario del sitio antes de poder restaurar la herencia.
La herencia se rompe de nuevo después de otro movimiento
Cada operación de movimiento rompe la herencia en el elemento movido. La única forma de prevenir esto es copiar el archivo en lugar de moverlo, y luego eliminar el original. Una copia conserva la herencia de la carpeta de destino porque se crea como un elemento nuevo que hereda inmediatamente. Sin embargo, copiar no conserva metadatos ni historial de versiones. Planifica tu organización de archivos para minimizar los movimientos.
Los usuarios aún reciben acceso denegado después de restaurar la herencia
Restaurar la herencia da al archivo los mismos permisos que su carpeta principal. Si los usuarios aún no pueden acceder al archivo, verifica los permisos de la carpeta principal. La carpeta principal puede tener la herencia rota también. Navega a la carpeta principal y repite los pasos de restauración de herencia. También verifica que el usuario o grupo esté listado en los permisos de la carpeta principal.
Comportamiento de la herencia de permisos: Mover vs Copiar vs Cargar
| Acción | Estado de herencia después de la acción | ¿Permisos transferidos? |
|---|---|---|
| Mover dentro de la misma biblioteca | Rompe la herencia, hereda de la nueva carpeta principal | No |
| Mover a una biblioteca diferente | Rompe la herencia, hereda de la carpeta de destino | No |
| Copiar a la misma o diferente biblioteca | Hereda de la carpeta de destino inmediatamente | No |
| Cargar nuevo archivo | Hereda de la carpeta de carga inmediatamente | N/A |
| Arrastrar y soltar (navegador) | Igual que Mover | No |
La conclusión clave: Mover y arrastrar y soltar rompen la herencia. Copiar y cargar conservan la herencia de la ubicación de destino. Si necesitas mantener la herencia de permisos intacta, usa Copiar en lugar de Mover, y luego elimina manualmente el archivo de origen después de verificar que la copia funciona.
El cliente de sincronización de OneDrive for Business no proporciona una forma directa de restaurar la herencia. Debes usar la interfaz del navegador o PowerShell para gestionar la herencia de permisos. Desvincular y volver a vincular OneDrive puede forzar una actualización de permisos en los archivos sincronizados, pero no corrige la herencia rota. Usa primero los pasos del navegador anteriores.
Para automatización a nivel de inquilino, considera crear un flujo de SharePoint o Power Automate que se ejecute diariamente y restaure la herencia en todos los elementos de una biblioteca específica que tengan permisos únicos. Usa el endpoint de la API REST _api/web/lists/getbytitle('Documents')/items para consultar elementos y restablecer la herencia programáticamente.
Ahora puedes identificar cuándo la herencia de permisos se rompe después de mover archivos y restaurarla usando el botón Heredar permisos en SharePoint. Para correcciones masivas, usa el cmdlet Set-PnPFileInheritance de PowerShell. Para evitar este problema en el futuro, usa Copiar en lugar de Mover cuando quieras conservar la herencia, y planifica tu estructura de carpetas para minimizar los movimientos de archivos.