什么是maven的overlay?
overlay可以把多个项目war合并成为一个项目,并且如果项目存在同名文件,那么主项目中的文件将覆盖掉其他项目的同名文件。cas 提供了
cas-overlay-template,我们可以直接下载下来在上面修改使用。
下载cas-overlay-template-4.2
导入eclipse并打包
导入后修改propertyFileConfigurer.xml文件
<util:properties id="casProperties" location="file:D:\cas\cas-overlay-template-4.2\etc\cas.properties" />
构建war包
项目上点击右键 ,Run As- - > Maven Install,会生成一个cas.war包
直接把cas.war包放到tomcat webapps然后启动tomcat 即可
访问
http://localhost:8080/cas,我们发现提示
Non-secure Connection
You are currently accessing CAS over a non-secure connection. Single Sign On WILL NOT WORK. In order to have single sign on work, you MUST log in over HTTPS.
(
非安全连接
您正在通过非安全连接访问CAS。单点登录将不会工作。为了正常使用,您必须通过HTTPS登录。
)
配置https
生成服务端秘钥库
keytool -genkey -keystore "D:\cas\4.2\tlk_tomcat.keystore" -alias tlkTomcat -keyalg RSA
密钥库口令和密钥密码我设置的tlktest,一会tomcat server.xml配置需要使用
在tomcat中导入该秘钥库
修改tomcat server.xml
找到AprLifecycleListener 这个监听类的配置,将SSLEngine修改为on
将AJP/1.3协议关闭掉(也就是直接注释掉)
修改web监听端口相关配置:
<Connector port="8090" protocol="org.apache.coyote.http11.Http11Protocol" connectionTimeout="20000" SSLEnabled="true" maxThreads="150"
scheme="https" secure="true" clientAuth="false" sslProtocol="TLS"
keystoreFile="D:\\cas\\4.2\\tomcat.keystore" keystorePass="hellotlk" />
说明: 其实https访问的话,默认端口是443,然而修改成其他端口号也是可以的,这里修改为了8090
修改完后重新启动tomcat
访问:https://localhost:8090/cas/ 一定要加上https
结果如下,输入用户名casuser密码Mellon 登录成功