MVC - przekazanie danych z Get do Post

MVC - przekazanie danych z Get do Post
Severus Snape
  • Rejestracja:prawie 5 lat
  • Ostatnio:ponad 3 lata
  • Postów:17
0

Cześć,
Spotkałem się z poniższym problemem. W metodzie akcji Get zwracany jest "wypełniony" ViewModel z polami "id" oraz "content". Użytkownik powinien modyfikować w widoku tylko pole "content". Do "id" nie powinien mieć dostępu, to "id" jest tylko informacją dla metody Post, który obiekt został zmieniony. To "id" muszę wysłać na widok aby nie stracić go. Tylko teraz pojawia się problem. Jak wyślę to na front, jakiś cwaniak może podmienić je i wtedy aplikacja zaktualizuje inny obiekt, lub wywali się jeśli nie będzie takiego id. Więc mam pytanie. W jaki sposób mogę przesłać id do post, tak aby użytkownik nie mógł go zmienić?

UglyMan
  • Rejestracja:około 6 lat
  • Ostatnio:ponad 3 lata
  • Postów:2206
4

Na backendzie sprawdzasz, czy użytkownik ma prawa do tego obiektu, jak nie ma, to dostaje po twarzy odpowiednim statusem. Jeśli zmieni sobie na id obiektu, do którego ma dostęp, to nie bardzo, jesteś się wstanie przed tym zabezpieczyć.

edytowany 1x, ostatnio: UglyMan
PH
  • Rejestracja:prawie 8 lat
  • Ostatnio:8 dni
  • Postów:185
0

Może rozwiązaniem będzie TempData?

MarekR22
Moderator C/C++
  • Rejestracja:ponad 17 lat
  • Ostatnio:18 minut
1

Kod się zawsze powinno się pisać tak, by nieważne co dostanie się na wejściu (czy to jest http, plik w jakimś formacie, czy baza danych, czy użytkownik za klawiaturą), to program powinien w stanie prawidłowo poradzić sobie z danymi (np zgłaszając błąd).

W twoim wypadku powinieneś mieć informacje identyfikującą użytkownika i na tej podstawie rozstrzygnąć, czy ma on prawo do danego zasobu.


Jeśli chcesz pomocy, NIE pisz na priva, ale zadaj dobre pytanie na forum.

Zarejestruj się i dołącz do największej społeczności programistów w Polsce.

Otrzymaj wsparcie, dziel się wiedzą i rozwijaj swoje umiejętności z najlepszymi.