KB: «Aplicar a las subcarpetas» no propaga los permisos de carpeta
Detalles de la solución
Los permisos de la carpeta principal no se propagan por la jerarquía
Al gestionar los permisos de las carpetas desde el panel Explorer en Altium Designer, los usuarios pueden intentar propagar los permisos de una carpeta principal habilitando Apply to Children. Sin embargo, es posible que los permisos configurados en la carpeta principal no se apliquen a las subcarpetas y a los elementos gestionados de la forma esperada. Esto ocurre porque la opción Apply to Children de Altium Designer está obsoleta y no realiza la propagación de permisos necesaria.
Además, después de usar Enforce inheritance for all child items en la interfaz web de Altium 365, es posible que las subcarpetas sigan mostrando usuarios, grupos o permisos que no están configurados directamente en la carpeta principal. Esto es normal, ya que los permisos heredados se añaden a los permisos existentes de las subcarpetas en lugar de sustituirlos.
La herencia aditiva no sincroniza los permisos
La herencia de permisos de Altium 365 no sustituye el conjunto completo de permisos de una subcarpeta o un elemento por el conjunto de permisos de su carpeta principal.
En su lugar, la herencia de permisos es aditiva:
Effective Child Permissions = Inherited Parent Permissions + Existing Additional Child Permissions
Por ejemplo:
Parent Folder
- Ingenieros mecánicos – Pueden editar
- Revisores – Pueden editar
Child Folder Before Inheritance
- Ingenieros – Pueden ver
Una vez habilitada la herencia, los permisos efectivos de la subcarpeta pueden incluir:
- Ingenieros mecánicos – heredados de la carpeta principal
- Revisores – heredados de la carpeta principal
- Ingenieros – permiso adicional existente que se conserva en la subcarpeta
El permiso Engineers existente se conserva en lugar de eliminarse.
El conjunto de permisos de la carpeta principal se transmite a sus descendientes en lugar de sustituir sus conjuntos de permisos existentes. Los permisos ampliados existentes en una subcarpeta o un elemento gestionado se mantienen.
Por lo tanto: Permission inheritance should not be interpreted as permission synchronization.
Una subcarpeta o un elemento pueden tener más permisos que su carpeta principal.
La documentación oficial de Altium también indica que los permisos adicionales introducidos en un nivel inferior de la jerarquía siguen heredándose en los niveles posteriores sin afectar a los permisos existentes.
Restricciones de uso compartido controladas por la herencia
Utilice las funciones admitidas para aplicar la herencia
- No utilice Apply to Children en el panel Explorer de Altium Designer como método principal para propagar permisos.
- Utilice Enforce inheritance for all child items desde la interfaz web de Altium 365.
- Tenga en cuenta que la herencia de permisos es aditiva y no da lugar necesariamente a conjuntos de permisos idénticos en la carpeta principal y las subcarpetas.
- Si necesita que las configuraciones de permisos de la carpeta principal y las subcarpetas sean idénticas, utilice el procedimiento alternativo que se describe más adelante en este artículo.
Se puede acceder a la función admitida desde:
- Folder » Share Folder » Advanced Settings
- Admin » Explorer » Folder Sharing » Advanced Settings
El comando está disponible para Workspace Administrators y actúa sobre las carpetas.
Habilita Inherit parent folder permissions para todos los descendientes de la carpeta seleccionada, incluidas las subcarpetas de primer, segundo y tercer nivel, así como los niveles posteriores de la jerarquía.
How “Enforce Inheritance for All Child Items” Works
El comando Enforce inheritance for all child items no copia la lista de permisos de una carpeta principal ni sobrescribe las listas de permisos de todos sus descendientes.
En su lugar, el comando habilita:
Inherit parent folder permissions
para las carpetas y los elementos de toda la jerarquía de descendientes.
A continuación, el mecanismo normal de herencia de permisos hace que cada objeto secundario herede los permisos de su carpeta principal. La función no inicia ningún proceso de sustitución de permisos.
Por ejemplo:
Parent Folder
- Ingenieros mecánicos
- Revisores
Child Folder Before Inheritance
- Ingenieros
Después de ejecutar Enforce inheritance for all child items:
Child Folder
- Ingenieros mecánicos – heredados
- Revisores – heredados
- Ingenieros – permiso existente conservado
Por lo tanto:
Parent:
Ingenieros mecánicos + Revisores
Child Before Inheritance:
Ingenieros
Child After Inheritance:
Ingenieros mecánicos + Revisores + Ingenieros
Este es el resultado esperado.
La presencia de Engineers en la subcarpeta no significa que la herencia de permisos haya fallado.
Pasos para restablecer y gestionar la herencia de permisos
Method 1 – From Projects
- Inicie sesión en Altium 365 Workspace Web Interface.
- Abra Projects.
- Seleccione la carpeta principal que necesite.
- Haga clic en Share.
- Abra Advanced Settings.
- Seleccione Enforce inheritance for all child items.
- Confirme la operación.
El comando habilita la herencia de permisos para todos los descendientes de la carpeta seleccionada.
Method 2 – From Admin » Explorer
- Inicie sesión en Altium 365 Workspace Web Interface.
- Vaya a Admin » Explorer.
- Seleccione la carpeta principal que necesite.
- Abra la configuración de uso compartido de la carpeta.
- Seleccione Advanced Settings.
- Haga clic en Enforce inheritance for all child items.
- Confirme la operación.
Expected Results
- Inherit parent folder permissions se habilita en toda la jerarquía de descendientes afectada.
- Las carpetas descendientes y los elementos gestionados heredan los permisos de la carpeta principal.
- La herencia de permisos funciona de forma recursiva a través de las subcarpetas de primer, segundo y tercer nivel, así como de los niveles posteriores de la jerarquía.
- Los permisos adicionales existentes asignados a las subcarpetas o a los elementos se conservan.
- Los conjuntos de permisos de las subcarpetas no son necesariamente idénticos al conjunto de permisos de la carpeta principal.
- Las carpetas descendientes heredan, como mínimo, los permisos de su carpeta principal y conservan los permisos adicionales que ya tengan asignados.
- Los usuarios que tienen acceso a través de la estructura de permisos de la carpeta principal reciben el acceso heredado correspondiente al contenido descendiente.
La función está destinada a restablecer o aplicar la herencia, no a sincronizar ni sustituir la configuración completa de permisos de cada objeto descendiente.
Alternative Method to Apply the Exact Parent Folder Permissions to Child Folders
Si necesita que las subcarpetas tengan exactamente los mismos permisos que la carpeta principal, en lugar de conservar los permisos asignados previamente de forma directa a las subcarpetas, el mecanismo estándar de herencia de permisos no proporciona este comportamiento por sí solo.
El comando Enforce inheritance for all child items habilita la herencia de permisos en toda la jerarquía, pero la herencia es aditiva.
Por lo tanto, los permisos ya asignados a una subcarpeta que no estén presentes en la carpeta principal se conservan.
Por ejemplo:
Parent Folder Permissions
- Ingenieros mecánicos
- Revisores
Child Folder Existing Permissions
- Ingenieros
Después de usar Enforce inheritance for all child items, la subcarpeta puede contener:
- Ingenieros mecánicos
- Revisores
- Ingenieros
Si el resultado requerido es:
Parent Folder
- Ingenieros mecánicos
- Revisores
Child Folder
- Ingenieros mecánicos
- Revisores
sin que aparezca el permiso Engineers asignado previamente, puede utilizar el siguiente método alternativo.
- Asegúrese de que la opción avanzada Inherit permissions from parent folder esté habilitada en cada subcarpeta afectada.
- Cree una Alternate Parent Folder con los mismos permisos que tienen asignados actualmente las subcarpetas afectadas.
- Mueva las subcarpetas afectadas a la Alternate Parent Folder recién creada.
- Compruebe que las subcarpetas hereden correctamente los permisos de la carpeta principal alternativa.
- Modifique los permisos de la Alternate Parent Folder para que coincidan exactamente con los permisos deseados de la carpeta principal original.
- Compruebe que las subcarpetas afectadas tengan ahora la configuración de permisos requerida y que los permisos previstos se propaguen por toda la jerarquía afectada.
- Vuelva a mover las subcarpetas afectadas a la carpeta principal original, asegurándose de que Inherit permissions from parent folder siga habilitado.
Notas adicionales
- Apply to Children en Altium Designer sigue estando obsoleto y actualmente no realiza la propagación de permisos prevista.
- El procedimiento alternativo no repara ni restablece la funcionalidad de Apply to Children.
- El procedimiento alternativo proporciona un método para obtener la configuración de permisos que los usuarios podrían haber esperado de Apply to Children cuando se requiere una coincidencia exacta entre los permisos de la carpeta principal y los de las subcarpetas.
- Método actual recomendado: interfaz web de Altium 365 → Enforce inheritance for all child items.