Как изолировать данные пользователей, хранящиеся в БД SQL в MVC3 - PullRequest
0 голосов
/ 05 июля 2011

У меня есть проблема, чтобы найти лучший способ, как изолировать данные пользователей, хранящиеся в БД.

Теперь, если я войду в свой профиль и получу доступ к своему профилю, я смогу увидеть данные, загруженные из БД.

пример .../myprofile/PeterM

но если я вручную изменил адрес на .../myprofile/MartaM, я вижу данные, хранящиеся в дБ для пользователя marta, как я могу изолировать данные членов.

Спасибо за мой, возможно, глупый вопрос.

1 Ответ

1 голос
/ 05 июля 2011

Вы всегда должны проверять, разрешено ли пользователю, который обращается к данным. Не полагайтесь только на строку запроса.

Так, например, вместо того, чтобы выполнять поиск в вашей базе данных на основе имени пользователя в строке запроса, получите информацию, основанную на аутентифицированном в настоящее время пользователе.

Если я вошел в систему как Брэндон, то GetUser(HttpContext.Current.User.Identity.Name); всегда должен возвращать мою информацию, независимо от того, чье имя передается в действие контроллера.

Или просто убедитесь, что имя пользователя, которое вы получаете, совпадает с HttpContext.Current.User.Identity.Name

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...