JBoss下的单点登陆(SSO)技术实现分析(1)

导读:
  本文介绍了单点登陆(SSO, Single Sign On)的实现原理,详细地解释了单点登陆的实现原理以及实现过程中的关键点和相关选项的含义,并且通过Josso与JBoss服务器的集成,简要介绍了在JBoss环境中单点登陆的实施。
  随着互联网的不断发展,各种网络化应用服务的不断普及,在大中型企业中,用户可能每天需要登录到许多不同的信息应用系统,如协同办公系统、邮件系统、文件关系系统、各种网络化的应用服务等。而每个系统都要求拥护遵循它们所定义的一套安全策略,比如要求输入用户名和密码。随着用户所拥有的服务的不断增多,用户登陆所带来的出错可能性便会随之增加,信息受到非法截获和破坏的可能性也会增大,系统的安全性就会相应降低。同时对于系统管理员来说他除了要管理用户的用户名和密码之外,还需要对不同的用户进行相应安全策略的设置。这样就势必造成了系统和安全管理资源的开销,降低了生产效率,同时还增加了企业IT部门的管理成本。为了解决以上的问题,现在很多企业在进行信息化实施的过程中引入了单点登陆,就是先通过一个应用程序的安全验证后,再访问其他应用中的受保护资源时,不再需要重新登录验证。当然,要求该用户使用的用户名和口令在访问的应用中一致,且拥有足够权限。下面我们将通过Josso与JBoss的集成的单点登陆(SSO)的实例,对单点登陆(SSO)的原理及其在JBoss环境下的技术实现进行更进一步的分析。
  
   1. 什么是单点登陆(SSO)
  单点登录(SSO,Single Sign On)是指在分布式环境下,整个系统只有一个可以登录进入的点,它对所有的请求(Request)都是通用的。单点登录可以保证用户能够访问到可以访问的资源,如果有一个未被授权的请求要求访问被保护的资源,这个请求将自动被导向到相应的验证点进行登录验证。
   2. 单点登录(SSO)的实现原理
  (1) 登陆点。理想的情况是用户通过任何应用系统都能进行登陆,而且效果一样。这种单一的登陆点在整个系统的设计中是唯一认证用户的地方,由登陆点将相应的用户信息传递给应用系统,应用系统利用这些信息来进行用户的验证。
  (2) 应用系统的单点登录(SSO)集成。并不是任何系统都能够使用SSO,只有那些符合SSO规范,使用SSO API的应用系统才具有SSO的功能。简单地说就是要修改已有的应用系统,屏蔽已有的应用系统的用户认证模块,使用系统提供的SSO API来验证用户,以及对用户的操作进行授权。
  (3) 统一的认证,权限信息库。通常SSO要求有统一的认证,权限存放库。但现实中,有的系统无法使用外部的认证,授权信息库,所以就需要在应用系统和SSO认证系统之间进行认证,同时进行授权信息的数据同步。
  实现描述:在用户成功通过SSO认证系统认证之后,系统提供的映射授予权限来为用户登录到其有权可以使用的应用系统。系统提供的映射取消用户权限来实现用户的注销功能。 进入讨论组讨论。

你可能感兴趣的:(应用服务器,jboss,网络应用,SSO,企业应用)