Безопасность ASP.Net: Обтекание запросов в IHttpHandler или использование RoleProvider? - PullRequest
0 голосов
/ 12 ноября 2009

Я работаю с ASP.Net MVC, а также с DynamicData, и мне нужно добавить защиту на основе ролей.

Должен ли я реализовать это через:

  • IHttpHandler с пользовательскими действиями, которые проверяют, авторизован ли пользователь?
  • Или я должен использовать RoleProvider?
  • Или, может быть, какая-то комбинация двух?

Если RoleProvider является жизнеспособным вариантом, когда мне когда-нибудь понадобится расширить абстрактный базовый класс RoleProvider по сравнению с использованием включенных. MSDN говорит, что вы можете расширить этот класс только в том случае, если «вам нужно хранить информацию о роли в источнике данных, который не поддерживается поставщиками ролей, включенными в .NET Framework». Пожалуйста, разъясните это. Объясните, как это будет работать в условиях, когда мне не нужно расширять базовый класс, а вместо этого использовать включенных поставщиков ролей. Какие источники данных поддерживаются включенными поставщиками?

Кроме того, ваш ответ на эти вопросы будет отличаться для ASP.Net MVC и ASP.Net DynamicData?

1 Ответ

0 голосов
/ 13 ноября 2009

Все MSDN здесь говорит: «Мы написали этот материал для вас, протестировали и отладили его, пожалуйста, используйте его».

Поставщики ролей по умолчанию отлично работают, если вы потратите некоторое время на их настройку. Реализовать свою собственную тоже не сложно.

Я бы ответил на одно и то же. С MVC вы устанавливаете атрибуты Authorize для ваших действий контроллера и / или контроллера. С динамическими данными ваши настройки находятся внутри файла web.config.

...