Uprawnienia zespołu wymusza API, nie ekran
W Frachcie uprawnienia zespołu sprawdza samo API, a zmieniać je może wyłącznie właściciel konta.
Macierz uprawnień zespołu dostępna pod /account#team decyduje dokładnie o tym, co każdy członek zespołu może zobaczyć i zrobić w Frachcie, i nie jest to tylko ograniczenie wizualne: każde uprawnienie jest sprawdzane przez samo API, zanim jakakolwiek akcja zostanie wykonana. Oznacza to, że dyspozytor, kierowca czy księgowy bez danego uprawnienia zostanie odrzucony u źródła, a nie tylko odsunięty przez ukryty przycisk.
Otwórz /account#team, aby zobaczyć aktualną macierz swojego zespołu. Każdy członek jest wymieniony wraz z przypisanymi mu uprawnieniami, a interfejs pokazuje tylko te akcje, które dana osoba rzeczywiście może wykonać. Jeśli komuś brakuje uprawnienia, odpowiednia opcja w ogóle się dla niego nie pojawi, bo nie ma sensu pokazywać przycisku, który i tak zostałby odrzucony przez API.
Tylko właściciel konta może edytować tę macierz. Jeśli trzeba dodać, usunąć lub zmienić to, co może robić członek zespołu, zmiana musi wyjść z konta właściciela; pozostali członkowie, niezależnie od roli, nie mogą zmieniać uprawnień ani sobie, ani innym.
Ponieważ egzekwowanie odbywa się na poziomie API, nie musisz się martwić, że ktoś znajdzie obejście przez przeglądarkę, bezpośredni link czy starą zakładkę. Cokolwiek ukryłby interfejs, i tak odrzuciłoby API, więc obie warstwy zawsze są ze sobą zgodne.
To chroni cię przed sytuacją, w której uprawnienie wygląda dobrze na ekranie, ale leżący pod spodem dostęp jest niespójny, albo w której członek zespołu wykonuje akcję, której nigdy nie powinien mieć, tylko dlatego że jakiś element ekranu został przeoczony. Gdy macierz jest egzekwowana od początku do końca, to, co widzisz, jest tym, na co naprawdę pozwolono.