diff --git a/contact-center/app/src/main/java/com/cskefu/cc/config/WebSecurityConfig.java b/contact-center/app/src/main/java/com/cskefu/cc/config/WebSecurityConfig.java index fdd33c8e..31b5b3cc 100644 --- a/contact-center/app/src/main/java/com/cskefu/cc/config/WebSecurityConfig.java +++ b/contact-center/app/src/main/java/com/cskefu/cc/config/WebSecurityConfig.java @@ -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 diff --git a/contact-center/app/src/main/java/com/cskefu/cc/config/WebServerSessionConfigure.java b/contact-center/app/src/main/java/com/cskefu/cc/config/WebServerSessionConfigure.java index ee4f60eb..488ece15 100644 --- a/contact-center/app/src/main/java/com/cskefu/cc/config/WebServerSessionConfigure.java +++ b/contact-center/app/src/main/java/com/cskefu/cc/config/WebServerSessionConfigure.java @@ -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 diff --git a/contact-center/app/src/main/resources/application.properties b/contact-center/app/src/main/resources/application.properties index 17dda519..87c45456 100644 --- a/contact-center/app/src/main/resources/application.properties +++ b/contact-center/app/src/main/resources/application.properties @@ -1,6 +1,6 @@ # # Copyright (C) 2017 优客服-多渠道客服系统 -# Modifications copyright (C) 2018-2020 Chatopera Inc, +# Modifications copyright (C) 2018-2022 Chatopera Inc, # 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= diff --git a/contact-center/root/pom.xml b/contact-center/root/pom.xml index e6066de3..fce5bb10 100644 --- a/contact-center/root/pom.xml +++ b/contact-center/root/pom.xml @@ -401,6 +401,14 @@ jaxb-runtime 2.3.1 + + + + junit + junit + 4.12 + test +