Возврат 403 из пользовательского типа исключения в MVC

1

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

Ошибка возникнет на уровне доступа к службам/данным.

Я обнаружил, что если я выброшу UnauthorizedAccessException тогда код состояния, возвращаемый конвейером asp.net, равен 401, что приведет к YSOD вместо перехода на страницу пользовательской ошибки MVC.

От чтения вокруг кажется, что мне нужно возвращать ошибку 403. Я создал специальный тип исключения для использования вместо UnauthorizedAccessException. Как настроить MVC для возврата 403 ответа на эту ошибку? Как мне настроить фильтр для перенаправления на мою пользовательскую запрещенную страницу при этой ошибке? Правильно ли я подхожу?

Теги:
asp.net-mvc
error-handling
custom-errors

1 ответ

0

Возможно, вы могли бы рассмотреть возможность создания аутентификации в asp.net MVC... Дело в том, что вы можете просто добавить атрибут [Authorize] к своему контроллеру или [Authorize(Users="Alice,Bob")] для пользователей и [Authorize(Roles="Administrators")] для групп.

Ссылка на статью MSDN для справки. И учебник для auth в mvc

Ещё вопросы

Сообщество Overcoder
Наверх
Меню