Liferay7.0与cas单点登录配置

1、简介
    Liferay7.0支持多种登录方式,包括:常规的、opensso、cas、ntlm、ldap、openid、Facebook、Google等。
其中,
(1) 常规:则是默认Liferay的用户名密码登录,但是用户可以选择“邮箱、屏幕名、用户账号”来作为登录名,如图:
注意,这里的用户账号是用户的创建是的id。

 

(2)openSSO: 曾经Sun的一款开源产品,从很少的那一点点中文资料上来看,这个能实现我需要的那种SSO模式。从SUN被Oracle收购之后,Oracle便关闭了OpenSSO这个项目,现在在网上下不到OpenSSO的安装文件。而且以前的那些在SUN发布的很多相关的帮助文档,大多数链接都失效了,全都指向了Oracle的同一个页面,找不到文档中对应的安装文件。
(3) cas: 是 Yale 大学发起的一个开源项目,据统计,大概每 10 个采用开源构建 Web SSO 的 Java 项目,就有 8 个使用 CAS 。这些统计可能言过其实,但有一点可以肯定的是, CAS 是最简单实效,而且足够安全的 SSO 选择,旨在为 Web 应用系统提供一种可靠的单点登录方法,CAS 在 2004 年 12 月正式成为 JA-SIG 的一个项目。CAS具有以下特点: 
a. 开源的企业级单点登录解决方案。
b. CAS Server 为需要独立部署的 Web 应用。
c. CAS Client 支持非常多的客户端(这里指单点登录系统中的各个 Web 应用),包括Java, .Net, PHP, Perl, Apache, uPortal, Ruby 等。
(4) ntlm: 早期SMB协议在网络上传输明文口令。后来出现 LAN Manager Challenge/Response 验证机制,简称LM,它是如此简单以至很容易就被破解。微软提出了WindowsNT挑战/响应验证机制,称之为NTLM。现在已经有了更新的NTLMv2以及Kerberos验证体系。NTLM是windows早期安全协议,因向后兼容性而保留下来。NTLM是NT LAN Manager的缩写,即NT LAN管理器。
(5)ldap: LDAP是轻量目录访问协议,英文全称是Lightweight Directory Access Protocol,一般都简称为LDAP。它是基于X.500标准的,但是简单多了并且可以根据需要定制。与X.500不同,LDAP支持TCP/IP,这对访问Internet是必须的。LDAP的核心规范在RFC中都有定义,所有与LDAP相关的RFC都可以在LDAPman RFC网页中找到。
(6)openid: OpenID 是一个以用户为中心的数字身份识别框架,它具有开放、分散性。OpenID 的创建基于这样一个概念:我们可以通过 URI (又叫 URL 或网站地址)来认证一个网站的唯一身份,同理,我们也可以通过这种方式来作为用户的身份认证
2、cas单点登录的配置
    配置步骤如下:
(1)使用管理员账号登录Liferay
(2)点击“控制面板”-》“配置”-》“实体设置(instance settings)”,打开Liferay的认证配置界面,如下图:
 
(3)点击“cas”选项,配置相应的配置,如下图:
 

 

(4)点击“测试cas配置”按钮,如果各项测试都通过,则表示配置成功,如下图:
 

 

(5)由于cas需要依托用户,可以配置从ldap中导入,勾选“从ldap中导入”,如下图:

 

(6)配置ldap,切换“ldap”选项,勾选“已启用、必需的”选项,如下图:

 

(7)点击“添加”按钮,创建ldap服务器的配置,如下图:
 

 

(8)配置ldap服务器的连接,点击“测试ldap连接”,查看是否连接成功,如下图:

 

(9)配置用户属性,这里需要注意认证过滤器,图中的loginName为ldap中用户的登录名,@screen_name@为Liferay中的登录名,这里也可以使用“邮箱、公司编码、用户id等”进行自行配置,如下图:

 

具体用户的属性配置如下:
 

 

 
(10)点击“测试ldap用户”按钮,查看配置结果是否每个属性都对应正确,如下图:
 

 

(11)用户组配置如下:
 

 

(12)点击“测试ldap群组”,查看配置是否正确,如下图:
 

 

(13)导出配置,用户在Liferay中修改了对应的用户或用户组时,导出到ldap服务器中(前提是启用了导出功能),如下图:
 

 

(14)启用导入功能,如下图:
 

 

(15)注意:需要值得注意的是,由于在启用了ldap的导入和认证,且在配置用户认证过滤器,本例中使用了“屏幕名”登录,如下图:

 

所以需要在“常规的”认证中选取对应的认证方式,这里我选择了“通过屏幕名称”,如下图:
 

 

 
到这里,整个单点登录配置完成,可以尝试登录了。
posted @ 2018-02-23 12:48  杜子腾'blog  阅读(1123)  评论(0编辑  收藏  举报