基于SOA服务模式的单点登录解决方案

本文档详述了使用SOA服务模式构建的单点登录信息管理平台,解决分布式系统的用户认证、权限验证、session管理和单点登出问题。通过认证服务和权限服务,实现了松耦合和高扩展性的解决方案。
摘要由CSDN通过智能技术生成

 

 

摘要

本文档通过一个基于标准的SOA服务的单点登录信息综合管理平台的开发,解决了分布式系统间的用户认证、权限验证、session超时、单点登出等问题,体现了SOA服务开发面向业务、粗粒度、松耦合方面的特点。

关键字

SSOSCA/SDO标准、SOA服务、单点登录、用户认证、权限验证、EOS6

定义、首字母缩写词及缩略语

SSOSingle Sign-On单点登录

EOSPrimeton EOSTM6.0,普元公司的面向构件的SOA平台

1.1    介绍

在分布式系统中如何实现单点登录和权限验证是很多企业在信息化建设过程中普遍都会遇到的问题。对这个问题,业界也提出了很多的解决方案,比如WebLogicWebSphere都提供了容器级的方案, Yale大学的CAS (Central Authentication Service)这样的开源的解决方案,还有很多企业开发了适用本企业的解决方案。但这些解决方案,都有一个共同弱点,就是用户认证和权限验证不能很好结合,基本上分开解决,单点登录只解决用户认证问题,权限验证都交给各个业务应用独立进行。

SOA成为大势所趋的今天,把用户认证和权限验证包装成SOA服务,在分布式系统中采用SOA服务来认证用户信息,验证用户权限的方案,很好的解决单点登录的认证和权限验证问题。而且基于SOA的单点登录在支持系统松耦合,系统扩展性,灵活性方面都有很大的好处。笔者有幸参加某银行的信息综合管理平台的建设,采用普元公司面向构件的SOA开发平台EOS,很方便的实现基于SCA/SDO标准的SOA服务,实现分布式系统的单点登录和权限验证。

1.2    系统框架

按照规划,信息综合管理平台将为所有的MIS业务应用提供用户认证、权限验证等服务。用户信息、权限信息集中在信息综合平台维护。信息综合管理平台和MIS业务应用可以自由地部署到一台或多台硬件设备,分别有自己独立的数据库。它们的部署图如下:

 

1:系统部署图

对用户而言,信息综合管理平台和业务应用是一个整体。信息综合管理系统需要支持用户单点登录,即用户在客户端要访问业务应用,需要先在信息综合管理系统进行用户登录,登录成功后,用户再访问业务应用时,业务应用判断客户是否有权限访问。如果有权限,则业务应用执行业务逻辑,返回结果给客户。

业务应用权限的信息在信息综合管理平台统一维护,这样有利于集中管理。业务应用能够根据信息综合平台的授权信息进行权限验证。

所以,我们需要在统一用户组织机构、权限管理的基础上,实现信息综合管理平台与各个MIS业务应用的单点登录机制和权限验证机制。

1.3    单点登录机制原理

单点登录主要解决三个问题:单点登录、session超时、单点登出。根据EOS平台的SOA开发方法,从业务问题出发,抽取成服务来解决问题。我们可以用用户认证服务提供单点登录,登出服务提供单点登出功能。用户认证服务由信息综合管理平台提供,登出服务由MIS业务应用提供。

在分布式应用单点登陆处理中,session超时处理都是比较困难的。采用认证服务来处理用户认证方式后,这个问题处理显得很简单。

session超时,如果是业务应用的session超时,则可以通过重新调用信息综合管理平台认证服务来验证用户信息;如果是信息综合管理平台session超时,则需要重新登录。在重新调用认证服务时,客户端通过cookie得到用户的唯一识别号和用户ID,传给认证服务,认证服务可以根据用户识别号是否有效以及和用户ID是否匹配,来决定验证是否通过。

1.3.1   用户认证过程

3 访问业务应用

2 用户认证

用户客户端

1 登陆

5 认证结果返回

</
  • 0
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值