当前位置: 首页 > 图文教程 > 网络编程 > ASP.NET > asp.net 1.1/ 2.0 中快速实现单点登陆

ASP.NET
C# Quoted-Printable编码、解码
asp.net Google的translate工具翻译 API
.NET读取所有目录下文件正则匹配文本电子邮件
asp.net 半角全角转化工具
AjaxControlToolKit 显示浏览者本地语言的方法
asp.net HTML文件上传标签
ASP.NET 绑定DataSet中的多个表
ASP.NET 重定向的几种方法小结
Asp.Net 重定向必须要知道的一些资料
ASP.NET 导出到Excel时保留换行的代码
Asp.Net Cache缓存使用代码
document.getElementsByName和document.getElementById 在IE与FF中不同实现
GridView单元格合并
asp.net 大文件上传控件
asp.net 日期函数 某月的第一天和最后一天的日期
asp.net 时间类 一周的周一和周末的日期
C# javaScript函数的相互调用
asp.net membership 密码重设
"虚拟路径"..."映射到另一个应用程序,这是不允许的!
如何传值在2个页面之间 要求不刷新父页面,并且不能用Querystring传值

ASP.NET 中的 asp.net 1.1/ 2.0 中快速实现单点登陆


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-09-13   浏览: 120 ::
收藏到网摘: n/a

问题:
  网站有bbs.xxx.com / main.xxx.com / pay.xxx.com 这三个不同的二级域名站,要实现任何一二级域名处登陆,其他各二级域名的站均登陆。
  解决办法:
  设置cookie的domain属性。
  详细介绍:
  把保存用户登陆信息的cookie的域设置成一样即可。usercookie.Domain=".xxx.com"; 要注意,在域名前必须要加一个"."。这个设置在登陆和退出的时候都需要。
  比较普遍的做法自然是用一个专门负责用户登陆的类来管理这些事务。这样其他登陆页面只要调用这个类就可以,一通百通。而如果你使用asp.net 2.0 和forms验证,则有更简单的办法来完成这个设置。
  web.config中添加了对域的支持,只要按照如下的设置即可:
<authentication mode="Forms">
<forms loginUrl="Login.aspx" domain=".xxx.com" name=".AutoLinkEduSitecookie"/>
</authentication>
  domain:可选的属性。
  指定在传出 Forms 身份验证 cookie 中设置的可选域。此设置的优先级高于 httpcookies 元素中使用的域。 此属性是 .NET Framework 2.0 版中的新属性。默认值为空字符串 ("")。
  注意
  无论是哪一种办法,cookie的name一定要相同。