Druid添加黑白名单

This commit is contained in:
RuoYi 2018-02-27 13:35:28 +08:00
parent a4582a0ecc
commit 71fcd0e932
1 changed files with 23 additions and 7 deletions

View File

@ -20,7 +20,7 @@ import lombok.extern.slf4j.Slf4j;
*/
@Configuration
@Slf4j
public class DruidDBConfig
public class DruidConfig
{
@Value("${spring.datasource.url}")
private String dbUrl;
@ -113,28 +113,44 @@ public class DruidDBConfig
return datasource;
}
/**
* 注册一个StatViewServlet 相当于在web.xml中声明了一个servlet
*/
@Bean
public ServletRegistrationBean druidServlet()
{
ServletRegistrationBean reg = new ServletRegistrationBean();
reg.setServlet(new StatViewServlet());
// 白名单
reg.addUrlMappings("/monitor/druid/*");
reg.addInitParameter("allow", "");
// 白名单
reg.addInitParameter("allow", "10.211.61.45,127.0.0.1");
// IP黑名单(共同存在时deny优先于allow)
reg.addInitParameter("deny", "10.211.61.4");
// 是否能够重置数据 禁用HTML页面上的Reset All功能
reg.addInitParameter("resetEnable", "false");
return reg;
}
/**
* 注册一个filterRegistrationBean 相当于在web.xml中声明了一个Filter
*/
@Bean
public FilterRegistrationBean filterRegistrationBean()
{
FilterRegistrationBean filterRegistrationBean = new FilterRegistrationBean();
filterRegistrationBean.setFilter(new WebStatFilter());
// 添加过滤规则.
filterRegistrationBean.addUrlPatterns("/*");
filterRegistrationBean.addInitParameter("exclusions", "*.js,*.gif,*.jpg,*.png,*.css,*.ico,/monitor/druid/*");
filterRegistrationBean.addInitParameter("profileEnable", "true");
filterRegistrationBean.addInitParameter("principalCookieName", "USER_COOKIE");
filterRegistrationBean.addInitParameter("principalSessionName", "USER_SESSION");
// 监控选项滤器
filterRegistrationBean.addInitParameter("DruidWebStatFilter", "/*");
// 添加不需要忽略的格式信息.
filterRegistrationBean.addInitParameter("exclusions", "*.js,*.gif,*.jpg,*.png,*.css,*.ico,/monitor/druid/*");
// 配置profileEnable能够监控单个url调用的sql列表
filterRegistrationBean.addInitParameter("profileEnable", "true");
// 当前的cookie的用户
filterRegistrationBean.addInitParameter("principalCookieName", "USER_COOKIE");
// 当前的session的用户
filterRegistrationBean.addInitParameter("principalSessionName", "USER_SESSION");
return filterRegistrationBean;
}
}