CAS Audit日志数据库持久化配置

CAS的Audit日志默认是使用slf4j记录到cas_audit.log的。这里记录一下配置到mysql数据库保存。4.1以前需要自己配置数据库连接池,4.1+自带c3p0。我使用的是CAS 4.1.6,替换了默认的c3p0连接池。

1. 配置cas.properties,加入数据源

cas.audit.database.dialect=MySQLInnoDBDialect
cas.audit.database.batchSize=30
cas.audit.database.ddl.auto=update
cas.audit.database.gen.ddl=update
cas.audit.database.show.sql=true
#以下部分可以和jdbc认证数据源共享
cas.audit.database.driverClass=com.mysql.jdbc.Driver
cas.audit.database.url=jdbc:mysql://127.0.0.1:3306/cas?useUnicode=true&characterEncoding=UTF-8
cas.audit.database.user=xxxxx
cas.audit.database.password=xxxxx
cas.audit.database.pool.minSize=2
cas.audit.database.pool.maxSize=15
cas.audit.database.pool.maxIdleTime=180
cas.audit.database.pool.maxWait=300000

applicationContext.xml中加入

<bean id="dataSource" class="com.alibaba.druid.pool.DruidDataSource" init-method="init" destroy-method="close"><property name="driverClassName" value="${cas.audit.database.driverClass}"/><property name="url" value="${cas.audit.database.url}"/><property name="username" value="${cas.audit.database.user}"/><property name="password" value="${cas.audit.database.password}"/><property name="minIdle" value="${cas.audit.database.pool.minSize}"/><property name="maxActive" value="${cas.audit.database.pool.maxSize}"/><property name="validationQuery" value="${cas.audit.database.pool.connectionHealthQuery}"/><property name="testWhileIdle" value="true"/><property name="timeBetweenEvictionRunsMillis" value="1800"/><property name="filters" value="stat, wall"/><property name="testOnBorrow" value="false"/><property name="testOnReturn" value="false"/><!-- poolPreparedStatements 只支持oracle和mysql 5.5+ --><property name="poolPreparedStatements" value="true"/><property name="maxOpenPreparedStatements" value="150"/></bean>

2. deployerConfigContext.xml中查询auditTrailManager bean,修改为:

注意:

4.0 com.github.inspektr.audit.support.JdbcAuditTrailManager

4.1+ org.jasig.inspektr.audit.support.JdbcAuditTrailManager

 <bean id="auditTrailManager" class="org.jasig.inspektr.audit.support.JdbcAuditTrailManager"c:transactionTemplate-ref="transactionTemplate"p:dataSource-ref="dataSource"/><bean id="transactionTemplate" class="org.springframework.transaction.support.TransactionTemplate"c:transactionManager-ref="transactionManger"p:isolationLevelName="ISOLATION_READ_COMMITTED"p:propagationBehaviorName="PROPAGATION_REQUIRED"/><bean id="transactionManger" class="org.springframework.jdbc.datasource.DataSourceTransactionManager"p:dataSource-ref="dataSource"/>

3. 数据库建一个审计日志表:

CREATE TABLE `COM_AUDIT_TRAIL` (`AUD_USER` varchar(100) NOT NULL,`AUD_CLIENT_IP` varchar(15) NOT NULL,`AUD_SERVER_IP` varchar(15) NOT NULL,`AUD_RESOURCE` varchar(100) NOT NULL,`AUD_ACTION` varchar(100) NOT NULL,`APPLIC_CD` varchar(5) NOT NULL,`AUD_DATE` datetime NOT NULL,KEY `COM_AUDIT_TRAIL_DATE_I` (`AUD_DATE`) USING BTREE,KEY `COM_AUDIT_TRAIL_CLIENT_DATE_I` (`AUD_CLIENT_IP`,`AUD_DATE`) USING BTREE,KEY `COM_AUDIT_TRAIL_USER_DATE_I` (`AUD_USER`,`AUD_DATE`) USING BTREE,KEY `COM_AUDIT_TRAIL_ACTION_DATE_I` (`AUD_ACTION`,`AUD_DATE`) USING BTREE
) ENGINE=InnoDB DEFAULT CHARSET=utf8;

配置完成,上线后,登录就可以在数据库中看到审计日志了。
下一次会记录cas 的负载均衡。

CAS4.0 4.1 服务器端搭建(二)相关推荐

  1. CAS4.0 4.1 服务器端搭建(一)

    CAS(Central Authentication Service) 是 Yale 大学发起的一个开源项目,旨在为 Web 应用系统提供一种可靠的单点登录方法,CAS 在 2004 年 12 月正式 ...

  2. Vue3.0 + Ts 项目框架搭建二:路由 Router

    前言 上篇文章我们使用 vue-cli 创建了模板项目,可以看到安装的依赖只有 vue,所以要正常的驱动项目,安装必要的依赖是跑不了. 其中Router是控制整个系统的页面路由,是最重要的依赖之一.因 ...

  3. 【Android RTMP】RTMP 直播推流阶段总结 ( 服务器端搭建 | Android 手机端编码推流 | 电脑端观看直播 | 服务器状态查看 )

    文章目录 安卓直播推流专栏博客总结 一. 服务器搭建 二. 手机端推流 三. 电脑端观看直播 四. RTMP 服务器端状态 安卓直播推流专栏博客总结 Android RTMP 直播推流技术专栏 : 0 ...

  4. 从0开始利用VirtualBox搭建虚拟机靶场

    从0开始利用VirtualBox搭建虚拟机靶场 1. 前期准备配置 1.1 Gnome Desktop 安装 1.2 VNC配置 1.2.1 VNC Sever配置 1.2.2 VNC Client配 ...

  5. Eclipse 3.5 Classic+Tomcat 6.0+MySql 5.5搭建java web开发环境

    Eclipse 3.5 Classic+Tomcat 6.0+MySql 5.5搭建java web开发环境 对于初学者来说,如果没有接触过java web开发的话,搭建开发环境将是一个门槛.以前一直 ...

  6. Hi3519V101开发环境搭建(二)

    目录 目录 前言 编译U-boot 编译Linux-318y的内核 链接地址 前言 前面已经搭建好了Ubuntu下的海思开发环境,现在对编译Uboot和Kernel的过程做一个简单的记录.参考文档&l ...

  7. Tensorflow2.0数据和部署(二)——基于设备的模型与TensorFlow Lite

    文章目录 一.概述 1.模型存储 2.量化方法 3.模型验证 二.基于安卓的TF模型 1.初始化解释器 2.准备输入 3.调用解释器 4.输出结果 三.基于IOS的TF模型 1.初始化 2.准备输入 ...

  8. 原神私服搭建二: 搭建服务端

    原神私服搭建二: 搭建服务端 所需资源: 一:下载jar包 链接:https://github.com/Grasscutters/Grasscutter/releases 二:下载资源 resourc ...

  9. 数仓(十)从0到1简单搭建加载数仓DWS层

    数仓(一)简介数仓,OLTP和OLAP 数仓(二)关系建模和维度建模 数仓(三)简析阿里.美团.网易.恒丰银行.马蜂窝5家数仓分层架构 数仓(四)数据仓库分层 数仓 (五) 元数据管理系统解析 数仓( ...

最新文章

  1. 【转载】gdi+ 内存泄漏
  2. css揭秘之linear-gradient
  3. 【对讲机的那点事】车载台天线系统故障的检测、排除方法(上)
  4. 设计模式(七):桥接模式
  5. 《2022博客之星拉票专用帖》
  6. Linux下编译build的命令,【linux基础】20、内核的编译
  7. 关于分区索引与全局索引性能比较的示例
  8. spring——autowire自动注入
  9. iis6扩展php_windows2003server中iis6多版本php配置方法
  10. string 类的常用方法 substring indexof length
  11. java children_java构建树形列表(带children属性)
  12. 采用dlopen、dlsym、dlclose加载动态链接库【转】
  13. Linux基础之vim文本编辑器
  14. 互联网架构介绍 --from 光荣之路
  15. 单元格 编辑 获取_Excel批量导入图片,还能一键将图片固定到单元格!这是什么操作.........
  16. 计算机配置交换机线缆线序,H3C S7500X-G系列交换机
  17. Flutter使用系统相机和相册获取图片
  18. Jquery colorbox不错的遮罩
  19. 狂神JUC笔记(上)
  20. Python飞机大战(完整版)

热门文章

  1. 序列化和反序列化——字节码
  2. 销售管理系统哪种好?
  3. Vuex详解,一文彻底搞懂Vuex
  4. trafficserver安装配置
  5. hdoop面试题6 后面的面试题各公司面试题,算法数据结构相关面试题 后面没看 阿善有用...
  6. Vue实现点击根据已知的链接下载文件
  7. Mac OS下fis3 安装教程
  8. 如何编译PHP源代码?
  9. freeswitch被国外ip扫描,iptables解决办法
  10. 最新影视双端最全视频教程+源码