Spring i customowa macierz uprawnien

0

Hej,
mam pytanko o stworzenie customowej matrycy uprawnien.
Zalozmy ze mamy taki uklad:

Wojewodztwo
Szkola
Klasa
Uczeń

I mam liste uprawien np:
Uprawnienie 1
Uprawnienie 2
Uprawnienie 3
....
Uprawnienie X

I teraz przypisuje usera do np. Obiektu Szkola X, W ramach tego obiektu przypisuje mu jakies tam uprawnienia z listy uprawnien.
Jednoczesnie chcialbym tego samego usera przypisac do Klasy Y (klasa Y nalezy do Szkoly Y) i tez mu zdefiniwac liste uprawnien.

Jesli ktos jest przypisany do Szkoly X to widzi wszystkie Klasy X oraz wszystkich uczniow X, natomiast jesli jest przypisany do Klasy Y to widzi tylko Uczniow przypisanych do Klasy Y.

Teraz myslalem aby po zalogowaniu user wybieral czy chce pracowac na Szkole X lub Klasie Y tak aby zaladowala mu sie odpowiednia lista uprawnien. Informacje o tym co jest aktualnie aktywne chcialem trzymac w sesji.

I teraz pytanie jak zaimplementowac taka chyba nie standardowa macierz uprawnień w springu.

Dzieki za wskazówki.

0

Na szybko pomysl.
Skoro przy logowaniu masz informacje gdzie chce pracowac.
To w AuthenticationProvider.authenticate() w momencie tworzenia swojego uzykownika zaleznie od wybranej opcji przydzielasz mu rozne GrantedAuthority. Czyli implementujesz Authentication i robisz swojego liste GrantedAuthority ktora zwraca metoda getAuthorities(). Np w konstruktorze mozesz sobie uzupelnic ta liste tak bedzie pewnie najlatwiej.

1 użytkowników online, w tym zalogowanych: 0, gości: 1