ASP.NET网络上实现单点登录
来源:互联网 发布:全民枪战刷骑士软件 编辑:程序博客网 时间:2024/05/16 01:54
单点登录(Single Sign On)简称SSO,是目前比较流行的企业业务整合的解决方案之一。在开发企业门户网站或电子商务系统时,设计一个用户只能在同一网站进行惟一登录的功能。
Cache对象主要用于Web应用程序的缓存。对于每个应用程序都需要创建Cache对象的一个实例,并且只要对应的应用程序域保持活动,该实例便保持有效,有关Cache对象实例的所有信息都须通过HttpContext对象的Cache属性或Page对象的Cache属性来提供。
本实例中,把用户的登录信息保存在Cache对象中,并设置过期时间为Session变量失效的时间,因此,一旦Session变量失效,Cache对象也就过期了;但Cache对象对所有的用户还可以访问,因此,用它保存用户信息比数据库来得方便。
实现关键代码如下:
protected void btnLogin_Click(object sender, EventArgs e) { int i = this.checkLogin(txtName.Text,txtPwd.Text); if (i> 0) { string str_Key = txtName.Text + "_" + txtPwd.Text; // 得到Cache中的给定str_Key的值 string str_User = Convert.ToString(Cache[str_Key]); // Cache中如果没有str_Key的项目,那么用户没有登录 if (str_User == String.Empty) { // TimeSpan构造函数,用来判断是否登录。 TimeSpan SessTimeOut = new TimeSpan(0,0,HttpContext.Current.Session.Timeout,0,0); HttpContext.Current.Cache.Insert(str_Key,str_Key,null,DateTime.MaxValue,SessTimeOut, CacheItemPriority.NotRemovable,null); Session["User"] = str_Key; // 首次登录成功 Response.Write("<h2 style='color:red'>你好,登录成功!"); } else { // 在 Cache 中存在该用户的记录,表名已经登录过,禁止再次登录 Response.Write("<h2 style='color:red'>抱歉,您好像已经登录了!"); return; } } else { Response.Write("用户名称或密码错误!!!"); } } |
- ASP.NET网络上实现单点登录
- ASP.NET网络上实现单点登录
- ASP.NET网络上实现单点登录
- ASP.NET网络上实现单点登录
- ASP.NET网络上实现单点登录
- ASP.NET 实现单点登录
- 单点登录在ASP.NET上的简单实现
- 单点登录在ASP.NET上的简单实现
- 单点登录在ASP.NET上的简单实现
- 单点登录在ASP.NET上的简单实现
- 单点登录在ASP.NET上的简单实现
- 单点登录在ASP.NET上的简单实现
- 在ASP.NET 中实现单点登录
- 在ASP.NET 中实现单点登录
- 在ASP.NET 中实现单点登录
- 在ASP.NET 中实现单点登录
- 在ASP.NET 中实现单点登录
- 在ASP.NET 中实现单点登录
- wchar_t与char转换
- 上传图片文件实现防伪图片水印并写入数据库
- 200-10-7备忘
- 设计模式
- C# SQL语句执行时间过长在操作完成之前超时时间已过或服务器未响应问题的解决
- ASP.NET网络上实现单点登录
- Linux VS NT4 DHCP
- C# 参考之上下文关键字:get、set、value (ZT)
- 最简单,最适合入门学习的三层架构例子
- 向其他进程注入代码的三种方法
- Json.Net 3.0应用:asp.net 3.5 操作Json数据
- 预防按钮的多次点击【恶意刷新】
- sap 权限常用Table速查
- 一个简单的时钟频率计数器