1. 产生SERVER的证书库文件

  ketool工具详细运用:http://www.micmiu.com/lang/java/keytool-start-guide/

  首先确保jdk环境变了正确配置才可以使用keytool工具,检测keytool工具:win+r  打开cmd  输入keytool命令,不报错就ok了

  

    以上操作会在当前目录下产生ssodemo.keystore证书文件

2.  在server端配置tomcat使用HTTPS

  <!--
<Connector port="8443" protocol="HTTP/1.1" SSLEnabled="true"
maxThreads="150" scheme="https" secure="true"
clientAuth="false" sslProtocol="TLS" />
-->
<Connector SSLEnabled="true" clientAuth="false" keystoreFile="D:\test\sso\ssodemo.keystore" keystorePass="111111" maxThreads="150" port="8443" protocol="org.apache.coyote.http11.Http11Protocol" scheme="https" secure="true" sslProtocol="TLS"/>

  注意:keystorePass="111111"(这个问证书库文件的密码,也就是上面配置产生的一个密码)keystoreFile="D:\test\sso\ssodemo.keystore" (这是证书库文件的存放路径)

  测试:https://localhost:8443/  正常显示tomcat主页面

3.  添加cas.war 

  CAS下载地址:http://www.jasig.org/cas/download

  本例用的是:3.5.2.1版本

  下载后有个modules文件夹里面有个cas-server-webapp-3.5.2.1.war改名cas.war放在tomcat的webapps下

   测试 : https://localhost:8443/cas/login  登录页面  正常显示  默认账号/密码admin /admin

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

4.  配置 casDataSource

    打开文件 /webapps/cas/WEB-INF/deployerConfigContext.xml,添加一个新的 bean 标签

    并且将 cas-server-support-jdbc-3.1.1.jar(下载的cas里面modules文件夹有) 拷贝到 /webapps/cas/ WEB-INF/lib

    DataStore 依赖于 commons-collections-3.2.jar, commons-dbcp-1.2.1.jar, commons-pool-1.3.jar,mysql jar(驱动jar)

  <bean id="casDataSource" class="org.apache.commons.dbcp.BasicDataSource">
<property name="driverClassName">
<value>com.mysql.jdbc.Driver</value>
</property>
<property name="url">
<value>jdbc:mysql://localhost:3306/test</value>
</property>
<property name="username">
<value>root</value>
</property>
<property name="password">
<value>123456</value>
</property>
</bean>

  

5.  添加一个新的 bean 查询 QueryDatabaseAuthenticationHandler(在deployerConfigContext.xml里面)

<bean class="org.jasig.cas.adaptors.jdbc.QueryDatabaseAuthenticationHandler">
<property name="dataSource" ref="casDataSource" />
<property name="sql"
value="select password from user where username = ?" />
<property name="passwordEncoder" ref="MD5PasswordEncoder" ></property>
</bean>
说明:select password from user where username = ?   user为登录信息表  username为登录名称  password为登录密码
passwordEncoder密码为设置密码解密机制,如果不需要解密可以删除
添加 MD5PasswordEncoder bean:
<bean id="MD5PasswordEncoder" class="org.jasig.cas.authentication.handler.DefaultPasswordEncoder">
<constructor-arg index="0" value="md5" />
</bean>

6. 自定义MD5 Encoder(如果上面的md5密码验证不符合项目需要)

<!--数据验证模 我自己实现的MD5接口-->
<bean id="MD5PasswordEncoder" class="org.jasig.cas.authentication.handler.Crypt"></bean>

  类的实现(注意包名,和上面的class要一致,把编译的class文件放在cas  web应用对应目录下):

package org.jasig.cas.authentication.handler;

public class Crypt  implements PasswordEncoder{
/**
* 进行加密编码
* @param s 要加密的字符串
* @return 加密后的字符串
*/
public String encode(String s)
{
MD5 md5=new MD5();
String ecd=md5.getMD5ofStr(s) ;
System.out.println("-------- need =["+ecd+"]") ;
return ecd;
}
}
 

CAS服务端配置的更多相关文章

  1. 【试水CAS-4.0.3】第06节_CAS服务端配置HTTPS

    完整版见https://jadyer.github.io/2012/05/30/tomcat-https/ /** * @see CAS服务端配置HTTPS * @see -------------- ...

  2. 三、记一次失败的 CAS 搭建 之 服务端配置

    ==================================================================================================== ...

  3. cas 服务端、客服端详细配置

    一.准备 1.下载官方源码 CAS-Server下载地址:https://www.apereo.org/projects/cas/download-cas CAS-Client下载地址:http:// ...

  4. 单点登录(SSO)解决方案之 CAS服务端数据源设置及页面改造

    接上篇 单点登录(SSO)解决方案之 CAS 入门案例 服务端数据源设置: 开发中,我们登录的user信息都是存在数据库中的,下面说一下如何让用户名密码从我们的数据库表中做验证. 案例中我最终把cas ...

  5. cas 服务端认证流程

    CAS服务端流程分析 'CAS单点登录服务器端的登录流程' -----流程的配置在/WEB-INF/login-webflow.xml文件中 <var name="credential ...

  6. CAS服务端数据源设置

    2.CAS服务端数据源设置 2.1需求分析 我们现在让用户名密码从我们的品优购的user表里做验证 2.2配置数据源 (1)修改cas服务端中web-inf下deployerConfigContext ...

  7. Oracle10g客户端链接服务端配置

    Oracle10g客户端工具plsql链接服务端配置 Oracle10g客户端工具比如plsql,在网络中链接服务端问题比较多中国菜刀,经常出现很多莫名其妙的问题.实际上不是plsql的配置,问题还是 ...

  8. mpush 服务端配置 for windows 服务自动运行

    mpush 服务端配置 以下安装部分是参照官方的步骤, 一.安装jdk1.8并配置环境变量 示例:  http://www.cnblogs.com/endv/p/6439860.html 二.Wind ...

  9. Orleans[NET Core 3.1] 学习笔记(三)( 3 )服务端配置

    服务端配置 Silo通过SiloHostBuilder和许多补充选项类以编程方式进行配置. Silo配置有几个关键方面: Orleans集群信息 集群提供程序(不知道咋翻译) Silo到Silo和Cl ...

随机推荐

  1. 尚学python课程---12、python语言介绍

    尚学python课程---12.python语言介绍 一.总结 一句话总结: 1.操作简单:简便计算:允许通过单个“import”语句后跟一个函数调用来完成复杂的计算.虽慢 2.库丰富:比如人工智能和 ...

  2. VS2010-MFC(工具栏:工具栏资源及CToolBar类)

    转自:http://www.jizhuomi.com/software/215.html 上一节讲了菜单及CMenu类的使用,这一节讲与菜单有密切联系的工具栏. 工具栏简介 工具栏一般位于主框架窗口的 ...

  3. 关于python3字符串中引号格式的看法,‘’,“”

    关于字符串中引号格式的看法 在python3中,字符串统一使用: ' ' 或  " "     来表示,两者没有什么区别. 但是在使用的过程中,可以注意一下使用的方式,可以提高编程 ...

  4. ASP.NET的Validform验证表单使用说明

    当我们写提交表单的时候往往需要验证表单是否填写了内容,是否正确,这个插件可以很方便的完成我们需要的验证! 使用方法: 1.引用JS <script type="text/javascr ...

  5. Eclipse添加git插件及操作

    注册账号新建仓库 在Github已经注册成功自己的账号 新建一个仓库 创建成功后记住url: 安装Git插件 首先像安装Pydev一样 点击help的Install New Software 点击Ad ...

  6. springboot整合mybatis进行跨库查询

    业务场景: 当一个公司大了之后就会将各种业务进行分开,最简单的就是例如:公司的机构表,那么就会将他们分成开来,那么就会在一个实例中, 如果要获取相关信息就会去关联这张表进行关联查询 从而导致了跨库关联 ...

  7. 2019-9-2-贡献自己的服务器搭建tor中转

    title author date CreateTime categories 贡献自己的服务器搭建tor中转 lindexi 2019-09-02 12:57:38 +0800 2018-2-13 ...

  8. scull 中的设备注册

    在内部, scull 使用一个 struct scull_dev 类型的结构表示每个设备. 这个结构定义为: struct scull_dev { struct scull_qset *data;  ...

  9. 自定义Jquery:ajax,get,post方法

    var myAjax = { request: function(url, type, data, callback) { $.ajax(url, { type: type, data: data, ...

  10. BP 算法之一种直观的解释

    0. 前言 之前上模式识别课程的时候,老师也讲过 MLP 的 BP 算法, 但是 ppt 过得太快,只有一个大概印象.后来课下自己也尝试看了一下 stanford deep learning 的 wi ...