- 浏览: 295702 次
- 性别:
- 来自: 上海
文章分类
- 全部博客 (155)
- Liferay portal研究 (23)
- spring研究 (7)
- Displaytag (2)
- Flash Builder (0)
- 搜索引擎 (12)
- 杂项 (17)
- SCM管理 (7)
- Jquery (5)
- Linux (7)
- Oracle (10)
- httpd集成 (3)
- Maven2 (5)
- 企业管理 (1)
- tomcat高级 (4)
- dos命令 (1)
- ldap (2)
- Java (8)
- webservice (1)
- jetty代码研究 (3)
- OpenCMS (1)
- JMX (2)
- hibernate (5)
- Ant (1)
- js tree (4)
- Quartz (0)
- CMS (1)
- springside (1)
- proxool (1)
- freemarker (1)
- Cookie (1)
- CAS SSO (4)
- mysql (1)
- php (1)
- js (2)
- Asset (1)
- openmeeting (1)
- h2数据库 (2)
- wcf vs java ws (1)
最新评论
-
22199143:
...
当在重启Tomcat容器时 Exception in Thread "HouseKeeper" java.lang.NullPointerException -
liuqq:
一直用Oracle开发,几乎没有接触过其他数据库。使用Mysq ...
The Nested Set Model -
yjsxxgm:
yjsxxgm 写道FFFFFFFFFFFFFFFWWW
java 访问wcf -
yjsxxgm:
FFFFFFFFFFFFFFF
java 访问wcf -
hjp222:
scanIntervalSeconds 是重新启动,并非真正的 ...
Jetty 热部署
SSO单点登录,基本上是做门户系统的必备工作之一。当我们用Liferay的时候,缺省已经集成了CAS、OpenID、LDAP、NTLM、OpenSSO等单点登录的解决方案。 但这些集成方案都有一个小问题,就是不能把用户管理跟Liferay自身的用户管理集成起来。也就是说,我们必须要另外有一个用户管理的解决方案。尽管使用LDAP可能是更流行的解决方案,但毕竟还是增大了我们的工作量,有没有就使用Liferay自身的用户管理的SSO集成方案? 本文就是试图来解决这个问题,主要基于以下几点来实现SSO。 使用Liferay的用户注册、管理作为统一用户的基础。 使用CAS作为单点登录的服务器端和客户端实现。 对Liferay做必要的定制,满足SSO客户端产品的要求。 下载的CAS Server,包括Liferay集成的CAS Server,都是只提供一个演示的登录验证,只要输入帐号和密码相同就可登录成功。 我们使用Liferay的身份认证,需要做的第一件事情就是定制这个登录实现。 在CAS中,我们新写一个Java文件,com.liferay.sso.cas.adaptors.LiferayAuthenticationHandler,继承AbstractUsernamePasswordAuthenticationHandler。 在这个类中,使用JDBC连接Liferay的数据库,实现帐号和密码的验证。其中,帐号使用Liferay中的screenName。 由于在Liferay中,不同的Company可能会有相同的screenName,因此这种实现方法会有一些限制。最简单的做法,就是Liferay中只配置一个Company。 修改CAS的配置文件WEB-INF/deployerConfigContext.xml,修改<property name="authenticationHandlers">的内容。我的代码为: 当然还需要一些配置数据库的代码,自行实现即可。 经过这两步,重新启动就可以用Liferay的帐号和密码进行认证了。 作为用户的集中管理,Liferay还应该提供给客户端应用,能够很方便的得到用户的详细信息,CAS本身是不解决这个问题的。 一个比较简单的做法,就是在Liferay中实现一个Servlet,根据用户screenName,得到用户的详细信息。数据格式,为了适应不同的客户端应用,可以采用XML进行编码。 CAS自己提供的Client,已经能满足用户认证的功能。我们需要进一步定制的,是解决Auto Login和新用户创建的问题。这两点,需要在每个集成CAS的客户端应用中实现。 Auto Login,可以借鉴Liferay自己的一些CasAutoLogin,根据已登录的Cas用户,初始化客户端应用所需要的一些Session信息。 CAS中还有一个重要的问题,就是当CAS的用户在客户端不存在的时候,怎么解决。还有一个更严重的问题,如果客户端已经有了用户,这时候怎么实现Liferay用户同本地用户的映射? 用户映射,根据不同的系统,或者不同的用户需求应该有不同的实现方案。 这是比较简单的做法,直接使用相同的用户名就行。当SSO的用户在本地应用中不存在的时候,可以有两种解决方法: 允许用户映射本地已经存在的一个用户:让用户输入一个帐号密码,验证其本地合法用户的身份,然后自动将本地用户名修改为SSO相同的用户名。如果在本地还没有账户,可以直接使用第二种方案创建新用户。 直接创建新的本地用户:调用Liferay的获取用户的接口,获取用户的详细信息,然后直接调用本地注册新用户的代码,创建一个本地新用户。 这两种情况下,下次用户登录时,直接根据相同用户名进行用户映射即可。 如果客户端应用不修改本地用户的用户名,可以添加代码,在本地实现一个用户的映射机制。比如将SSO的user1,映射为客户端的用户user2。 当然这种实现,也需要提供一个本地的用户验证机制,实现用户的正确映射。 考虑到有很多产品需要集成,如果每个产品都去实现用户映射,工作量比较大,可以考虑到Liferay中实现一个统一的映射机制。 这种实现,也需要提供一个本地的用户验证机制,实现用户的正确映射。 这时候,需要做的工作有几部分: 新建一个数据表,用以保存SSO用户和各个产品的用户之间的映射机制。 在Liferay中定制的获取用户信息的接口中,添加用户映射的信息。这样,SSO客户端读取用户信息时,能够直接读取到用户在本地的用户名。 Liferay中添加一个接口,由客户端调用,用于保存用户映射信息。基于Liferay的CAS SSO实现思路
CAS的定制
实现帐号密码验证的代码
修改CAS配置文件
Liferay的定制
Cas客户端的定制
Liferay用户同本地用户的映射问题
使用相同的用户名
客户端应用自己保存用户映射
在Liferay中添加用户映射的机制
发表评论
-
ogl的入门
2010-03-30 08:24 1416http://jxb8901.iteye.com/blog/2 ... -
jaas 入门
2010-03-04 17:10 1910本例是认证的实现,JAAS定义了可插拔的认证机制,使认证逻辑独 ... -
JAAS HelloWorld
2010-03-04 17:09 1264Examples: JAAS HelloWorld Thes ... -
liferay 权限
2010-01-04 13:49 1587liferay的权限很多资料说 ... -
liferay多数据源
2009-12-15 15:46 1786Configure MySQL Master/Slave ... -
杂项2
2009-11-18 21:44 920function <portlet:namespace ... -
Simple Apache CXF web service integration
2009-11-18 20:24 1199For those who wants to use the ... -
LiferayCounter机制
2009-10-24 14:08 1059public long increment(String na ... -
lifery 老的资源
2009-10-23 14:40 879http://docs.liferay.com/portal/ ... -
liferay portal 的开发目录结构
2009-10-17 11:59 1731portal-kenel.jar 不依赖任何非标准jar(只依 ... -
liferay 常用urls
2009-10-16 22:43 955http://blog.csdn.net/smilingleo ... -
liferay 调用webservice
2009-10-16 22:34 4548Liferay是基于SOA理念设计的,很容易通过Web Ser ... -
Database Sharding
2009-10-15 12:40 1591Database sharding is a way of s ... -
Liferay权限管理的讲解
2009-10-12 21:37 1542这篇文章讲解了liferay中使用的权限管理系统的内部细节,涉 ... -
ServiceContext Pattern
2009-10-12 21:30 1036The Service Context is an objec ... -
Liferay性能调优
2009-10-12 21:25 2206CONTRIBUTIONS WANTED Corné|Corn ... -
Liferay重要对象-Layout
2009-10-12 21:19 2227A layout is an instance of a si ... -
liferay常用配置
2009-10-12 20:47 1165在实际需求中,如果是做网站那我们有时候会有这样的需求,即希望用 ... -
liferay学习系列(3)
2009-10-11 20:16 1250在一个Portlet中链接到另一个Portlet 这个问题,应 ... -
liferay学习系列(2)
2009-10-07 20:31 6967想做个用户积分管理,类似于论坛积分的概念,首先在用户管理里面添 ...
相关推荐
在Liferay中实现SSO(Single Sign-On)单点登录功能,可以让用户在一个系统登录后,无需再次输入凭证就能访问其他关联系统,极大地提高了用户体验。其中,CAS(Central Authentication Service)是一个广泛应用的...
CAS(Central Authentication Service)则是一种单点登录(Single Sign-On,SSO)系统,用于集中处理应用程序的身份验证。将 Liferay 与 CAS 结合使用,可以实现 Liferay 门户的用户在多个关联应用之间共享认证信息...
本案例中,我们将探讨如何将Liferay 5.2.3与CAS(Central Authentication Service)配置为SSO系统。 Liferay是一款开源的企业级门户平台,它提供了一个灵活的框架来构建和管理Web应用程序。而CAS则是一个开源的身份...
这个压缩文件很可能是Liferay Portal中用于实现单点登录(Single Sign-On,SSO)功能的组件。Liferay是一个开源的企业级门户平台,广泛用于构建企业内部和对外的Web应用程序。 单点登录(SSO)是一种身份验证机制,...
此外,Liferay还支持SSO(Single Sign-On)和LDAP集成,以便于企业进行身份验证和权限管理。 在实际应用中,Liferay的自定义开发是必不可少的。开发者可以通过编写Java Portlets、JSR-286 Portlets或者Freemarker...
- 它支持 LDAP 和 SSO(单点登录),便于与企业现有身份验证系统集成。 7. **移动支持**: - Liferay 提供了移动友好的界面,同时也支持开发针对移动设备的 portlets。 - 通过 Liferay 移动 SDK,开发者可以构建...
本文对基于 LDAP 轻量目录服务、SSO 单点登录和 Liferay 框架的门户模型的架构和在信息及应用集成领域发挥的作用进行了研究和阐述,以高效的应用和信息集成和消除信息孤岛为目标,通过对该领域当前发展情况和存在问题...
实现这一目标通常需要配置Liferay以支持SSO协议(如SAML或OAuth),并与相应的SSO提供商进行对接。 ##### 4.5 用户布局初始化 用户布局初始化是指设置和配置Liferay门户的初始界面布局和用户界面元素。这可能包括...
9. **安全与身份验证**:Liferay的安全机制,如SAML SSO、OAuth认证,以及防止XSS、CSRF等攻击的方法。 10. **扩展与插件**:Liferay MarketPlace中有大量的预构建插件,学习如何安装和开发自己的插件,增强Liferay...
Liferay 支持多租户、单点登录(SSO)和复杂的用户权限管理。 2. **Central Authentication Service (CAS)**:CAS 是一个开放源代码的单点登录系统,设计用于为Web应用程序提供统一的认证服务。用户只需要在一个...
- **单点登录**: SSO集成和设置。 - **中央验证服务(CAS)**: CAS认证配置。 - **身份验证:NTLM**: NTLM认证配置。 - **身份验证:OpenID**: OpenID认证配置。 - **身份验证:OPENSSO**: OPENSSO认证配置。 -...
- **身份和访问管理**:通过LDAP、单点登录(SSO)等实现用户身份验证和授权。 - **工作流支持**:集成BPM引擎如Activiti,实现业务流程自动化。 3. **开发扩展** - **portlet开发**:开发者可以使用Java、...
- **cas**: 单点登录(Single Sign-On, SSO)的工程文件,用于实现用户在整个系统中的统一登录。 - **配置文件**: 如`liferay-portlet.xml`和`struts-config.xml`,这些文件用于定制Liferay的功能,如配置Portlet的...
此外,Liferay还具备单点登录(Single Sign-On,SSO)能力,进一步增强了用户体验。 ##### 3.2 Struts、Hibernate与Spring技术 在实现校园信息门户的过程中,Struts、Hibernate和Spring这三种技术扮演了重要角色。...
在IT领域,单点登录(Single Sign-On,简称SSO)是一种方便用户管理和身份验证的技术,它允许用户通过一次登录就能访问多个相互关联的应用系统,无需多次输入凭证。Liferay是一款流行的开源企业级门户平台,而CAS...
它还支持单点登录(SSO)、OpenID和OAuth等标准,确保数据的安全性和用户认证的有效性。 **总结** Liferay Portal 作为一个全面的门户解决方案,不仅具备强大的内容管理、社区构建和安全功能,还允许开发者深入...
2. **集成Liferay与CAS**:在Liferay中配置CAS客户端,使Liferay能够识别CAS服务器的认证响应,实现SSO登录。 3. **集成Alfresco与CAS**:同样地,Alfresco也需要配置成使用CAS进行认证,确保所有系统共享同一用户...