解决User.Identity.IsAuthenticated==false 或User.Identity.Name==string.empty的问题
来源:互联网 发布:优化营商环境建议 个人 编辑:程序博客网 时间:2024/06/05 15:58
HttpContext.Current.User.Identity.IsAuthenticated=false;
HttpContext.Current.User.Identity.Name==""
解释:当用户登录时,服务器为确认客户端通过验证要通过cookie向客户端写验证(Authenticat)信息,在登录页面刚验证完成后服务器还没有把cookie 回发到Client,所以会没有值,当服务器第二次Response的时候,就会从客户端读取Cookie,要想有此Cookie还要在web.config文件中配置相应的参数
<system.web>
<authentication mode="Forms">
<forms domain="bokoAdmin" timeout="20" loginUrl="Login.aspx" path="/"></forms>
</authentication>
<authorization>
<allow users="*"/>
</authorization>
<system.web>
程序验证:
if (Membership.ValidateUser(tbx_username.Text.TrimEnd(), tbx_password.Text.TrimEnd()))
{
FormsAuthentication.SetAuthCookie(tbx_username.Text.TrimEnd(), true,FormsAuthentication.FormsCookiePath);
FormsAuthenticationTicket ticket = new FormsAuthenticationTicket(
1, tbx_username.Text, DateTime.Now, DateTime.Now.AddMinutes(20), false, tbx_username.Text);
// generate new identity
FormsIdentity identity = new FormsIdentity(ticket);
HttpCookie cookie = new HttpCookie(FormsAuthentication.FormsCookieName, FormsAuthentication.Encrypt(ticket));
// write to client.
Response.Cookies.Add(cookie);
}
其中加粗体为主要语句,有此一句就可以实现HttpContext.Current.User.Identity.IsAuthenticated=true;
另推荐一个繁体的MSDN论坛:http://forums.microsoft.com/msdn-cht/default.aspx?siteid=14
authorization节点解决FormsAuthentication.SignOut(); 不起作用的问题。
- 解决User.Identity.IsAuthenticated=false 或User.Identity.Name=string.empty的问题
- 解决User.Identity.IsAuthenticated==false 或User.Identity.Name==string.empty的问题
- 解决User.Identity.IsAuthenticated==false 或User.Identity.Name==string.empty的问题
- 解决User.Identity.IsAuthenticated==false 或User.Identity.Name==string.empty的问题
- 解决User.Identity.IsAuthenticated==false 或User.Identity.Name==string.empty的问题
- 解决User.Identity.IsAuthenticated==false 或User.Identity.Name==string.empty的问题
- HttpContext.Current.User.Identity.IsAuthenticated 这个是表示的什么
- Context.User.Identity.Name说明
- Context.User.Identity.Name是什么意思?
- 从identity impersonate="false"谈起
- asp.net Context.User.Identity.Name说明
- 关于FormsAuthentication.RedirectFromLoginPage() context.user.Identity.name
- asp.net Context.User.Identity.Name说明
- User.Identity.Name获取为空解决方法
- 使用User.Identity对象
- HttpContext.Current.User.Identity.Name 有时获取值不成功
- HttpContext.Current.User.Identity.Name获得不了登录名
- ASP.NET自定义身份验证的实践(Page.User.Identity.Name的使用)
- 文件相对路径
- FusionCharts报表在Android上的实现
- 【LeetCode】-Reverse Linked List II
- RabbitMQ 集群与高可用配置
- MySQL基础----大幅度提高性能方案,分区表
- 解决User.Identity.IsAuthenticated==false 或User.Identity.Name==string.empty的问题
- MySQL存储引擎 InnoDB与MyISAM的区别
- iOS设计模式——委托(delegate)
- Mybatis xm文件
- C# 中的委托和事件
- 5种服务器网络编程模型讲解
- 在MYSQL中运用全文索引(FULLTEXT index)
- 【LeetCode】-Merge Sorted Array
- Android--Android中的Selector的用法