• Najnowsze pytania
  • Bez odpowiedzi
  • Zadaj pytanie
  • Kategorie
  • Tagi
  • Zdobyte punkty
  • Ekipa ninja
  • IRC
  • FAQ
  • Regulamin
  • Książki warte uwagi

Spring boot security zabezpieczenie przed modyfikacją

Mały hosting, OGROMNE możliwości
0 głosów
626 wizyt
pytanie zadane 10 kwietnia 2018 w Java przez miro Pasjonat (23,850 p.)
edycja 10 kwietnia 2018 przez miro

Mam projekt w Spring boot z MVC, security i Thymeleaf, gdzie można zarejestrować użytkownika. Nie wiem jak dobrze rozwiązać kwestę zabezpieczenia API, w ten sposób, że zalogowany użytkownik nie będzie mógł wyświetlić/usunąć zawartość innego użytkownika zgadując id  wpisując sobie z palca url. np. do takiego url /user/{userName}/notebook/{articleId}/delete
Wiem, że nie jest to do końca poprawne API, ale jakoś wygodniej jest używać geta niż np. PUT (mogę zastosować ten sam formularz) w web app. Próbowałem stosować:

@PreAuthorize("#userName == authentication.name")
@GetMapping("/user/{userName}/notebook/{id}/delete")

Jednak i tak wymaga to sprawdzenie w serwisie lub repository czy dany nootebook należy do zalogowanego użytkownika. Gorzej wygląda to jak mamy taką hierarchię user → notebook → article. Czy istnieje jakiś prostszy sposób albo ja coś źle robię? 

Omawiany projekt na githubie, jednak ciągle coś zmieniam więc może to trochę inaczej wyglądać. https://github.com/amiroslaw/languide

Zaloguj lub zarejestruj się, aby odpowiedzieć na to pytanie.

Podobne pytania

0 głosów
2 odpowiedzi 737 wizyt
pytanie zadane 21 listopada 2018 w Java przez periedynek Obywatel (1,320 p.)
0 głosów
2 odpowiedzi 717 wizyt
pytanie zadane 29 stycznia 2019 w Java przez krzy123 Początkujący (260 p.)
0 głosów
1 odpowiedź 1,495 wizyt
pytanie zadane 7 lutego 2018 w Java przez niezalogowany

93,715 zapytań

142,629 odpowiedzi

323,260 komentarzy

63,257 pasjonatów

Motyw:

Akcja Pajacyk

Pajacyk od wielu lat dożywia dzieci. Pomóż klikając w zielony brzuszek na stronie. Dziękujemy! ♡

Oto polecana książka warta uwagi.
Pełną listę książek znajdziesz tutaj

Twierdza Linux. Bezpieczeństwo dla dociekliwych

Aby uzyskać rabat -10%, użyjcie kodu pasja-linux, wpisując go w specjalne pole w koszyku.

...