Asp.net mvc 在ASP.NET MVC应用程序中,什么设置User.Identity.IsAuthenticated?
我正在使用Facebook C#SDK,并通过用户的Facebook帐户对其进行身份验证。一旦我执行了所有的检查来“验证”它们,我就调用Asp.net mvc 在ASP.NET MVC应用程序中,什么设置User.Identity.IsAuthenticated?,asp.net-mvc,forms-authentication,Asp.net Mvc,Forms Authentication,我正在使用Facebook C#SDK,并通过用户的Facebook帐户对其进行身份验证。一旦我执行了所有的检查来“验证”它们,我就调用FormsAuthentication.SetAuthCookie(email,false) 执行该调用是否允许我在操作中访问User.Identity.IsAuthenticated?如果我不打那个电话呢 我有一些操作将根据其身份验证状态返回不同的视图,并希望确保User.Identity.IsAuthenticated在MVC 4应用程序中是可靠的。它是注册
FormsAuthentication.SetAuthCookie(email,false)代码>
执行该调用是否允许我在操作中访问User.Identity.IsAuthenticated
?如果我不打那个电话呢
我有一些操作将根据其身份验证状态返回不同的视图,并希望确保User.Identity.IsAuthenticated
在MVC 4应用程序中是可靠的。它是注册的,并在每次请求时执行。当您在web.config的
标记中指定mode=“Forms”
时,此模块将自动注册。正是这个模块截获了所有401响应,并自动将用户重定向到登录页面(这有时不是一个理想的行为,因为最终结果是HTTP状态代码为200)
因此,要回答您的问题:
执行该呼叫是否允许我访问
User.Identity.i是否已在我的操作中验证?如果我
你没打那个电话吗
不完全是。此调用仅向响应发送表单身份验证cookie。HTTP模块负责拦截请求,如果此请求包含cookie,它将设置User.Identity
谢谢,回答得很好。假设访问者是全新的网站,没有授权cookie。User.Identity.IsAuthenticated
是false还是null?然后,只要FormsAuth HTTP模块能够读取/验证FormsAuth cookie,User.Identity.IsAuthenticated
将为true?User.Identity永远不会为null。但是User.Identity.IsAuthenticated将是错误的。很好,谢谢!你不仅回答了我的问题,而且我现在更充分地理解了formsauth,真的很感激。感谢你的明确回答,请你提及任何涉及mvc整个生命周期的文章。我深入研究了mvc的生命周期,但它并不是一个详细的生命周期。我想澄清我对每个模块和整个应用程序以及请求生命周期的概念。@Darin在表单身份验证中,单击“登录”按钮并从db成功进行身份验证后,会发生什么情况来设置用户身份,是否有任何模块/处理程序等,如果nit使用默认成员身份,那么应该如何设置标识?设置好了吗?Cookie对此负责吗?