JOSSO是一款开源的SSO实现。
本文将介绍JOSSO的发展版本变化,基本概念和用法。
1.JOSSO的版本
与Struts类似,JOSSO也分为JOSSO1和JOSSO2两个系列的版本。
JOSSO1适合于定制认证和授权策略的应用场景。JOSSO2 提供一站式打包安装,适合于标准的应用场景。
JOSSO1的版本演变:
JOSSO1版本 | 发布时间 |
JOSSO 1.8.10 | Oct 27, 2015 |
JOSSO 1.8.9 | Apr 30, 2014 |
JOSSO 1.8.8 | Sep 20, 2013 |
JOSSO 1.8.7 | Aug 31, 2012 |
JOSSO 1.8.6 | Mar 30, 2012 |
JOSSO 1.8.5 | Jul 18, 2011 |
JOSSO 1.8.4 | May 03, 2011 |
JOSSO 1.8.3 | Oct 14, 2010 |
JOSSO 1.8.2 | Jul 27, 2010 |
JOSSO 1.8.1 | Oct 13, 2009 |
JOSSO 1.8 | Jan 13, 2009 |
JOSSO 1.7 | Mar 19, 2008 |
JOSSO 1.6 | Nov 15, 2007 |
JOSSO 1.5 | Apr 12, 2007 |
JOSSO 1.4 | Jun 09, 2006 |
JOSSO 1.3 | Jun 13, 2005 |
JOSSO 1.2.1 | Apr 21, 2005 |
JOSSO2的版本演变:
JOSSO2 版本 | 发布时间 | 说明 |
JOSSO 2.4.1 | Oct 28, 2015 | 兼容Java 8 支持IIS 8, Oracle Weblogic 11 and 12 |
JOSSO 2.4 | May 26, 2014 | 兼容Java 7 支持Microsoft Sharepoint 2013, IBM Domino, Microsoft IIS 7 and 7.5, Apache Tomcat 8, Google App Engine (GAE), Spring Security 3 |
JOSSO 2.3.1 | Sep 18, 2013 | 支持JBoss AS 7, JBoss Enterprise Portal Platform 5, GateIn Portal 2.1, Jetty 6 |
JOSSO 2.3 | Sep 03, 2012 |
|
JOSSO 2.2.2 | Aug 31, 2012 |
|
JOSSO 2.2.1 | Nov 17, 2011 |
|
JOSSO 2.2 | Jul 21, 2011 |
|
JOSSO 2.1 | May 02, 2011 |
|
JOSSO 2.0.2 | Nov 23, 2010 |
|
JOSSO 2.0 | Oct 20, 2010 |
|
2.JOSSO的基本概念
JOSSO Gateway需要与应用服务器自身的身份验证系统集成。
JOSSO Gateway本身是以josso.war(在JOSSO 1.8.10中是josso-gateway-web-1.8.10.war)的形式发布的(位于%JOSSO%/dist/gateway/app/),如果要定制LOGO等,建议通过Maven从源代码构建。
下面以JOSSO 1.8.10与WildFly AS 10为例介绍集成过程。1)首先将josso-gateway-web-1.8.10.war部署到%JBOSS_HOME%/standalone/deployments目录下
2)其次,将JOSSO Gateway的配置文件(位于%JOSSO%/dist/gateway/config/)复制到%JBOSS_HOME%/standalone/configuration/目录下。
3)然后,创建%JBOSS_HOME%/standalone/configuration/josso-auth.properties文件如下,应用保持AES键的Base64编码(用于RememberMe功能):
#JOSSO 'Remember Me' authentication schemem properties.
#Thu Apr 14 22:48:33 CST 2016
josso.rememberme.authscheme.key=SXhL+cFNzrdDWupa/7jWlQ\=\=
4)在%JBOSS_HOME%/standalone/configuration/josso-gateway-config.xml文件中,配置定义用户信息的资源库,JOSSO支持多种资源库如下:
只要将用到的资源库重命名为josso-gateway-stores.xml即可。
5)必要情况下,在%JBOSS_HOME%/standalone/configuration/josso-gateway-auth.xml文件中配置新的认证机制,默认JOSSO支持如下:
4.JOSSO Agent与应用的配置
这部分将后续文章中针对具体应用详细介绍,此处只要知道主要是通过JOSSO Agent的配置文件josso-agent-config.xml进行。
主要是配置用户的登录请求重定向到JOSSO Gateway的URL,JOSSO Agent与JOSSO Gateway的通信通道和被代理的应用,示例如下:
<!-- Gateway LOGIN and LOGOUT URLs -->
<gatewayLoginUrl>http://localhost:8080/josso/signon/login.do</gatewayLoginUrl>
<gatewayLogoutUrl>http://localhost:8080/josso/signon/logout.do</gatewayLogoutUrl>
...
<!-- Gateway service locator -->
<gatewayServiceLocator>
<protocol:ws-service-locator endpoint="localhost:8080"/>
</gatewayServiceLocator>
...
<configuration>
<agent:agent-configuration>
<agent:partner-apps>
<agent:partner-app id="MySimplePartnerApp" context="/ntc-device"/>
<agent:partner-app id="MyPartnerApp1" context="/ntc-home" />
</agent:partner-apps>
</agent:agent-configuration>
</configuration>
参考文献:
官网 http://www.josso.org/confluence/display/JOSSO1/JOSSO+-+Java+Open+Single+Sign-On+Project+Home
下载 https://sourceforge.net/projects/josso/files/