Prüfung der Zugriffsrechte im Frontend und Zugangsschutz der Routen
Nach dem Login wird über einen GetRequest an die API die jeweilige Rolle des Nutzers geholt und dessen Rolle wird danach in den VUEX Store geschrieben
- Zugangsbeschränkte Views, die nicht public sind, werden durch einen selektiven RoleGuard geprüft
- beforeEnter Methode
- wenn die Rolle es erlaubt, darf der Nutzer die Route begehen
- wenn nicht wird er automatisch redirected (HOME)
- Routerlinks werden für nicht Zugangsberechtigte Seiten direkt aus der Navigation entfernt. (wird hier behandelt: https://git.ufz.de/rdm/biome/frontend/-/issues/99)
- Oder Nutzer werden daraufhin auf Login weitergeleitet
Exemplarisch bitte erstmal für je 1 umsetzen ... danach in gesondertem Ticket nochmal Anforderungen der bereits gebauten Views checken und implementieren.
Als Aufschlag: https://git.ufz.de/rdm/intob-db/frontend/-/blob/develop/app/src/router/index.js
Akzeptanzkriterien:
-
Die Nutzerrolle wird sofort nach dem Login geholt -
Nutzerrolle im nicht eingeloggtem Zustand ist GUEST -
die Routes werden um einen RoleGuard geschützt (Detailplanung, Route > Nutzer folgt) -
beforeEnter Methode ist im Router implementiert -
Nutzer die dennoch eine Route begehen, die für sie gesperrt ist, werden auf Home weitergeleitet
Review:
-
Die Nutzerrolle wird sofort nach dem Login geholt -
Nutzerrolle im nicht eingeloggtem Zustand ist GUEST -
die Routes werden um einen RoleGuard geschützt (Detailplanung, Route > Nutzer folgt) -
beforeEnter Methode ist im Router implementiert -
Nutzer die dennoch eine Route begehen, die für sie gesperrt ist, werden auf Home weitergeleitet
Edited by Michael Voigt