搭建cas单点登陆服务端(cas4.1.10+tomcat8.5.31)

一、准备


 1、下载cas,版本4.1.10(习惯使用maven,不习惯gradle),地址:https://github.com/apereo/cas/archive/v4.1.10.zip

 2、下载tomcat,版本8.5.31

二、配置cas


 1、导入idea

解压cas,导入到idea,主要是编译操作cas-server-webapp

 

2、配置端口

打开cas-server-webapp\src\main\webapp\WEB-INF\cas.properties文件,修改第20行(端口需要跟tomcat的端口一致)

server.name=http://localhost:8080

3、配置数据库

主要是操作cas-server-webapp\src\main\webapp\WEB-INF\deployerConfigContext.xml文件

3.1、默认验证方式

默认情况下,cas是不连接数据库的,而是将用户名、密码存到map里,如下图所示

 3.2、开启数据库验证

注释掉原有的验证方式,增加数据库连接配置和数据库验证配置

    <!--数据库配置,此处使用sqlserver-->
    <bean id="dataSource"
          class="org.springframework.jdbc.datasource.DriverManagerDataSource">
        <property name="driverClassName" value="com.microsoft.sqlserver.jdbc.SQLServerDriver" />
        <property name="url"
                  value="jdbc:sqlserver://127.0.0.1:1433;DatabaseName=test_db" />
        <property name="username" value="sa" />
        <property name="password" value="db123456" />
    </bean>
    <!--通过查询数据库sys_user表的方式进行验证-->
    <bean id="primaryAuthenticationHandler"
          class="org.jasig.cas.adaptors.jdbc.QueryDatabaseAuthenticationHandler"
          p:dataSource-ref="dataSource"
          p:passwordEncoder-ref="MD5PasswordEncoder"
          p:sql="select password from sys_user where username=?" />
    <!--数据库使用md5的方式进行加密-->
    <bean id="MD5PasswordEncoder" class="org.jasig.cas.authentication.handler.DefaultPasswordEncoder">
        <constructor-arg index="0">
            <value>MD5</value>
        </constructor-arg>
    </bean>

认证方式和加密方式可以自行进行修改,此处使用是系统默认的QueryDatabaseAuthenticationHandler、DefaultPasswordEncoder

3.3、增加数据库连接的依赖

在pom.xml增加sqlserver的依赖

 <dependency>
      <groupId>com.microsoft.sqlserver</groupId>
      <artifactId>sqljdbc4</artifactId>
      <version>4.0</version>
    </dependency>

4、取消https(默认Tomcat不支持https)

4.1

  修改deployerConfigContext.xml文件第91行增加p:requireSecure="false",从而设置不采用 安全验证,即不采用 HTTPS 

<bean id="proxyAuthenticationHandler"
   class="org.jasig.cas.authentication.handler.support.HttpBasedServiceCredentialsAuthenticationHandler"
          p:httpClient-ref="supportsTrustStoreSslSocketFactoryHttpClient"  p:requireSecure="false"/>

4.2

  修改cas-server-webapp\src\main\webapp\WEB-INF\spring-configuration\ticketGrantingTicketCookieGenerator.xml文件第36行,修改p:cookieSecure="false"

  <bean id="ticketGrantingTicketCookieGenerator" class="org.jasig.cas.web.support.CookieRetrievingCookieGenerator"
          c:casCookieValueManager-ref="cookieValueManager"
          p:cookieSecure="false"
          p:cookieMaxAge="-1"
          p:cookieName="TGC"
          p:cookiePath=""/>

4.3

  修改cas-server-webapp\src\main\webapp\WEB-INF\spring-configuration\warnCookieGenerator.xml,修改p:cookieSecure="false"

    <bean id="warnCookieGenerator" class="org.jasig.cas.web.support.CookieRetrievingCookieGenerator"
          p:cookieHttpOnly="true"
          p:cookieSecure="false"
          p:cookieMaxAge="-1"
          p:cookieName="CASPRIVACY"
          p:cookiePath=""
    />

5、自定义登陆页面

主要是修改cas-server-webapp\src\main\webapp\WEB-INF\view\jsp\default\ui\casLoginView.jsp,这里不做详细介绍

6、maven编译

  编译cas-server-webapp,生成war包(此处编译成cas.war)

三、配置tomcat


   将打包好的cas服务端war包,拷贝到tomcat的webapps下,启动tomcat

四、运行页面截图

  本人修改了登陆页面。


 

 

转载于:https://www.cnblogs.com/Blackieboy/articles/9490379.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值