c# - 当用户已经登录时,如何重定向到未授权页面而不是登录页面?

标签 c# .net asp.net-mvc

当用户已经登录但角色不正确时,如何设置我的 Authorize(Roles="blah") token 重定向到“您无权执行此操作”?目前它重定向到登录页面,这不是我们想要的。我们认为,由于用户已经登录,因此重定向到此页面会让人感到困惑。如果他们没有登录,则应该重定向到登录页面。

最佳答案

方式AuthorizeAttribute设计是它会首先查看用户是否已通过身份验证,然后再查看他是否在角色中。如果不满足这些条件中的任何一个,它将简单地返回一个 HttpUnauthorizedResult。这反过来会将响应代码设置为 401。要实现您想要的效果,您需要实现自己的 IAuthorizationFiler。 .

关于c# - 当用户已经登录时,如何重定向到未授权页面而不是登录页面?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1734374/

相关文章:

c# - 从下拉列表中选择项目时更改 ComboBox 的文本字段?

.net - PowerShell:使用 System.IO. Compression.FileSystem 将文件移动到 zip

c# - 为什么无法比较 IntPtr.Zero 和 default(IntPtr)?

asp.net-mvc - 存储库模式 : One repository class for each entity?

c# - c#中new关键字隐藏成员的有效应用

C#,没有视频,只有音频,使用多种形式的 VLC,黑屏?

c# - 帮助 Linq 表达式根据字段计数返回字符串列表

asp.net-mvc - ASP.NET MVC 如何在生产中禁用调试路由/ View ?

c# - DependencyProperty 对于多个 FrameworkElement 实例的行为

c# - 应用程序滞后于每个计时器滴答