首页新闻找找看学习计划

C# 模拟网站登录

0
悬赏园豆:20 [已解决问题] 解决于 2017-03-08 13:34

我现在有一个需求,有一个Portal网站,如portal.xxx.com,需要跳转到其他网站下,如a.xxx.com、b.xxx.com:8080、192.168.4.86等这类网站,假设每个网站的登录用户名密码相同,要怎么样实现从portal.xxx.com跳转到其他网站的时候不需要用户登录(即后台帮用户登录)?

C#
hetianqi的主页 hetianqi | 初学一级 | 园豆:71
提问于:2017-03-07 10:29
< >
分享
最佳答案
1

单点登录.或者第三方登录

收获园豆:20
吴瑞祥 | 高人七级 |园豆:28731 | 2017-03-07 10:51

单点登录是指所有网站都公用一个登录门票吧,而且应该是只能在同一个域下。

而我现在的情况是:

1、网站有的用的域名,有的用的IP,不能做到同一个域

2、只是单方面从portal跳转到其他网站的时候自动登录,其他网站切换账号或者退出不影响portal以及其他网站

hetianqi | 园豆:71 (初学一级) | 2017-03-08 09:42

@hetianqi: 

1.会话基于cookie

2.cookie有域限制

3.你想要一个cookie在不同的域之间传递需要一个中间域

4.单点登录或第三方登录能解决这个问题

吴瑞祥 | 园豆:28731 (高人七级) | 2017-03-08 09:44

@吴瑞祥: 

中间域的要求是什么?能解决域名和ip之间互通吗?我感觉cookie在这里可能办不到啊

hetianqi | 园豆:71 (初学一级) | 2017-03-08 09:55

@hetianqi: 所以你去看下单点登录啊...我去你是想干嘛....

吴瑞祥 | 园豆:28731 (高人七级) | 2017-03-08 10:10

@吴瑞祥: 

好吧,是我的需求和单点登录有区别。

目前除了portal外的系统都没有实现单点登录,所以只能通过portal系统模拟登录的方式让别的系统自动登录,但是portal系统模拟登录有个问题就是跨域的问题,所以似乎没有办法解决

hetianqi | 园豆:71 (初学一级) | 2017-03-08 10:48

@hetianqi: 哎.

有一个登录网站a,然后你的portal.登录后跳转一次到a.传入一个token值.

a站点将这个token值写入cookie.从portal跳转到其他系统时.其他系统需要登录的话.就先跳转到a站点的登录页面.传入登录回调地址.a站点如果在cookie中有token值.就将token通过回调地址传回要登录的站点.

要登录的站点通过token找到登录用户.实现用户登录.

能实现你的需求吗?

吴瑞祥 | 园豆:28731 (高人七级) | 2017-03-08 10:59

@吴瑞祥: 

谢谢你的回复,上面的方法能实现我的需求,只不过要让其他系统做改动,目前看来是不行了,所以只能用别的办法,总之还是感谢你

hetianqi | 园豆:71 (初学一级) | 2017-03-08 13:33
其他回答(1)
0

百度一下,单点登录。

龙行天涯 | 园豆:1832 (小虾三级) | 2017-03-08 09:00
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册