База знаний: параметр «Применить к дочерним папкам» не распространяет права доступа на вложенные папки

A365 A365
Параметр Apply to Children на панели Explorer в Altium Designer устарел и не обеспечивает надежного распространения прав доступа по иерархии папок рабочего пространства Altium 365. Чтобы принудительно применить наследование прав доступа, используйте параметр Enforce inheritance for all child items в веб-интерфейсе Altium 365. Наследование прав доступа в Altium 365 работает по принципу добавления: права, унаследованные от родительской папки, добавляются к существующим правам доступа к дочерним папкам и управляемым элементам, а не заменяют их. Поэтому у дочерних объектов могут сохраняться дополнительные права доступа, отсутствующие у родительской папки. Это ожидаемое поведение, которое не указывает на сбой наследования прав доступа.

Подробности решения

Права доступа родительской папки не распространяются по иерархии

При управлении правами доступа к папкам на панели Explorer в Altium Designer пользователи могут попытаться распространить права доступа родительской папки, включив Apply to Children. Однако права доступа, настроенные для родительской папки, могут не применяться к дочерним папкам и управляемым элементам ожидаемым образом. Это происходит потому, что параметр Apply to Children в Altium Designer устарел и не выполняет необходимое распространение прав доступа.

Кроме того, после использования Enforce inheritance for all child items в веб-интерфейсе Altium 365 в дочерних папках могут по-прежнему отображаться пользователи, группы или права доступа, которые не настроены непосредственно для родительской папки. Это ожидаемое поведение, поскольку наследуемые права доступа добавляются к существующим правам дочерних объектов, а не заменяют их.

Аддитивное наследование не синхронизирует права доступа

При наследовании прав доступа в Altium 365 полный набор прав дочерней папки или элемента не заменяется набором прав родительской папки.

Вместо этого права доступа наследуются по принципу добавления:

Effective Child Permissions = Inherited Parent Permissions + Existing Additional Child Permissions

Например:

Parent Folder

  • Инженеры-механики — могут редактировать
  • Рецензенты — могут редактировать

Child Folder Before Inheritance

  • Инженеры — могут просматривать

После включения наследования итоговые права доступа дочерней папки могут включать:

  • Инженеры-механики — унаследованы от родительской папки
  • Рецензенты — унаследованы от родительской папки
  • Инженеры — существующее дополнительное право доступа сохранено для дочерней папки

Существующее право доступа Engineers сохраняется, а не удаляется.

Набор прав доступа родительской папки передается вложенным объектам, а не заменяет их существующие наборы прав. Все существующие дополнительные права доступа к вложенной папке или управляемому элементу сохраняются.

Таким образом: Permission inheritance should not be interpreted as permission synchronization.

У дочерней папки или элемента может быть больше прав доступа, чем у родительской папки.

В официальной документации Altium также указано, что дополнительные права доступа, заданные на более низком уровне иерархии, продолжают наследоваться на последующих уровнях, не затрагивая существующие права доступа.

Ограничения общего доступа, обусловленные наследованием

Используйте поддерживаемые функции принудительного включения наследования

  • Не используйте Apply to Children на панели Explorer в Altium Designer в качестве основного способа распространения прав доступа.
  • Используйте Enforce inheritance for all child items в веб-интерфейсе Altium 365.
  • Учитывайте, что права доступа наследуются по принципу добавления, поэтому наборы прав родительской и дочерней папок не обязательно будут одинаковыми.
  • Если требуются одинаковые настройки прав доступа для родительской и дочерних папок, используйте альтернативную процедуру, описанную далее в этой статье.

Поддерживаемая функция доступна в:

  • Folder » Share Folder » Advanced Settings
  • Admin » Explorer » Folder Sharing » Advanced Settings

Команда доступна для Workspace Administrators и применяется к папкам.

Она включает Inherit parent folder permissions для всех вложенных объектов выбранной папки, включая дочерние объекты первого, второго, третьего и последующих уровней иерархии.

How “Enforce Inheritance for All Child Items” Works

Команда Enforce inheritance for all child items не копирует список прав доступа родительской папки и не перезаписывает списки прав доступа всех вложенных объектов.

Вместо этого команда включает:

Inherit parent folder permissions

для папок и элементов на всех уровнях вложенной иерархии.

Затем стандартный механизм наследования прав доступа обеспечивает наследование каждым дочерним объектом прав его родительского объекта. Эта функция не запускает процесс замены прав доступа.

Например:

Parent Folder

  • Инженеры-механики
  • Рецензенты

Child Folder Before Inheritance

  • Инженеры

После выполнения Enforce inheritance for all child items:

Child Folder

  • Инженеры-механики — унаследованы
  • Рецензенты — унаследованы
  • Инженеры — существующее право доступа сохранено

Таким образом:

Parent:

Инженеры-механики + Рецензенты

Child Before Inheritance:

Инженеры

Child After Inheritance:

Инженеры-механики + Рецензенты + Инженеры

Это ожидаемый результат.

Наличие Engineers у дочерней папки не означает, что наследование прав доступа не сработало.

Действия по восстановлению и управлению наследованием прав доступа

Method 1 – From Projects

  1. Войдите в Altium 365 Workspace Web Interface.
  2. Откройте Projects.
  3. Выберите нужную родительскую папку.
  4. Нажмите Share.
  5. Откройте Advanced Settings.
  6. Выберите Enforce inheritance for all child items.
  7. Подтвердите операцию.

Команда включает наследование прав доступа для всех вложенных объектов выбранной папки.

Altium 365 Workspace Projects page with Share Item dialog open, showing folder “Projects”; “Inherit parent folder permissions” is disabled and “Enforce inheritance for all child items” is available under Permission Utilities.

Method 2 – From Admin » Explorer

  1. Войдите в Altium 365 Workspace Web Interface.
  2. Перейдите в Admin » Explorer.
  3. Выберите нужную родительскую папку.
  4. Откройте настройки общего доступа к папке.
  5. Выберите Advanced Settings.
  6. Нажмите Enforce inheritance for all child items.
  7. Подтвердите операцию.

Altium 365 Workspace Admin > Explorer view showing folder “Inheritance Test” share settings; Advanced Settings is open with “Inherit permissions from parent folder” unchecked and “Enforce inheritance for all child items” available.

Expected Results

  • Inherit parent folder permissions включается на всех затронутых уровнях вложенной иерархии.
  • Права доступа родительской папки наследуются вложенными папками и управляемыми элементами.
  • Наследование прав доступа выполняется рекурсивно для дочерних объектов первого, второго, третьего и последующих уровней иерархии.
  • Существующие дополнительные права доступа, назначенные дочерним папкам или элементам, сохраняются.
  • Наборы прав доступа дочерних объектов не обязательно становятся идентичными набору прав родительской папки.
  • Вложенные папки наследуют как минимум права доступа своих родительских папок, сохраняя при этом все дополнительные права, уже назначенные им.
  • Пользователи, имеющие доступ через структуру прав родительской папки, получают соответствующий унаследованный доступ к вложенному содержимому.

Эта функция предназначена для восстановления или принудительного включения наследования, а не для синхронизации или полной замены настроек прав доступа каждого вложенного объекта.

Alternative Method to Apply the Exact Parent Folder Permissions to Child Folders

Если требуется, чтобы дочерние папки имели точно такие же права доступа, как родительская папка, без сохранения прав, ранее назначенных непосредственно дочерним папкам, стандартный механизм наследования прав доступа сам по себе не обеспечивает такого поведения.

Команда Enforce inheritance for all child items включает наследование прав доступа по всей иерархии, однако наследование выполняется по принципу добавления.

Поэтому права доступа, уже назначенные дочерней папке и отсутствующие у родительской папки, сохраняются.

Например:

Parent Folder Permissions

  • Инженеры-механики
  • Рецензенты

Child Folder Existing Permissions

  • Инженеры

После использования Enforce inheritance for all child items дочерняя папка может содержать:

  • Инженеры-механики
  • Рецензенты
  • Инженеры

Если требуемый результат выглядит так:

Parent Folder

  • Инженеры-механики
  • Рецензенты

Child Folder

  • Инженеры-механики
  • Рецензенты

и ранее назначенное право доступа Engineers должно отсутствовать, можно использовать следующий альтернативный способ.

  1. Убедитесь, что для каждой затронутой дочерней папки в расширенных настройках включен параметр Inherit permissions from parent folder.
  2. Создайте Alternate Parent Folder с теми же правами доступа, которые сейчас назначены затронутым дочерним папкам.
  3. Переместите затронутые дочерние папки в только что созданную Alternate Parent Folder.
  4. Убедитесь, что дочерние папки корректно наследуют права доступа от альтернативной родительской папки.
  5. Измените права доступа Alternate Parent Folder так, чтобы они в точности соответствовали требуемым правам исходной родительской папки.
  6. Убедитесь, что затронутые дочерние папки теперь имеют требуемые настройки прав доступа и что нужные права распространяются по всей затронутой иерархии.
  7. Переместите затронутые дочерние папки обратно в исходную родительскую папку, убедившись, что Inherit permissions from parent folder остается включенным.

Дополнительные примечания

  • Apply to Children в Altium Designer по-прежнему является устаревшей функцией и в настоящее время не выполняет предусмотренное распространение прав доступа.
  • Альтернативная процедура не исправляет и не восстанавливает работу Apply to Children.
  • Альтернативная процедура позволяет получить настройки прав доступа, которых пользователи ранее могли ожидать от Apply to Children, когда требуется точное совпадение прав родительской и дочерних папок.
  • Рекомендуемый на данный момент способ: веб-интерфейс Altium 365 → Enforce inheritance for all child items.

Ссылки

AI-LocalizedЛокализовано с помощью ИИ
Если вы обнаружили проблему, выделите текст/изображение и нажмитеCtrl + Enter, чтобы отправить нам свой отзыв.