1 / 2
文档名称:

单点登录集成方案实例.doc

格式:doc   大小:45KB   页数:2页
下载后只包含 1 个 DOC 格式的文档,没有任何的图纸或源代码,查看文件列表

如果您已付费下载过本站文档,您可以点这里二次下载

分享

预览

单点登录集成方案实例.doc

上传人:Kazham 2021/12/3 文件大小:45 KB

下载得到文件列表

单点登录集成方案实例.doc

文档介绍

文档介绍:某A系统与某B系统单点登录集成方案
某某
需求说明:
登录“某A系统”的用户,不必二次登录即可进入“某B系统”;反之,登录“某B系统”之后,也可以不必二次登录即可进入“某A系统”。
实现价值:
“一次登录,多个系统进入”,这种方式用户体验较好,降低了安全风险和管理成本,提高服务平台之间的合作效率。
实现方式:
以“某A系统”为主,以“某B系统”为辅,关键点在于用户登录信息的同步方式。本方案需开发一个WCF后台服务程序(SSO接口)并需要修改各自的登录页面。
具体实现方式如下:
SSO接口是这样的一个WCF服务程序:
内部含有 更新密码的方法:pwdUpdate(“用户编号”,“密码”),
发布到某B系统服务器(济南),然后由某A系统添加引用这个服务接口,即可直接调用里面的pwdUpdate方法,将OA中 “用户编号”和更新后的“密码”传进去,即可实现对北斗车辆管理数据库中:用户信息表的用户密码更新。
此接口具体使用方法请参考:《SSOService后台服务接口调用说明》。
某A系统每次对用户密码变更后,必须调用这个SSO接口同步修改某B系统数据库中的对应的用户密码,以使两个平台的用户名和密码一致。
然后,在各自系统的内部做一个链接,指向对方的登录验证页面,并对各自的登录验证页面做如下修改:
添加其中参数(用户编号和密码)的传递,以加密的方式通过URL加参数传递。例如:
发送参数:
("?userId="+ UrlEncode("10203")&pwd=”+ UrlEncode(“123”));
接收参数:
string userId = UrlDecode( ["userId"]);
string pwd = UrlDecode( ["pwd"]);
然后在登录验证页面后台,检查所接受的 userId 和 pwd,如果非空,则
直接验证所取出的用户名和密码是否和本地数据库中的一致,若一致则直接转入本系统,否则提示用户非法,回到相应的登录页面;进而如果所接受的userId和pwd皆为空,说明是正常的登录,而非平台间调用,则按照用户输入的用户名和密码验证。
如果是URL传参数验证通过,则:登录验证页面直接提交到服务器,不给用户显示。
此接发URL参数的方式以及加密解密方法的详细介绍,请参考:
《单点登录