RBAC (Role-Based Access Control) to model kontroli dostępu, w którym uprawnienia nie są nadawane bezpośrednio użytkownikom, lecz przypisywane do ról, np. redaktor, administrator czy księgowy. Użytkownik otrzymuje uprawnienia przez przypisanie do jednej lub kilku ról.
Jak działa RBAC?
Administrator definiuje role i zestawy uprawnień, a następnie przypisuje je osobom. Zmiana zakresu pracy wymaga tylko zmiany roli, a nie edycji dziesiątek pojedynczych praw. Przykład znasz z WordPressa: administrator, redaktor, autor i współtwórca mają różne możliwości.
Zalety
Prostsze zarządzanie, mniejsze ryzyko pomyłek i łatwiejszy audyt, bo widać, kto ma jaką rolę. Model ułatwia stosowanie zasady najmniejszych uprawnień.
Ograniczenia
Przy dużej liczbie wyjątków liczba ról rośnie niekontrolowanie. Wtedy stosuje się modele bogatsze, takie jak ABAC, w którym decyzja zależy od atrybutów użytkownika, zasobu i kontekstu.
Dobre praktyki wdrożenia
Zacznij od inwentaryzacji zadań, a nie osób: opisz, co dana rola musi robić, i dopiero potem przypisz uprawnienia. Role powinny być nieliczne i zrozumiałe, a wyjątki rzadkie. Co kwartał przeglądaj przypisania, usuwaj konta osób, które odeszły, i rozdzielaj uprawnienia krytyczne, takie jak zatwierdzanie płatności, na więcej niż jedną rolę.
Gdy żądanie nie przejdzie weryfikacji tożsamości, serwer zwraca zwykle błąd 401 Unauthorized.
Zobacz w praktyce
Błąd 401 (Unauthorized) - co oznacza i jak go naprawić?
Jak zabezpieczyć aplikację przed SQL Injection
Wtyczki WordPress - które najbardziej przydatne?