asp.net MVC QueryString

Тип проекта MVC2. Скажем, у меня есть страница1. после успеха он пишет что-то в строку, получает новый вставленный идентификатор строки, перенаправляет на другую страницу и отправляет идентификатор строки в качестве параметра. и пользователь может увидеть этот параметр в строке запроса. и может изменить это. Я так думаю, что это проблема в некоторых ситуациях (страницы). я использую для него скрытый ввод и после пост-проверки параметр из строки запроса со скрытым значением ввода. если они не равны, то пишите в лог и перенаправляйте на страницу ошибки. мой путь правильный. или есть хорошие методы.

Спасибо...

1 ответ

Решение

Предоставление идентификаторов, подобных этому, является довольно стандартным и позволяет браузерам создавать закладки для определенных элементов. Ваша задача - убедиться, что пользователь может видеть и изменять только те записи, которые он должен иметь.

Если пользователь выполняет какой-либо URL-взлом и вводит URL-адрес элемента, который ему запрещено просматривать или изменять, вы можете либо просто отправить его обратно на родительскую страницу, либо дать Access Denied сообщение, в зависимости от приложения / контекста.

Суть в том, чтобы никогда не доверять пользовательскому вводу, включая скрытые параметры формы.

Другие вопросы по тегам