我想根据保存在数据库中的用户权限来限制我网站上的某些页面。
错误将来自服务/数据访问层。
我发现如果我抛出UnauthorizedAccessException
,那么asp.net管道返回的状态代码是401,这导致YSOD而不是转到MVC自定义错误页面。
从阅读中看来我似乎需要返回403错误。我创建了一个自定义异常类型来代替UnauthorizedAccessException
。如何配置MVC以对此错误返回403响应?如何设置过滤器以重定向到此错误的自定义禁止页面?我采取了正确的方法吗?
答案 0 :(得分:0)
也许您可以考虑将身份验证构建到asp.net MVC中......
问题是您只需将[Authorize]
属性添加到控制器或
用户[Authorize(Users="Alice,Bob")]
和群组[Authorize(Roles="Administrators")]
。