H__D  

CAS 介绍

  CAS(Central Authentication Service)是一个开源的单点登录(SSO)解决方案,旨在为多个应用程序提供统一的身份验证服务。它允许用户在一个地方登录,并在多个应用程序之间共享会话信息,从而简化用户的登录体验和提高安全性。

  官网:https://github.com/apereo/cas

CAS 服务的主要特性

  1. 单点登录(SSO): 用户只需登录一次,即可访问多个应用程序。
  2. 多种认证方式: 支持用户名/密码、LDAP、数据库、OAuth、SAML 等多种认证方式。
  3. 可扩展性: 提供丰富的扩展点,可以根据需要定制。
  4. 安全性: 提供多种安全机制,如双因素认证、票据加密等。
  5. 开源社区支持: 由 Apereo 基金会维护,拥有活跃的开源社区。

安装环境准备

  1、准备Java的JDK,本例使用的是JDK 1.8

  2、准备密钥,参考:【Java】使用JDK自带工具生成密钥对 - H__D - 博客园

  3、准备tomcat,本例使用的是tomcat 9 参考:【Linux】Tomcat安装及一个服务器配置多个Tomcat - H__D - 博客园

  4、将密钥库复制到tomcat的config目录下

  

  5、编辑tomcat中conf/server.xml文件,增加以下内容

    <!--
    <Connector port="8443" protocol="org.apache.coyote.http11.Http11NioProtocol"
               maxThreads="150" SSLEnabled="true"
               maxParameterCount="1000"
               >
        <SSLHostConfig>
            <Certificate certificateKeystoreFile="conf/localhost-rsa.jks"
                         certificateKeystorePassword="changeit" type="RSA" />
        </SSLHostConfig>
    </Connector>
    -->
    <Connector port="8443" protocol="org.apache.coyote.http11.Http11NioProtocol"
           maxThreads="150" SSLEnabled="true"
           maxParameterCount="1000"
           >
        <SSLHostConfig>
            <Certificate certificateKeystoreFile="conf/casServer.keystore"
                         certificateKeystorePassword="123456" type="RSA" />
        </SSLHostConfig>
    </Connector>

  6、测试运行tomcat,浏览器访问 http://localhost:8080/,https://localhost:8443/

  可以看到2个地址都能访问

CAS 安装

  由于本例JDK是1.8,所以CAS使用 5.3 版本,在高的版本需要升级JDK

1. 下载cas5.3服务端

  cas5.3服务端下载:https://github.com/apereo/cas-overlay-template/tree/5.3

  cas-overlay-template项目是可覆盖的模板项目,Overlay的意思就是覆盖文件,即如果是配置文件则覆盖相同目录中的文件,如果是类文件则编译后覆盖相同包中的类class文件,如果是新文件则添加到相应的目录中。

2. 使用idea项目,并打包

  目录如下,使用maven package命令打包,在target目录下得到war包

  

3. 复制car.war包到tomcat的webapps目录,并启动tomcat

  

4. 使用浏览器访问

  地址:https://localhost:8443/cas/

  默认用户可以在webapps\cas\WEB-INF\classes\application.properties 找到(用户:casuser,密码:Mellon)

  cas.authn.accept.users=casuser::Mellon

   

5. 修改配置

  在项目中新建目录 src/main/resources, 从tomcat的webapps目录下拷贝application.properties + log4j2.xml文件

  webapps\cas\WEB-INF\classes\application.properties + log4j2.xml

  

   在application.properties中 修改默认用户  cas.authn.accept.users=admin::123456

  重新打包生成cas.war包,然后放到tomcat,测试发现默认用户已生效

CAS cas.war启动

情况一

  有证书的情况下,将证书放到配置目录  file:/etc/cas/thekeystore 中,即使你的证书名字thekeystore 

  在target目录中,使用命令:java -jar cas.war 启动服务

情况二

  无证书启动

1. 修改配置

  在application.properties中,将下面4个默认配置注释掉
#server.ssl.key-store=file:/etc/cas/thekeystore
#server.ssl.key-store-password=changeit
#server.ssl.key-password=changeit


#server.tomcat.protocol-header-https-value=https

2. 打包启动

  在target目录中,使用命令:java -jar cas.war 启动服务

  浏览器访问地址:http://localhost:8443/cas/

  

   使用对应的账号密码即可登录

 


 

参考:https://blog.csdn.net/wangwenke2003/article/details/80348998

参考:https://www.cnblogs.com/wuyongyin/p/16034502.html

参考:https://www.jb51.net/program/315428xsz.htm

 

posted on 2024-10-31 00:08  H__D  阅读(84)  评论(0编辑  收藏  举报