在实验环境了测试通过之后,就开始在生产环境里进行部署。结果发现,副站死活无法获得主站的登录信息。通过浏览器检查,两者的domain也相同,但是问题出在哪里呢?答案是,副站无法识别主站的信息。 要知道,涉及登录部分的cookie是加密的,如果两个站的加密方法不一致,肯定是没法读取的。解决方法:生成统一的校验。1、在网站 aspnetresources.com/tools/machineKey生成统一的校验,每次都会不同。 生成的内容如下:2、将生成的内容加到需要共享登录的两个项目的Web.config当中,加的位置在 system.Web 节里。问题就解决了,副站就可以获得用户当前登录的账号信息 Read More
posted @ 2014-03-01 17:16 野渡无人舟自横 Views(483) Comments(0) Diggs(0)
站点1:bss.cds.com站点2:oss .cds.com要求:无论在哪个站点登录,访问另一个站的时候都不需要再登录。使用sso方案太过庞大,简洁方案如下:1、修改web.config 2、mvc部分:if (User.Identity.Name == "") { //下面是伪码 bool checked = Login( function { get username password}); if checked { FormsAuthentication.SetAuthCookie( username, false); } el... Read More
posted @ 2014-02-27 16:43 野渡无人舟自横 Views(1295) Comments(0) Diggs(0)