1
0
mirror of https://github.com/chatopera/cosin.git synced 2025-06-16 18:30:03 +08:00
This commit is contained in:
Hai Liang Wang 2023-06-22 15:51:49 +08:00
parent 95f35c13e0
commit 8c1e6435e2
4 changed files with 31 additions and 77 deletions

View File

@ -44,12 +44,14 @@ public class WebSecurityConfig {
@Bean
public SecurityFilterChain filterChain(HttpSecurity http) throws Exception {
return http.addFilterAfter(tokenInfoTokenFilterSecurityInterceptor(), BasicAuthenticationFilter.class)
http
.addFilterAfter(tokenInfoTokenFilterSecurityInterceptor(), BasicAuthenticationFilter.class)
.authorizeHttpRequests(authorize -> authorize.requestMatchers("/**").permitAll())
.csrf().disable().headers().frameOptions().sameOrigin()
// .addFilterAfter(csrfHeaderFilter(), BasicAuthenticationFilter.class) // TODO lecjy
.and().addFilterAfter(apiTokenFilterSecurityInterceptor(), BasicAuthenticationFilter.class)
.build();
.and().addFilterAfter(apiTokenFilterSecurityInterceptor(), BasicAuthenticationFilter.class);
http.headers().contentTypeOptions().disable();
return http.build();
}
@Bean

View File

@ -49,13 +49,13 @@ public class WebServerSessionConfigure {
@Value("${server.session-timeout}")
private long maxInactiveIntervalInSeconds;
@Value("${spring.redis.host}")
@Value("${spring.data.redis.host}")
private String host;
@Value("${spring.redis.port}")
@Value("${spring.data.redis.port}")
private int port;
@Value("${spring.redis.password}")
@Value("${spring.data.redis.password}")
private String pass;
@Value("${spring.redis.session.db}")
@ -64,7 +64,7 @@ public class WebServerSessionConfigure {
@Value("${spring.redis.token.db}")
private int tokenDb;
@Value("${spring.redis.timeout}")
@Value("${spring.data.redis.timeout}")
private int timeout;
@Primary

View File

@ -1,6 +1,6 @@
#
# Copyright (C) 2017 优客服-多渠道客服系统
# Modifications copyright (C) 2018-2020 Chatopera Inc, <https://www.chatopera.com>
# Modifications copyright (C) 2018-2022 Chatopera Inc, <https://www.chatopera.com>
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
@ -11,19 +11,11 @@
# See the License for the specific language governing permissions and
# limitations under the License.
# 如何加载配置文件
# https://docs.spring.io/spring-boot/docs/1.5.6.RELEASE/reference/htmlsingle/
# https://stackoverflow.com/questions/35531661/using-env-variable-in-spring-boots-application-properties
# 在集群状态下每个Node都有自己唯一的ID
application.node.id=localhost
application.build.datestr=PLACEHOLDER
application.customer.entity=Trial
##############################################
# 安全设置
##############################################
# cookie加密
# cookie salt
application.security.password=cskefu
# Server
@ -40,12 +32,8 @@ uk.im.server.host=localhost
uk.im.server.threads=1000
cs.im.server.ssl.port=
# 文件上传限制
spring.mvc.servlet.load-on-startup=1
spring.servlet.multipart.enabled=true
# 单位MB
spring.servlet.multipart.max-file-size=15
# 单位MB
spring.servlet.multipart.max-request-size=15
spring.thymeleaf.enabled=false
@ -88,34 +76,6 @@ spring.jpa.properties.hibernate.current_session_context_class=org.springframewor
spring.jpa.show-sql=false
spring.jpa.properties.hibernate.format_sql=true
##Druid
# \u521D\u59CB\u5316\u5927\u5C0F\uFF0C\u6700\u5C0F\uFF0C\u6700\u5927
spring.datasource.druid.initial-size=5
spring.datasource.druid.max-active=100
spring.datasource.druid.min-idle=5
# \u914D\u7F6E\u83B7\u53D6\u8FDE\u63A5\u7B49\u5F85\u8D85\u65F6\u7684\u65F6\u95F4
spring.datasource.druid.max-wait=60000
# \u6253\u5F00PSCache\uFF0C\u5E76\u4E14\u6307\u5B9A\u6BCF\u4E2A\u8FDE\u63A5\u4E0APSCache\u7684\u5927\u5C0F
spring.datasource.druid.pool-prepared-statements=true
spring.datasource.druid.max-pool-prepared-statement-per-connection-size=20
#spring.datasource.druid.max-open-prepared-statements= #\u548C\u4E0A\u9762\u7684\u7B49\u4EF7
spring.datasource.druid.validation-query=SELECT 1 FROM DUAL
spring.datasource.druid.validation-query-timeout=60000
spring.datasource.druid.test-on-borrow=false
spring.datasource.druid.test-on-return=false
spring.datasource.druid.test-while-idle=true
# \u914D\u7F6E\u95F4\u9694\u591A\u4E45\u624D\u8FDB\u884C\u4E00\u6B21\u68C0\u6D4B\uFF0C\u68C0\u6D4B\u9700\u8981\u5173\u95ED\u7684\u7A7A\u95F2\u8FDE\u63A5\uFF0C\u5355\u4F4D\u662F\u6BEB\u79D2
spring.datasource.druid.time-between-eviction-runs-millis=60000
# \u914D\u7F6E\u4E00\u4E2A\u8FDE\u63A5\u5728\u6C60\u4E2D\u6700\u5C0F\u751F\u5B58\u7684\u65F6\u95F4\uFF0C\u5355\u4F4D\u662F\u6BEB\u79D2
spring.datasource.druid.min-evictable-idle-time-millis=100000
# \u914D\u7F6E\u4E00\u4E2A\u8FDE\u63A5\u5728\u6C60\u4E2D\u6700\u5927\u751F\u5B58\u7684\u65F6\u95F4\uFF0C\u5355\u4F4D\u662F\u6BEB\u79D2
#spring.datasource.druid.max-evictable-idle-time-millis=
spring.datasource.druid.filters=stat,wall,log4j
# WebStatFilter\u914D\u7F6E\uFF0C\u8BF4\u660E\u8BF7\u53C2\u8003Druid Wiki\uFF0C\u914D\u7F6E_\u914D\u7F6EWebStatFilter
spring.datasource.druid.web-stat-filter.enabled=true
spring.datasource.druid.web-stat-filter.url-pattern=/*
spring.datasource.druid.keep-alive=true
##############################################
# Cache
##############################################
@ -125,31 +85,21 @@ cache.setup.strategy=create_by_force
##############################################
# Redis Connection
##############################################
# Redis数据库索引默认为0
spring.redis.database=2
spring.data.redis.port=6379
spring.data.redis.host=localhost
spring.data.redis.password=
spring.data.redis.database=2
# set timeout to 10s
spring.data.redis.timeout=10000
spring.redis.session.db=1
spring.redis.token.db=3
# Redis服务器地址
spring.redis.host=localhost
# Redis服务器连接端口
spring.redis.port=6379
# Redis服务器连接密码默认为空
spring.redis.password=
# 连接池最大连接数(使用负值表示没有限制)
spring.redis.pool.max-active=-1
# 连接池最大阻塞等待时间(使用负值表示没有限制)
spring.redis.pool.max-wait=-1
# 连接池中的最大空闲连接
spring.redis.pool.max-idle=20
# 连接池中的最小空闲连接
spring.redis.pool.min-idle=10
# 连接超时时间(毫秒),因为春松客服启动时
# 占用比较大的时间此处timeout值必须设置为0才能正常启动
spring.redis.timeout=0
##############################################
# ActiveMQ消息服务
# ActiveMQ
##############################################
spring.activemq.broker-url=tcp://localhost:61616
spring.activemq.user=admin
@ -158,7 +108,7 @@ spring.activemq.pool.enabled=true
spring.activemq.pool.max-connections=50
##############################################
# Actuator 监控数据采集
# Actuator
# https://docs.spring.io/spring-boot/docs/1.5.9.RELEASE/reference/html/production-ready-endpoints.html
##############################################
management.context-path=/actuator
@ -180,12 +130,9 @@ endpoints.shutdown.enabled=false
endpoints.trace.enabled=false
##############################################
# 百度统计 Key
# Baidu Tongji
# https://tongji.baidu.com/
# 汇总使用情况登录打开页面etc.
# 登录 -> 管理 -> 新增网站 -> 代码获取 -> 拷贝SiteKey
# hm.src = "https://hm.baidu.com/hm.js?YOUR_SITE_KEY";
# 加入后在百度统计内点击:代码安装检查,代码检查成功表示安装成功;注意网站域名等一致,数据收集有延迟。
##############################################
tongji.baidu.sitekey=
@ -196,21 +143,19 @@ tongji.baidu.sitekey=
cskefu.callout.watch.interval=60000
##############################################
# 业务功能相关设置
# Modules
##############################################
# 系统模块
cskefu.modules.contacts=true
cskefu.modules.cca=true
cskefu.modules.entim=false
cskefu.modules.report=true
# 是否开启渠道访客独立 https://gitlab.chatopera.com/chatopera/cosinee/issues/838
# https://gitlab.chatopera.com/chatopera/cosinee/issues/838
cskefu.settings.webim.visitor-separate=false
##############################################
# Skype渠道集成配置
# Skype Channel
##############################################
# 从外部系统获得 SkypeID对应的联系人信息
channel.skype.crm=
##############################################
@ -221,7 +166,6 @@ telemetry.channel.webim.visitor=on
##############################################
# Miscs
##############################################
# 登陆页面公告
extras.login.banner=off
extras.login.chatbox=off
extras.auth.super-admin.pass=

View File

@ -401,6 +401,14 @@
<artifactId>jaxb-runtime</artifactId>
<version>2.3.1</version>
</dependency>
<!-- For testing -->
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<version>4.12</version>
<scope>test</scope>
</dependency>
</dependencies>
<repositories>
<repository>