Czy istnieje sposób na połączenie praw dostępu do elementu Sitecore?
Na przykład mam stronę, którą chciałbym zablokować dla użytkowników, którzy są członkami dwóch różnych ról, a nie tylko jednego, a użytkownikowi, który ma tylko jedną z ról, odmawia się dostępu.
Wiem, że możesz odgrywać role w rolach, ale zastanawiasz się, czy był prostszy sposób, aby to osiągnąć?
Używam Sitecore 7.2.
Odpowiedzi:
1 dla odpowiedzi № 1Jeśli próbujesz to sprawdzić w kodzie, możesz to łatwo zrobić za pomocą
var user = AuthenticationManager.GetActiveUser();
return user.IsInRole("Role1") && user.IsInRole("Role2") ? "Granted":"Denied";
Ale jeśli próbujesz to osiągnąć w SitecoreZabezpieczenie elementu, a następnie przypisane zostanie ORA z 2 ról. Przykład: jeśli zezwolę na dostęp do elementu w Role1, ale odmówię w Role2, odmowa dostępu dla użytkownika z rolami 1 i 2.
1 dla odpowiedzi nr 2
Jednym ze sposobów, w jaki można to osiągnąć poprzez Security Editor
wykorzystuje Sitecore Roles in Roles
funkcjonalność.
Zasadniczo będziesz chciał utworzyć nową rolę w Role Manager
która będzie zawierała dwie role: Role A i Rola B. Wybierz swoją nową rolę w Role Manager
i kliknij Member Of
przycisk. W modalu kliknij Dodaj i wybierz dwie role, które ta Nowa Rola musi zawierać.
w Security Editor
wybierz nową rolę i przypisz uprawnienia do odczytu, zapisu, tworzenia itp. do wymaganych Items
.
Teraz, gdy użytkownicy uzyskują do nich dostęp Items
muszą mieć rolę A i rolę B przed danym dostępem - nie będą potrzebować nowej roli przypisanej do ich konta.
Jeśli masz dużo ról do zarządzania i kombinacji tych ról, ręczne tworzenie tych kombinacji będzie bardzo czasochłonne.
1 dla odpowiedzi nr 3
Najprostszym sposobem podejścia jest zdefiniowanie anowa rola z odpowiednimi prawami dostępu i przypisać do niej odpowiednich użytkowników, ręcznie lub za pomocą skryptu. Dzięki temu Twoje prawa dostępu są przejrzyste. Możesz opisać sposób rozwiązania problemu, ale może się zdarzyć, że stworzysz koszmar dla administratora, gdzie prawie niemożliwe jest sprawdzenie, które role i użytkownicy mają dostęp do jakich elementów. Np. Czego możesz się spodziewać w przeglądarce dostępu, gdy patrząc na jedną z ról lub na użytkownika z jedną lub obiema rolami? Istnieje duża różnica między programistycznym przypisaniem praw dostępu a ich oceną.