A网站----ASP.NET,我有完全控制权
B网站----lotus的一个OA系统,只有账号可以进行web登陆,没有其它任何权限现在我想A网站用B网站的用户账号信息,
具体就是
某用户登陆A网站,A服务器返回用户登陆页面,用户输入在B网站的登陆账号信息后,点击确定,
如果输入的用户名和密码能成功登陆B网站,那么输入就正确,就可以访问A网站的其它页面,
否则报用户名密码错误。
大家看看用什么方法。
我是这样考虑的
在A网站上,接收到用户的帐户和密码后,模拟登陆到B网站,如果能登陆成功,那么OK,否则报错这样,我可以在A网站上保存一个cookie,这个cookie是B网站返回的,
那么问题是我能否把这个B网站返回的SESSIONID作为A网站返回给用户的SESSIONid,假如能,那么用户成功登陆A网站后理论上就不要再验证就可以登陆B网站了
当然,我也知道lotus返回的sessionid格式和ASP不一样,但有没有什么办法呢?或者有什么其它思路
无论javascript、perl、php随便总之
一个目的
就是A网站要利用B网站的用户账号信息,可没有B网站的数据库访问权限当然本人对ASP.NET不是很熟悉
上面可能有理解错误的地方
有思路说得详细一点

解决方案 »

  1.   

    这个思路可以,用iframe嵌套B网站的登录页面,
      

  2.   

    基本按我的思路已经实现了。不过主要觉得太过另类
    想看看有什么好办法用户名,密码 做映射 怎么做?iframe嵌套,那么用户实际访问的是B网站啊。好像这样也是可以的。。检查返回页是否登录页,如果不是登录页那么就登陆成功了。不过A网站如何取到这个返回页呢。默认好像是B网站和用户交互的啊,不经过A
    通过脚本可以嘛?另外问一个
    c#中Response.Redirect("http://website");
    这重定向的时候可以带sessionid的嘛。。顶者有分啊!
      

  3.   

    以前是这样子的,  A系统是所有子系统的核心系统,用户通常只打开A系统,如果用户在A系统上面要处理B系统的业务(B系统里面的待办事件等,会显示在A系统上面 , A系统是办公的OA事件,B系统通过WEBSERVICE会往A系统插入一个待办事件),总不能让她再输入一次B系统的用户名和密码, A系统的用户表里面多加了两个字段,对应B系统的用户名和密码,在A系统直接点办理,就把该用户在B系统里的用户名和密码带过去,直接登录到系统。