如何在liferay5.1.2中配置CAS
前言
Liferay5.1.2中直接集成了访问CAS服务器的功能。所以准备好一个CAS服务器就搞定了。
1. 在Liferay5.1.2中开启CAS认证功能
打开工程的protal.properties文件,修改以下几项。
cas.auth.enabled=true //打开CAS功能
cas.login.url=https://localhost:443/cas-web/login //设置CAS服务器登录的具体路径
cas.logout.url=https://localhost:443/cas-web/logout //设置CAS服务器登出的具体路径
cas.server.name=localhost //设置Liferay的服务器地址
cas.validate.url=https://localhost:443/cas-web/proxyValidate //设置CAS服务器校验代理路径
2. 在Liferay5.1.2 web.xml文件中设置CAS过滤器
<!—过滤器 --!> <filter> <filter-name>SSO CAS Filter</filter-name> <filter-class>com.liferay.portal.servlet.filters.sso.cas.CASFilter</filter-class> <init-param> <param-name>logout_url</param-name> <param-value>https://localhost:443/cas-web/logout</param-value> </init-param> <init-param> <param-name>edu.yale.its.tp.cas.client.filter.loginUrl</param-name> <param-value>https://localhost:443/cas-web/login</param-value> </init-param> <init-param> <param-name>edu.yale.its.tp.cas.client.filter.validateUrl</param-name> <param-value>https://localhost:443/cas-web/proxyValidate</param-value> </init-param> <init-param> <param-name>edu.yale.its.tp.cas.client.filter.serviceUrl</param-name> <param-value>http://localhost/c/portal/login</param-value> </init-param> </filter> <!—过滤器映射 --!> <filter-mapping> <filter-name>SSO CAS Filter</filter-name> <url-pattern>/c/portal/login</url-pattern> </filter-mapping> <filter-mapping> <filter-name>SSO CAS Filter</filter-name> <url-pattern>/c/portal/logout</url-pattern> </filter-mapping> |
在web.xml中增加如上所示的过滤器和映射。(Liferay5.1.2的web.xml文件中已存在此过滤器,只要将其打开,并修改相应的参数。)
3. 配置CAS服务
CAS服务的配置方式请参考其它文档。这里主要讲述对于CeipLoginHandler对象的修改。首先在Ceip_user表中增加一个screenname字段。因为是这liferay默认的对比名称。然后将screenname做为userName保存到credentials对象中。