欢迎来到天天文库
浏览记录
ID:11751913
大小:124.50 KB
页数:10页
时间:2018-07-13
《weblogic平台的web sso(saml)解决方案 sso(single sign-on)即所谓 》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、WebLogic平台的WebSSO(SAML)解决方案 SSO(SingleSign-On)即所谓的单点登录。用户在一处登录后访问其他网站时不需要再次输入用户名和口令,即可完成身份验证。 文章《体验WebLogicServer8.1SP4新增功能之WebLogicSingleSign-On》(http://dev2dev.bea.com.cn/techdoc/200507499.html)中介绍了使用WLS8.1SP4版本中的SinglePassNegotiateIdentityAssertionProvider完成与Windows平台的S
2、SO。但有更多的人可能希望在不借助,或者不与Windows集成的情况下完成SingleSign-On。Kerberos当然可以是其中的一种解决办法,但是目前互联网上应用更多的是SAML,一个用于在网络实体间交换安全认证信息的基于XML的框架。 本文据此提出一种适用(针对)于WebLogicServer的,简单、可行的SSO解决方案。这个方案以集中统一的用户信息为基础,但不包括通常理解的权限管理,而仅仅提供一个身份验证的服务。因为一般情况下,一个企业内部的多个成熟系统通常分别有自己的已经比较完善的用户身份验证和权限管理功能。在这种情况下,为整合
3、多个业务系统而提供包括权限管理在内的多种安全服务,常常将问题复杂化(尽管SAML可以做到这一点)。 因此本文提出的方案将只解决用户的身份验证,即实现SSO的本义。在SSO帮助用户完成身份验证后,由各个业务系统本身的权限管理进行用户行为的进一步控制。这样不仅完成了用户帐号的集中管理(SAML可以完成不同系统间不同帐号的federated但不在本文讨论范围内),又不失原有系统灵活的权限控制。而且方案简单可行,不需要对原有应用做较大更改,适合快速解决SingleSign-On问题。 如果有更复杂的需求,完全可以在本文的基础上,参考Shibbole
4、th(http://shibboleth.internet2.edu/)项目以及SourceID(http://www.sourceid.org/index.html)的项目进行深入的研究和了解,以找出最适合自己的解决方案。名词SAML 本文将以SAML1.1实现SSO。SAML定义了一个用于在线商业系统间交换安全信息的基于XML的框架,它由OASIS(theOrganizationfortheAdvancementofStructuredInformationStandards)组织的SecurityServicesTechnicalCom
5、mittee(SSTC)开发。详情参考文章后面的参考资料部分。OpenSAML 一个开源的SAML1.1实现,本文使用opensaml1.1完成与SAML相关的逻辑处理。OpenSAML是Shibboleth项目的一部分。Shibboleth是一个针对SSO的开源项目。WebLogicServer 业界领先的J2EE应用服务器。本文的方案以WebLogicServer8.1SP4为基础。本文附带的Demo应用只能跑在WLS8.1SP4上,如果8.1SP3等版本需要适当改动。IdentityAssertionProvider Identit
6、yAssertionProvider是WebLogic7以后提供的众多Provider的一种,它其实就是一个AuthenticationProvider,只不过它不需要口令来完成用户的身份验证;如果在其他平台比如Tomcat上实现,也可以是一个普通的LoginModule,只需要通过CallbackHandler获取Token然后验证就可以了。 本文附带一个示例的IdentityAssertionProvider。JavaKeyStore 本文将附带一个自签名的javakeystore,它由JDK带的Keytool生成并签名。Service
7、Provide 服务提供者。就是我们一般理解的业务系统,它通过配置在其上的IdentityAssertionProvider完成对用户提交Token的校验,一般又称为SAMLAssertionConsumer。文章后面简称为SP。IdentityProvider 身份认证提供者。通过它对用户进行身份验证,以及生成SAMLAssertionToken,又称为SAMLAssertionProductor。本方案的实现中核心为一个Servlet。文章后面简称为IDP。UseCase 本文描述的方案实现了SAML1.1提供的POSTProfile
8、UserCase,并有适当修改。·用户打开浏览器访问ServiceProvider网站,访问受SAMLAuthFilter保护的页面·SP网站的SAM
此文档下载收益归作者所有