ASP.NET MVC3 Как лучше обезопасить действия, которые возвращают Json Result - PullRequest
0 голосов
/ 15 июля 2011

У меня есть действие, которое повторно запускает результат json на основе идентификатора подписки и пользователей, которые подписались на этот контент.

Таким образом, если пользователь подписался на подписку 1, он вполне сможет получать данные только для подписки 1, если пользователь подписался на подписку 2, он вполне сможет получить данные для этого. Если он подписался на 1 и 2, он сможет получить связанный контент 1 и 2 и т. Д.

Итак, вопрос в том, защищен ли контроллер от несанкционированных запросов и пользователей, у которых нет прав доступа к неподписанному контенту?

Хорошо, что я могу сделать так:

1) Я могу защитить свой контроллер атрибутом [Authorize], это предотвратит несанкционированные запросы к контроллеру. 2) При каждом запросе я буду проверять имя пользователя и действительно ли ему разрешено получать запрошенный контент.

Так я тогда все-таки обеспечен?

Насколько сложно будет получить доступ к неподписанному контенту для авторизованных пользователей и как трудно будет украсть неавторизованные пользователи после того, как я выполнил два шага выше? Должен ли я думать о чем-то еще, чтобы лучше защитить контент / веб-сайт?

1 Ответ

0 голосов
/ 15 июля 2011

Я бы сказал, что если вы используете атрибут Authorize и / или метод IsInRole, у вас все будет в порядке с позиции авторизации.Вы должны убедиться, что ваша аутентификация также надежно защищена.

Например: Аутентификация с использованием поставщиков OpenID и доверенных сторон будет удовлетворять Аутентификации.Я использую DotNetOpenAuth для этого ...

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

В дополнение к тем, которые вам понадобятся для защиты канала от MITM-атак и перехвата.Таким образом, вы можете взглянуть на безопасность на основе утверждений и некоторые приемы, используемые для предотвращения MITM-атак с временными метками.

Затем, конечно, рассмотрите все это по https.

Только мои два центаНадеюсь, это немного поможет.Безопасность - это очень широкая и глубокая тема, поэтому я только предлагаю варианты того, где искать.Мой путь наверняка не будет лучшим.

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