elw*_*wyn 26 asp.net-mvc authorization forms-authentication
通常我保护我的动作,[Authorize]但这次我需要检查用户是否在行动中获得授权.
例如
if(userIsAuthorized) {
    //do stuff
}
else {
    //return to login page
}
我相信我正在使用'表单身份验证'
这个问题与此类似,但没有一个答案似乎有效.
编辑:我已经做了一些挖掘 - 似乎我在一个Action上断点[Authorize],User.Identity已设置,但是在没有它的Actions上,User.Identity为空,即使我已登录
Aar*_*ght 46
如果您只想知道用户是否已登录:
if (User.Identity.IsAuthenticated) { ... }
如果您尝试执行任何特定于角色的操作:
if (User.IsInRole("Administrators")) { ... }
该User实例是Controller该类的公共属性,因此您始终可以从您编写的Controller访问它.如果没有用户登录,你应该有一个GenericPrincipal对User和GenericIdentity的User.Identity,所以不用担心检查空值.
Request.IsAuthenticated 应该适合你想要做的事情.
| 归档时间: | 
 | 
| 查看次数: | 37404 次 | 
| 最近记录: |