SSO身份统一认证系统技术实现

上传人:汽*** 文档编号:428227078 上传时间:2024-02-09 格式:DOC 页数:10 大小:126KB
返回 下载 相关 举报
SSO身份统一认证系统技术实现_第1页
第1页 / 共10页
SSO身份统一认证系统技术实现_第2页
第2页 / 共10页
SSO身份统一认证系统技术实现_第3页
第3页 / 共10页
SSO身份统一认证系统技术实现_第4页
第4页 / 共10页
SSO身份统一认证系统技术实现_第5页
第5页 / 共10页
点击查看更多>>
资源描述

《SSO身份统一认证系统技术实现》由会员分享,可在线阅读,更多相关《SSO身份统一认证系统技术实现(10页珍藏版)》请在金锄头文库上搜索。

1、. -用户身份统一认证系统*维信软件*2021年4月22日目 录一、认证中心的主要功能:3二、认证中心的设计要求:3三、对业务系统的要求:4四、认证中心的登录4五、SSO验证实现过程5六、接口设计7七、业务系统的集成工作10一、 认证中心的主要功能:1) 用户登录认证平台机构、用户名和密码的校验、数字证书签名校验、实时短信校验2) 凭证生成和传递3) 凭证有效性检查4) 记录日志、提供审计5) 关联系统信息的维护6) 证书的管理和公共效劳二、 认证中心的设计要求:1) 考虑到凭证的平安性,引入了加密和数字签名技术;2) 不提供注册功能,而是分别在各自应用进展注册,但提供到各个系统的注册;3)

2、注销系统时,只需去除认证中心的Session信息即可,其它已经通过认证登录过的业务系统不受影响;4) 各应用系统的用户信息分别各自管理,综合接入平台提供平台统一机构和统一用户信息的生成和维护功能,并提供平台统一用户和应用系统用户的绑定功能;5) 认证中心专有凭证模块负责凭证的创立,解析及验证,并对外提供效劳接口;6) 业务系统可根据凭证得到用户的相关信息,比方业务系统用户机构、用户名等信息,认证中心对外提供用户信息获取效劳;7) 提供给用系统管理功能,方便统计登录行为,提供审计和日志功能,方便将其他应用系统经过简单配置,就可参加认证整合系统中,方便证书的注册、注销、查询等;8) 为了确保认证中

3、心的强健,系统支持热备份等功能。三、 对业务系统的要求:1) 凭证信息的相互传送都是已加密的方式进展传送,即使凭证信息被截取到,也无法解析到凭证信息中的内容,各业务系统只可使用自己的私钥才可以解密凭证信息;2) 业务系统不可以每次都去认证中心验证,所以可将凭证保存在会话中,即Session的方式;3) 业务系统不要过于复杂,以方便和现有系统的整合,建议采用过滤器或Servlet方式;4) 由于业务系统的权限管理机制可能不同,故认证中心不做权限管理,由业务系统自己负责;5) 业务系统和认证中心的通信采用Web Services 接口效劳。四、 认证中心的登录业务系统要使用认证中心进展验证操作,第

4、一次需要登录一次认证中心,之后的认证的操作则不需要再次登录认证中心。当认证中心登录成功之后,用户便可在认证中心的业务应用列表当中选择相应的业务系统,进展业务系统的用户登录验证操作。五、 SSO验证实现过程1、 当用户要使用认证中心进展业务系统的统一认证时候,分为两种情况:a) 用户未登录过统一认证系统此时用户的浏览器界面首先会跳转到认证中心的登录地址,用户输入相关的登录信息机构号、柜员号、密码、短信效验码等,待验证通过后,则会跳转到认证中心的业务系统列表页面;b) 用户已登录过统一认证系统如果用户之前已经登录过认证中心,则当前用户的浏览器页面会直接跳转到业务系统列表。2、 当进入到业务系统列表

5、之后,用户通过选择相应的业务系统,然后页面会跳转到业务系统中用于重定向到SSO验证效劳认证地址的转发地址,跳转完成后,业务系统自身会生成一个用于验证本次认证请求的随机码,并携带认证中心所提供的应用编号,向认证中心发起一次用户验证请求即将页面重定向到认证中心所提供的用于业务系统请求SSO验证效劳的认证地址。3、 当认证中心接收到业务系统发起的用户验证请求后,首先认证中心会从SSO效劳端的Session中获取到当前所登录用户的用户信息,然后再从业务系统的请求当中接收到由业务系统所发送的随机码和应用编号,根据认证中心登陆的用户编号,业务系统的应用编号,从数据库查询到业务系统所需要的映射用户信息。然后

6、再将业务系统所发送的随机码等信息通过相关加密方式生成一个用于本次业务系统登录认证的凭证信息,返还给业务系统。4、 业务系统通过回调地址接收到认证中心所返回的凭证信息,然后对其的可用性进展检测验签、随机码比对、凭证可用性效验等。如果当前凭证信息正确无误且可用,则对其进展解密。随后业务系统根据自己的需求,从凭证信息中获取到相应的用户信息,加载自己系统的用户权限、菜单等信息,跳转到业务系统自身的系统界面,即完成了一次SSO登录验证过程。六、 接口设计1) 凭证的设计算法、构造a) 凭证采用RAS非对称密码算法,效劳端采用电子信封和数字签名生成一个用于业务系统登录验证的凭证信息;b) 凭证的数据采用J

7、SON格式存储,构造包括:i. 当验证成功后,返回响应码(00)和验证通过的用户信息凭证,如:响应码user:brhId:用户机构编号,userId:用户编号,caSerialId:CA证书序列号,ssoUseId:SSO用户编号,tokenMark:凭证唯一标识,clientMark:业务系统所生成的随机码,signData:签名值;ii. 当验证失败后,则返回响应码和未通过验证的异常信息凭证;响应码errInfo:详细的异常信息说明。响应码说明:响应码响应码详细说明00验证通过01代表当前所请求的应用信息不存在;02代码当前所请求的应用暂时不可用;03代表当前所请求的应用在SSO效劳端暂为

8、添加映射用户信息;04代表当前所请求的应用在SSO效劳端中的映射用户信息不可用;09其他异常信息;2) 认证中心提供用于业务系统请求SSO验证效劳的认证地址业务系统每次使用SSO验证效劳,需请求以下:serverIp:port/verificationAppappId=应用编号&clientMark=业务系统随机码应用编号将会由SSO效劳提供,业务系统随机码由业务系统自身生成。3) 业务系统提供用于重定向到SSO验证效劳认证地址的转发地址当需要进展登录验证时,SSO系统首先跳转到此地址,然后由业务系统自身生成一个随机码,并携带认证系统所分配给自己的应用编号,重定向到认证中心所提供的用于业务系统

9、请求SSO验证效劳的认证地址:clientIp:port/SSOLoginRedirect4) 业务系统提供接收效劳端返回凭证的回调地址clientIp:port/SSOLoginServlet接收效劳端返回的凭证String:响应码+凭证业务应用系统读取响应码判断凭证是否正确返回,解密凭证读取随机码clientMark,验证随机码是否是业务系统生成。5) 认证中心提供业务系统用于验证本次凭证相关信息的WebService接口地址当业务通过回调地址接收到SSO效劳端的凭证信息后,需要对凭证信息进展相关的验证操作,此时就需要调用SSO效劳端的WebService接口进展验证,此接口地址为:ser

10、verIp:port/service/SSOServicewsdl调用方法及说明:方法名称方法说明方法参数返回结果verificationToken用于验证凭证信息是否可用String,凭证唯一标识(唯一标识为凭证信息中的tokenMark值)Boolean,凭证是否可用6) 认证中心提供业务系统用于本地验签,解密数据相关方法相关的方法都位于sso_client.jar文件当中。方法名称方法说明方法参数返回结果verificationSign用于验证凭证信息是否由SSO效劳端所发送String,SSO效劳端返回的凭证信息Boolean,验签结果deAppToken用于解密效劳端所返回的凭证信息

11、中的数据String,SSO效劳端返回的凭证信息String,解密后的凭证信息7) 认证中心提供业务系统用于调用SSO验证效劳所需的配置文件业务系统调用SSO验证效劳所有所需的相关配置参数均存放于ssoClient.properties文件当中,文件当中主要包含以下几条属性信息:serviceUrl:业务系统用于调用SSO验资效劳的远程WebService地址;privateKey:业务系统用于验签,解密效劳端返回凭证信息的私钥信息。七、 业务系统的集成工作业务系统如要整合SSO用户验证系统,需要按以下步骤对现有业务系统进展改造,为了各业务系统更方便的整合SSO用户验证效劳,以下步骤中会出现局

12、部代码例如,其中的代码可能对局部业务系统并不适用,各业务系统也可以更具具体情况更改其中的代码。1、 将相关的JAR包、配置文件添加到工程当中: sso_client.jar(该JAR包用于调用远程SSO效劳端相关验证接口); WebService相关JAR包,由于SSO效劳端的WebService效劳采用*fire方式,所以业务系统需要自行添加*fire的相关JAR包文件; 将ssoClient.properties文件拷贝到业务系统的src目录下,并根据情况修改其中的参数。2、 集成判断用户在线状态功能: 可以通过Filter等技术方式,判断业务系统的用户是否已登录。如果未登录,调转到SSO

13、的认证地址serverIp:port/verificationAppappId=应用编号。3、 集成凭证接收、处理、页面重定向功能:在业务系统的web.*ml文件中增加以下内容: SSOLoginRedirect .webtec.servlet.SSOLoginRedirect SSOLoginServle .webtec.servlet.SSOLoginServlet SSOLoginServle /ssoLogin SSOLoginRedirect /ssoLoginRedirect 创立用于重定向到SSO验证效劳认证地址的Servlet,以下为例如代码:public class SSOLoginRedirect e*tends HttpServlet public void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletE*ception, IOE*ception / 由业务系统自己生成一个随机码String clientMark = UUID.rando

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 建筑/环境 > 施工组织

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号