单点登录 windows下cas服务器搭建

1. 下载cas服务端war包

可以上官网https://www.apereo.org/projects/cas/download-cas下载源码进行打包,也可在网上下载打包好的war包,我这里使用的版本是

cas-server-webapp-4.0.0.war

2. 创建证书

keytool -genkey -alias cas -keyalg RSA -keystore C:/usr/local/keys/keycard/cas.keystore

这里秘钥是123456


3. 导出证书

keytool -export -alias cas -keystore c:/usr/local/keys/keycard/cas.keystore -file c:/usr/local/keys/keycard/cas.crt -storepass 123456

4. 客户端JVM导入证书

keytool -import -keystore %JAVA_HOME%\jre\lib\security\cacerts -file c:/usr/local/keys/keycard/cas.crt -alias cas

这里的口令是changeit

5. 将证书引入到cas服务器端(server.xml)

这里注意8443端口的protocol中的红色部分,我这里使用的是Tomcat9。

<Connector port="8443" protocol="org.apache.coyote.http11.Http11NioProtocol"

    maxThreads="150" SSLEnabled="true" scheme="https" secure="true"

    keystoreFile="c:/usr/local/keys/keycard/cas.keystore" keystorePass="123456"

    clientAuth="false" sslProtocol="TLS"/>

                  fire.web.com 这里之前是localhost 

<Host name="fire.web.com"  appBase="webapps"

            unpackWARs="true" autoDeploy="true">

    配置主机域名

   编辑C:\Windows\System32\drivers\etc\hosts文件

     windows主机ip   fire.web.com

6. 将第一步弄好的war包改名为cas.war,并复制到tomcat的webapps中,启动tomcat服务

    如果报错返回,返回检查上面步骤

7. 浏览输入https://localhost:8443/cas/login


8. 输入用户名密码(deployerConfigContext.xml文件中红色部分)

<bean id="primaryAuthenticationHandler"

         class="org.jasig.cas.authentication.AcceptUsersAuthenticationHandler">

        <property name="users">

            <map>

                <entry key="casuser" value="Mellon"/>

            </map>

        </property>

 </bean>

9. 连接数据库(我这里连接的是mysql数据库)

<constructor-arg>

            <map>

                <entry key-ref="proxyAuthenticationHandler" value-ref="proxyPrincipalResolver" />

                <!-- 注释下面这一行 -->

                <!-- entry key-ref="primaryAuthenticationHandler" value-ref="primaryPrincipalResolver" -->

<!-- key-ref指定自己的本地数据库访问 -->

<entry key-ref="dbAuthHandler" value-ref="primaryPrincipalResolver"/>

            </map>

 </constructor-arg>

<!-- 指定c3p0数据源 -->

<bean id="dataSource" class="com.mchange.v2.c3p0.ComboPooledDataSource">

        <property name="driverClass" value="com.mysql.jdbc.Driver" />

         <property name="jdbcUrl" value="jdbc:mysql://数据库服务器ip:3306/数据库名?       

         useUnicode=true&characterEncoding=UTF-8&autoReconnect=true&failOverReadOnly=false"/>

        <property name="user" value="用户名"/>

        <property name="password" value="密码"/>

</bean>

<!-- 访问本地数据库 -->

<bean id="dbAuthHandler"

      class="org.jasig.cas.adaptors.jdbc.QueryDatabaseAuthenticationHandler"

      p:dataSource-ref="dataSource"

      p:sql="SELECT pwd FROM user WHERE username=?" />


这里需要在项目中的lib目录下加入

c3p0-0.9.1.2.jar 、cas-server-support-jdbc-4.0.0.jar、

mysql-connector-java-5.1.13-bin.jar

网上有很多,也可通过下面地址下载

下载地址为:

https://download.csdn.net/download/qq_21299835/10339182

10.重启服务器

浏览器输入https://localhost:8443/cas/login进行测试

登出输入https://localhost:8443/cas/logout



猜你喜欢

转载自blog.csdn.net/qq_21299835/article/details/79878052