您的位置:首页 > Web前端

Liferay 5.1.1 安装与整合CAS

2008-08-20 16:39 357 查看
P { margin-bottom: 0.08in }
H2 { margin-bottom: 0.08in }
H2.western { font-family: "Nimbus Sans L", sans-serif; font-size: 14pt; font-style: italic }
H2.cjk { font-size: 14pt; font-style: italic }
H2.ctl { font-size: 14pt; font-style: italic }
H3 { margin-bottom: 0.08in }
H3.western { font-family: "Nimbus Sans L", sans-serif }
H4 { margin-bottom: 0.08in }
H4.western { font-family: "Nimbus Sans L", sans-serif; font-size: 11pt; font-style: italic }
H4.cjk { font-size: 11pt; font-style: italic }
H4.ctl { font-size: 11pt; font-style: italic }
H5 { margin-bottom: 0.08in }
H5.western { font-family: "Nimbus Sans L", sans-serif; font-size: 10pt; font-style: italic }
H5.cjk { font-size: 10pt; font-style: italic }
H5.ctl { font-size: 10pt; font-style: italic }

Liferay
5.1.1 安装与整合CAS

转载请保留作者信息:

作者:88250

Blog:http:/blog.csdn.net/DL88250

MSN & Gmail &
QQ:DL88250@gmail.com

目录

摘要 1

环境 1

下载Liferay
5.1.1 2


配置数据库 2

配置数据源 2

生成数据库 2

创建数据库用户 2

添加数据库连接驱动 2

测试登录 3

整合CAS 3

配置CAS
Server 3

启用Tomcat
SSL 3

配置CAS
Client 3

使用JDK工具keytool生成SSL证书 3

测试SSL连接 4

配置CAS 4

CAS登录验证 5

定制CAS登录验证 5

总结 5

摘要

Liferay目前很强大的一个Portal
Application &
Framework,它实现了很多规范,其设计、功能与用户体验不是其他门户系统可以相比的。最近,Liferay刚刚拿到了2008开源门户大奖,而且Sun公司加入也到了Liferay社区中,参与一些Portlet的开发。可以看出,其前景很好。不过,由于官方的文档还没有出,而且Liferay
5.1.x与4.x在配置上有很大差别,在此,我将我的安装与配置经验分享给大家:)

环境

MySQL5.0.5

JRE 1.6.0.7

Liferay 5.1.1 Bundled with Tomcat

Ubuntu 8.04

下载Liferay
5.1.1

到官方下载主页:
http://www.liferay.com/web/guest/downloads/portal
下载 Bundled
with Tomcat 6.0 并解压到你指定的位置(即安装目录
$LIFERAY_HOME)。

配置数据库

配置数据源
编辑
$LIFERAY_HOME/conf/Catalina/localhost/ROOT.xml 注释掉
Hypersonic段,反注释
MySQL段,修改你的 MySQL
配置(红色部分可能需要修改,本文均如此),如下:

<!--
Hypersonic -->

<!--

<Resource

name="jdbc/LiferayPool"

auth="Container"

type="javax.sql.DataSource"

driverClassName="org.hsqldb.jdbcDriver"

url="jdbc:hsqldb:lportal"

username="sa"

password=""

maxActive="20"

/>

-->

<!--
MySQL -->

<Resource

name="jdbc/LiferayPool"

auth="Container"

type="javax.sql.DataSource"

driverClassName="com.mysql.jdbc.Driver"

url="jdbc:mysql://localhost:3306/lportal?

useUnicode=true&characterEncoding=UTF-8&useFastDateParsing=false"

username="lportal"

password="dl88250"

maxActive="20"

/>

生成数据库

http://www.liferay.com/web/guest/downloads/additional
下载数据库生成脚本 Liferay
Portal 5.1.1 SQL Scripts
解压后在目录create下找到create-mysql.sql,将该脚本导入MySQL,创建Liferay数据库(使用默认恢复,也就是恢复sample
data那种)。

创建数据库用户
创建用户
lportal(在2.a配置中提到的),并将schema
lportal的所有操作授权给该用户。

添加数据库连接驱动
下载 MySQL
connector jar,
http://dev.mysql.com/get/Downloads/Connector-J/mysql-connector-java-5.1.6.tar.gz/from/pick#mirrors
并将该jar放到
$LIFERAY_HOME/lib 下。

测试登录
测试一下,使用test@liferay.com,密码test登录Liferay
Portal。

整合CAS

理论上,CAS
Server应该部署在单独的验证服务器上,不过,由于环境所限,就将CAS
Server部署在Liferay的Tomcat下了。

配置CAS Server
这里下载,将这个war拷贝到
$HOME下liferay/deploy(这个目录启动Liferay
Portal后将自动生成,是liferay
plugins的热部署目录),这样Liferay将自动部署cas-server。在
$LIFERAY_HOME/webapps/ 下看到cas-web,说明部署成功。

启用Tomcat SSL
编辑
$LIFERAY_HOME/conf/server.xml,反注释SSL配置段,如下:

<!--
Define a SSL HTTP/1.1 Connector on port 8443

This connector uses the JSSE configuration, when using APR, the

connector should be using the OpenSSL style configuration

described in the APR documentation -->

<Connector
port="8443" protocol="HTTP/1.1" SSLEnabled="true"

maxThreads="150" scheme="https"
secure="true"

clientAuth="false" sslProtocol="TLS" />

配置CAS Client
这里下载CAS客户端(这个客户端用的是耶鲁大学的实现),解压后找到casclient.jar并放到
$LIFERAY_HOME/webapps/ROOT/WEB-INFO/lib/ 下。(貌似已经有这个jar了- -!)

使用JDK工具keytool生成SSL证书
在任何目录(我在HOME)下使用命令:

keytool -genkey -alias tomcat -keypass changeit -keyalg RSA

将生成.keystore在$HOME下。
注意:在输入What is your first and last name? 时请使用你的hostname(参考/etc/hosts文件),不要用IP。
整个过程如下:

daniel@daniel-desktop:~$ keytool -genkey -alias tomcat -keypass changeit -keyalg RSA
Enter keystore password:
Re-enter new password:
What is your first and last name?
[Unknown]:  daniel-desktop
What is the name of your organizational unit?
[Unknown]:  SEE
What is the name of your organization?
[Unknown]:  Jinfonet
What is the name of your City or Locality?
[Unknown]:  Kunming
What is the name of your State or Province?
[Unknown]:  Yunnan
What is the two-letter country code for this unit?
[Unknown]:  CN
Is CN=daniel-desktop, OU=SEE, O=Jinfonet, L=Kunming, ST=Yunnan, C=CN correct?
[no]:  yes

从keystore中导出证书并将此证书导入到JRE中:

daniel@daniel-desktop:~$ keytool -export -alias tomcat -keypass changeit -file server.cert
daniel@daniel-desktop:~$ keytool -import -alias tomcat -file server.cert -keypass changeit -keystore $JAVA_HOME/jre/lib/security/cacerts


测试SSL连接
访问https://daniel-desktop:8443
(由于证书不是权威机构颁发,所以添加一下exception),这时页面将被自动跳转到https://daniel-desktop:8443/web/guest/home,也就是我们Liferay
Portal的首页。只是用的协议是https而已。这样,说明了SSL启用成功!

配置CAS
使用test@liferay.com帐号登录Portal,并使用Enterprise
Admin Portlet设置CAS:

Enterprise Admin →
Settings →
Authentication →
CAS,启用CAS,如下:

记得点Save。。。。

注销当前帐户(test@liferay.com),可以看到logout
successful的提示。再次使用
http://daniel-desktop:8080
访问并登录时将跳转到CAS验证页面,说明了CAS配置成功。

CAS登录验证
在CAS的验证页面,使用test作为帐号,test作为密码(只要帐号==密码就可以了),测试一下能不能通过CAS的验证。结果应该是可以通过,但是跳转也没无任何显示。因为我们并没有真正通过我们的Portal
user的帐号验证。

关于CAS与Liferay
的整合细节请参考这里

关于CAS与Tomcat下的SSO请参考这里

定制CAS登录验证
[本部分没有完成,请大家关注本文作者Blog:
http://blog.csdn.net/DL88250
以获取最新参考: )]

参考这里:http://blog.csdn.net/DL88250/archive/2008/08/26/2831855.aspx

总结

经过这一番“折腾”,我们的Portal终于可以用了。本次,我们学会了Liferay
Portal的基本配置,还有整合CAS。在此之后,还有很多需要改进的地方。例如界面定制、用户权限管理、扩展Portlet
plugins/environment应用等。在以后的文章中我将把我对Liferay的使用、配置、开发经验分享给大家,请大家积极给予关注哦
: )
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: