dla potwierdzenia koncepcji Chcę przechowywać prawa. Wiem, że istnieją różne sposoby kontroli dostępu (DAC, MAC, RBAC, ..). Mój pierwszy pomysł polegał na korzystaniu z bazy danych, ale szukam bardziej utartych standardów, takich jak XACML, ale niestety nie byłem w stanie znaleźć prawdziwych alternatyw. dzięki za wszelkie tipps!Jak przechowywać prawa? alternatywy dla XACML
Odpowiedz
Najpierw cofnij się i spójrz na porównywalne pozycje.
W kontroli dostępu masz różne modele, które pojawiły się z czasem. Historycznie najpierw miałeś DAC i MAC. Miałeś pojęcie list kontroli dostępu (znany również jako kontrola dostępu na podstawie tożsamości lub IBAC).
Potem nagle jedyna tożsamość użytkownika przestała wystarczać. Zaczęliśmy organizować użytkowników w role i grupy. Doprowadziło to do stworzenia RBAC lub opartej na rolach kontroli dostępu, którą NIST sformalizował w standardzie.
Szybkie przewijanie do przodu 10+ lat i role już nie wystarczą. ACL i RBAC są zbyt zorientowane na użytkownika. Nie uwzględniają kontekstu ani relacji. Nie są wystarczająco drobnoziarniste. Pojawia się nowy model o nazwie ABAC lub kontrola dostępu oparta na atrybutach. NIST jest również w trakcie standaryzacji ABAC. ABAC jest w stanie wdrożyć dowolny typ wymagań kontroli dostępu i może obsłużyć atrybuty użytkownika, zasobów, działania i kontekstu.
Możesz przeczytać więcej na temat ABAC here.
A co z XACML? XACML - eXtensible Access Control Markup Language - jest implementacją modelu ABAC. Jest to najbardziej rozpowszechniona implementacja ABAC. Pytasz, czy istnieją alternatywy. Niektóre z nich przychodzą na myśl:
- SecPal: to jest (było?) Inicjatywa badawcza Microsoft. Zgodnie z moją wiedzą, nie jest ona wykorzystywana poza badaniami.
- Permis to oparty na regułach model kontroli dostępu. Nie jest też szeroko rozpowszechniony.
- Firma Microsoft ma swój własny język dla systemu Windows Server o nazwie SDDL. Możesz przeczytać more on that from Microsoft.
W praktyce większość wdrożeń ABAC widziałem używać XACML lub mieszankę kodu domowego + RBAC. Nie trzeba dodawać, że ten ostatni nie jest tak naprawdę skalowalny i trudny do utrzymania.
Jeśli chcesz dowiedzieć się więcej, sprawdź następujące zasoby:
- my own personal blog
- mój osobisty SlideShare
pan obowiązek ujawnić swoją przynależność do produktów firmy podczas łączenia się spółek im. – meagar
Które zawsze robię. W tej odpowiedzi nie zawierałem linku do produktu mojej firmy. –