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的导入和认证,且在配置用户认证过滤器,本例中使用了“屏幕名”登录,如下图:

,

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

 

 
到这里,整个单点登录配置完成,可以尝试登录了。

Liferay7.0与cas单点登录配置的更多相关文章

  1. CAS单点登录配置[1]:准备工作

    关于CAS是什么这里就不在赘述,网友将它比喻成旅游景点的套票,买了一个套票就可以观看所有景点,不需要一个景点买一次票...我们重点介绍CAS单点登录的配置. 工具/原料 1.配置好JDK环境,否则不方 ...

  2. cas 单点登录配置

    服务端配置 cas是个好东西,很灵活很好用,但是配置起来很麻烦 cas官方网站 http://downloads.jasig.org/ 下载服务端 CAS Server 3.3.3 Final 1.将 ...

  3. CAS单点登录配置[3]:服务器端配置

    在准备工作,证书生成等工作完成后,本篇介绍服务器端的配置. JDK配置 1 我们将生成的cacerts文件分别拷贝到JDK目录下的jre/lib/security目录下及JRE对应的目录中,如果之前存 ...

  4. CAS单点登录配置[5]:测试与总结

    终于要结束了... 测试 1 我们同时打开Tomcat6和Tomcat7,如果报错请修改. 打 开浏览器,输入http://fighting.com/Client1,进入CAS登录界面,这里我们先输入 ...

  5. CAS单点登录配置[4]:客户端配置

    本节介绍一下客户端如何配置,客户端配置没有服务端那么复杂... 客户端Tomcat配置 1 首先确认证书文件已经拷贝到Tomcat的目录下,我们新建两个客户端的web应用,分别命名为Client1,C ...

  6. Cas单点登录配置数据查询用户

    <?xml version="1.0" encoding="UTF-8"?> <beans xmlns="http://www.sp ...

  7. CAS单点登录配置[2]:证书生成

    上一篇介绍了准备工作,本片将介绍如何生成证书. 服务器端证书 1 我们在F盘下建立一个cas文件夹,在此文件夹中生成证书文件,打开命令窗口,进入此目录下,如图: 2 生成服务器端证书, 此命令用于在当 ...

  8. CAS单点登录配置

    见http://download.csdn.net/detail/u010786672/6942715下载.

  9. CAS单点登录系列之极速入门于实战教程(4.2.7)

    @ 目录 一. SSO简介 1.1 单点登录定义 1.2 单点登录角色 1.3 单点登录分类 二. CAS简介 2.1 CAS简单定义 2.2 CAS体系结构 2.3 CAS原理 三.CAS服务端搭建 ...

随机推荐

  1. 20155205 2016-2017-2 《Java程序设计》第10周学习总结

    20155205 2016-2017-2 <Java程序设计>第10周学习总结 教材学习内容总结 计算机网络基础 什么是网络编程 网络编程就是在两个或两个以上的设备(例如计算机)之间传输数 ...

  2. Write Markdown Syntax Online Document with Sphinx and Pandoc

    There is no doubt that we have to write doc while we are developing software. But How do you write d ...

  3. Java中方法重写和方法重载

     首先方法重写和方法重载是建立在Java的面向对象的继承和多态的特性基础上而出现的.至于面向对象的继承和多态的特性我就不在这里多说了.继承是指在一个父类的基础再创建一个子类,这样子类就拥有了父类的非私 ...

  4. JavaScript常用事件参考

      onabort 图像加载被中断 onblur 元素失去焦点 onchange 用户改变域的内容 onclick 鼠标点击某个对象 ondblclick 鼠标双击某个对象 onerror 当加载文档 ...

  5. Android viewpager + 可缩放的imageview

    http://files.cnblogs.com/files/liaolandemengxiang/PhotoWallFallsDemo.rar http://files.cnblogs.com/fi ...

  6. U盘或者移动银盘退出时一直显示占用中问题解决--最粗暴解决方式

    问题描述: ---------------------------弹出 USB 大容量存储设备 时出问题---------------------------Windows 无法停用“通用卷”设备,原 ...

  7. hdu 2688

    这题,因为要统计之前有多少个数比当前的数小,所以我用的树状数组 基本代码就是这样,还是比较好想的,只不过我没想出来罢了 #include <iostream> #include <c ...

  8. codeforces 877e

    E. Danil and a Part-time Job time limit per test 2 seconds memory limit per test 256 megabytes input ...

  9. Codeforces Round #265 (Div. 2) E. Substitutes in Number

    http://codeforces.com/contest/465/problem/E 给定一个字符串,以及n个变换操作,将一个数字变成一个字符串,可能为空串,然后最后将字符串当成一个数,取模1e9+ ...

  10. Java中sleep()与wait()区别(涉及类锁相关概念)

    在区别之前,我们首先先了解一下关于对象锁,类锁的相关概念(当时查阅的详细地址:http://www.importnew.com/20444.html,该作者对类锁和对象锁进行了详细的举例分析) 对象锁 ...