Baza wiedzy: opcja „Zastosuj do elementów podrzędnych” nie propaguje uprawnień folderu
Szczegóły rozwiązania
Uprawnienia folderu nadrzędnego nie są propagowane w hierarchii
Podczas zarządzania uprawnieniami folderów w panelu Explorer w Altium Designer użytkownicy mogą próbować propagować uprawnienia z folderu nadrzędnego, włączając Apply to Children. Jednak uprawnienia skonfigurowane dla folderu nadrzędnego mogą nie być stosowane do folderów podrzędnych i zarządzanych elementów zgodnie z oczekiwaniami. Dzieje się tak, ponieważ opcja Apply to Children w Altium Designer jest przestarzała i nie zapewnia wymaganej propagacji uprawnień.
Ponadto po użyciu Enforce inheritance for all child items w interfejsie internetowym Altium 365 foldery podrzędne mogą nadal wyświetlać użytkowników, grupy lub uprawnienia, które nie są skonfigurowane bezpośrednio w folderze nadrzędnym. Jest to oczekiwane zachowanie, ponieważ uprawnienia dziedziczone są dodawane do istniejących uprawnień folderów podrzędnych, zamiast je zastępować.
Dziedziczenie addytywne nie synchronizuje uprawnień
Dziedziczenie uprawnień w Altium 365 nie zastępuje całego zestawu uprawnień folderu podrzędnego lub elementu zestawem uprawnień jego folderu nadrzędnego.
Zamiast tego dziedziczenie uprawnień ma charakter addytywny:
Effective Child Permissions = Inherited Parent Permissions + Existing Additional Child Permissions
Na przykład:
Parent Folder
- Inżynierowie mechanicy – możliwość edycji
- Recenzenci – możliwość edycji
Child Folder Before Inheritance
- Inżynierowie – możliwość wyświetlania
Po włączeniu dziedziczenia efektywne uprawnienia folderu podrzędnego mogą obejmować:
- Inżynierowie mechanicy – odziedziczone z folderu nadrzędnego
- Recenzenci – odziedziczone z folderu nadrzędnego
- Inżynierowie – istniejące dodatkowe uprawnienie zachowane w folderze podrzędnym
Istniejące uprawnienie Engineers zostaje zachowane, a nie usunięte.
Zestaw uprawnień folderu nadrzędnego jest przekazywany do obiektów potomnych, zamiast zastępować ich istniejące zestawy uprawnień. Wszelkie istniejące dodatkowe uprawnienia do podfolderu lub zarządzanego elementu pozostają bez zmian.
W związku z tym: Permission inheritance should not be interpreted as permission synchronization.
Folder podrzędny lub element może mieć więcej uprawnień niż jego folder nadrzędny.
Oficjalna dokumentacja Altium również wskazuje, że dodatkowe uprawnienia wprowadzone na niższym poziomie hierarchii są dalej dziedziczone na kolejnych poziomach, bez wpływu na istniejące uprawnienia.
Ograniczenia udostępniania kontrolowane przez dziedziczenie
Korzystaj z obsługiwanych funkcji wymuszania dziedziczenia
- Nie używaj Apply to Children w panelu Explorer w Altium Designer jako podstawowej metody propagowania uprawnień.
- Użyj Enforce inheritance for all child items w interfejsie internetowym Altium 365.
- Pamiętaj, że dziedziczenie uprawnień ma charakter addytywny i nie musi prowadzić do uzyskania identycznych zestawów uprawnień w folderach nadrzędnym i podrzędnym.
- Jeśli wymagane są identyczne konfiguracje uprawnień folderów nadrzędnego i podrzędnego, skorzystaj z alternatywnej procedury opisanej w dalszej części tego artykułu.
Obsługiwana funkcja jest dostępna z poziomu:
- Folder » Share Folder » Advanced Settings
- Admin » Explorer » Folder Sharing » Advanced Settings
Polecenie jest dostępne dla Workspace Administrators i działa na folderach.
Włącza ono Inherit parent folder permissions dla wszystkich obiektów potomnych wybranego folderu, w tym obiektów podrzędnych na pierwszym, drugim, trzecim i kolejnych poziomach hierarchii.
How “Enforce Inheritance for All Child Items” Works
Polecenie Enforce inheritance for all child items nie kopiuje listy uprawnień folderu nadrzędnego ani nie nadpisuje list uprawnień wszystkich obiektów potomnych.
Zamiast tego polecenie włącza:
Inherit parent folder permissions
dla folderów i elementów w całej hierarchii obiektów potomnych.
Standardowy mechanizm dziedziczenia uprawnień powoduje następnie, że każdy obiekt podrzędny dziedziczy uprawnienia po swoim obiekcie nadrzędnym. Funkcja ta nie uruchamia procesu zastępowania uprawnień.
Na przykład:
Parent Folder
- Inżynierowie mechanicy
- Recenzenci
Child Folder Before Inheritance
- Inżynierowie
Po wykonaniu Enforce inheritance for all child items:
Child Folder
- Inżynierowie mechanicy – uprawnienie odziedziczone
- Recenzenci – uprawnienie odziedziczone
- Inżynierowie – istniejące uprawnienie zachowane
W związku z tym:
Parent:
Inżynierowie mechanicy + Recenzenci
Child Before Inheritance:
Inżynierowie
Child After Inheritance:
Inżynierowie mechanicy + Recenzenci + Inżynierowie
Jest to oczekiwany wynik.
Obecność Engineers w folderze podrzędnym nie oznacza, że dziedziczenie uprawnień nie zadziałało.
Kroki przywracania dziedziczenia uprawnień i zarządzania nim
Method 1 – From Projects
- Zaloguj się do Altium 365 Workspace Web Interface.
- Otwórz Projects.
- Wybierz odpowiedni folder nadrzędny.
- Kliknij Share.
- Otwórz Advanced Settings.
- Wybierz Enforce inheritance for all child items.
- Potwierdź operację.
Polecenie włącza dziedziczenie uprawnień dla wszystkich obiektów potomnych wybranego folderu.
Method 2 – From Admin » Explorer
- Zaloguj się do Altium 365 Workspace Web Interface.
- Przejdź do Admin » Explorer.
- Wybierz odpowiedni folder nadrzędny.
- Otwórz ustawienia udostępniania folderu.
- Wybierz Advanced Settings.
- Kliknij Enforce inheritance for all child items.
- Potwierdź operację.
Expected Results
- Inherit parent folder permissions jest włączone w całej objętej operacją hierarchii obiektów potomnych.
- Uprawnienia folderu nadrzędnego są dziedziczone przez foldery potomne i zarządzane elementy.
- Dziedziczenie uprawnień działa rekurencyjnie na pierwszym, drugim, trzecim i kolejnych poziomach hierarchii obiektów podrzędnych.
- Istniejące dodatkowe uprawnienia przypisane do folderów podrzędnych lub elementów zostają zachowane.
- Zestawy uprawnień obiektów podrzędnych nie muszą stać się identyczne z zestawem uprawnień folderu nadrzędnego.
- Foldery potomne dziedziczą co najmniej uprawnienia swojego folderu nadrzędnego, zachowując wszelkie dodatkowe uprawnienia, które zostały im już przypisane.
- Użytkownicy mający dostęp za pośrednictwem struktury uprawnień folderu nadrzędnego uzyskują odpowiedni dziedziczony dostęp do zawartości obiektów potomnych.
Funkcja służy do przywracania lub wymuszania dziedziczenia, a nie do synchronizowania lub zastępowania pełnej konfiguracji uprawnień każdego obiektu potomnego.
Alternative Method to Apply the Exact Parent Folder Permissions to Child Folders
Jeśli foldery podrzędne mają mieć dokładnie takie same uprawnienia jak folder nadrzędny, bez zachowywania uprawnień przypisanych wcześniej bezpośrednio do folderów podrzędnych, sam standardowy mechanizm dziedziczenia uprawnień nie zapewnia takiego działania.
Polecenie Enforce inheritance for all child items włącza dziedziczenie uprawnień w całej hierarchii, ale dziedziczenie ma charakter addytywny.
W związku z tym uprawnienia już przypisane do folderu podrzędnego, których nie ma w folderze nadrzędnym, zostają zachowane.
Na przykład:
Parent Folder Permissions
- Inżynierowie mechanicy
- Recenzenci
Child Folder Existing Permissions
- Inżynierowie
Po użyciu Enforce inheritance for all child items folder podrzędny może zawierać:
- Inżynierowie mechanicy
- Recenzenci
- Inżynierowie
Jeśli wymagany wynik to:
Parent Folder
- Inżynierowie mechanicy
- Recenzenci
Child Folder
- Inżynierowie mechanicy
- Recenzenci
bez wcześniej przypisanego uprawnienia Engineers, można zastosować następującą metodę alternatywną.
- Upewnij się, że dla każdego folderu podrzędnego objętego operacją włączone jest ustawienie zaawansowane Inherit permissions from parent folder.
- Utwórz Alternate Parent Folder z takimi samymi uprawnieniami, jakie są obecnie przypisane do folderów podrzędnych objętych operacją.
- Przenieś foldery podrzędne objęte operacją do nowo utworzonego Alternate Parent Folder.
- Sprawdź, czy foldery podrzędne poprawnie dziedziczą uprawnienia z alternatywnego folderu nadrzędnego.
- Zmodyfikuj uprawnienia Alternate Parent Folder, aby dokładnie odpowiadały docelowym uprawnieniom pierwotnego folderu nadrzędnego.
- Sprawdź, czy foldery podrzędne objęte operacją mają teraz wymaganą konfigurację uprawnień i czy zamierzone uprawnienia są propagowane w całej objętej operacją hierarchii.
- Przenieś foldery podrzędne objęte operacją z powrotem do pierwotnego folderu nadrzędnego, upewniając się, że Inherit permissions from parent folder pozostaje włączone.
Dodatkowe uwagi
- Apply to Children w Altium Designer pozostaje funkcją przestarzałą i obecnie nie zapewnia zamierzonej propagacji uprawnień.
- Procedura alternatywna nie naprawia ani nie przywraca działania funkcji Apply to Children.
- Procedura alternatywna umożliwia uzyskanie konfiguracji uprawnień, jakiej użytkownicy mogli wcześniej oczekiwać od Apply to Children, gdy wymagane jest dokładne dopasowanie uprawnień folderów nadrzędnego i podrzędnego.
- Obecnie zalecana metoda: interfejs internetowy Altium 365 → Enforce inheritance for all child items.