gpt4 book ai didi

asp.net-mvc - 如何检查用户是否在 Action 内获得授权

转载 作者:行者123 更新时间:2023-12-03 10:21:55 25 4
gpt4 key购买 nike

通常我用 [Authorize] 保护我的操作但这次我需要检查用户是否在操作中获得授权。

例如

if(userIsAuthorized) {
//do stuff
}
else {
//return to login page
}

我相信我正在使用“表单例份验证”

这个问题有点类似于 this但给出的答案似乎都不起作用。

编辑:我做了更多的挖掘——似乎如果我在一个具有 [Authorize] 的操作上设置断点, User.Identity 已设置,但在没有它的 Actions 上,User.Identity 为空,即使我已登录

最佳答案

如果您只想知道用户是否已登录:

if (User.Identity.IsAuthenticated) { ... }

如果您尝试执行任何特定于角色的操作:
if (User.IsInRole("Administrators")) { ... }
User instance 是 Controller 的公共(public)属性类,因此您始终可以从您编写的 Controller 访问它。如果没有用户登录,您应该有一个 GenericPrincipal对于 UserGenericIdentity对于 User.Identity ,所以不用担心检查空值。

关于asp.net-mvc - 如何检查用户是否在 Action 内获得授权,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2204766/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com