CAS单点登录之服务端部署
程序员文章站
2022-05-05 09:59:25
...
一、CAS服务端搭建
1.1 CAS支持Http登录配置
CAS默认是要https的链接才能登录的,不过学习的话是可以先去掉https限制,本博客介绍的是基于Cas4.2.7的,之前改过4.0的,详情见https://blog.csdn.net/u014427391/article/details/82083995
Cas4.2.7和4.0的修改是不一样的,Cas4.2.7版本需要自己编译,是基于Gradle的,不是基于Maven的,觉得麻烦可以下载4.0,因为4.0版本有提供war包,不需要自己编译,下面介绍一下4.2.7版本,怎么支持http登录
需要修改cas4.2.7的cas-server-webapp/WEB-INF/cas.properties,全都改为非安全的
tgc.secure=false
warn.cookie.secure=false
cas-server-webapp/resources/service/HTTPSandIMAPS-10000001.json原来的
"serviceId" : "^(https|imaps)://.*"
加上http
"serviceId" : "^(https|imaps|http)://.*"
注释cas-server-webapp/WEB-INF/view/jsp/default/ui/casLoginView.jsp页面中校验是否是HTTPS协议的标签块
<c:if test="${not pageContext.request.secure}">
<div id="msg" class="errors">
<h2><spring:message code="screen.nonsecure.title" /></h2>
<p><spring:message code="screen.nonsecure.message" /></p>
</div>
</c:if>
然后登录就没非安全提示了
1.2 CAS服务端部署运行
然后将war包丢在Tomcat的webapp里,部署启动,默认账号密码casuser/Mellon,cas4.2.7的账号密码是写在cas.properties里的,这个和4.0的不一样
accept.authn.users=casuser::Mellon
登录成功,当然在项目中,肯定不能这样做,这个需要我们配置jdbc或者加上权限校验等等
单点登出,链接是http://127.0.0.1:8080/cas/logout
1.3 支持中文登录界面
需要修改配置,找到WEB-INF下面的cas.properties修改
##
# CAS Internationalization
#
locale.default=zh_CN
locale.param.name=locale
message.bundle.encoding=UTF-8
message.bundle.cacheseconds=180
message.bundle.fallback.systemlocale=false
message.bundle.usecode.message=true
message.bundle.basenames=classpath:custom_messages,classpath:messages