diff --git a/UPDATE.md b/UPDATE.md index 1b397c1..caa757a 100644 --- a/UPDATE.md +++ b/UPDATE.md @@ -1,6 +1,19 @@ yexuejc-springboot 更新内容 ------------------- +#### version :1.0.16 +**time:2018-9-23 12:46:26**
+**branch:** master
+**关联工程:**
+``` +springboot-base:1.1.9 +spring-boot-starter-parent:1.5.15.RELEASE +``` +**update:**
+1. 升级依赖 +2. 增加SSL证书忽略:默认关闭 +# + #### version :1.0.15 **time:2018-9-3 19:29:39**
**branch:** master
diff --git a/pom.xml b/pom.xml index e937124..8e429d7 100644 --- a/pom.xml +++ b/pom.xml @@ -5,7 +5,7 @@ com.yexuejc.springboot yexuejc-springboot-parent - 1.0.15 + 1.0.16 pom ${project.artifactId} @@ -20,7 +20,7 @@ - 1.1.8 + 1.1.9 https://nexus.yexuejc.club/repository/ http://maven.aliyun.com/nexus/content/groups/public diff --git a/yexuejc-springboot-base/pom.xml b/yexuejc-springboot-base/pom.xml index c0453d5..198157f 100644 --- a/yexuejc-springboot-base/pom.xml +++ b/yexuejc-springboot-base/pom.xml @@ -9,7 +9,7 @@ com.yexuejc.springboot yexuejc-springboot-parent - 1.0.15 + 1.0.16 diff --git a/yexuejc-springboot-base/src/main/java/com/yexuejc/springboot/base/autoconfigure/WebAutoConfiguration.java b/yexuejc-springboot-base/src/main/java/com/yexuejc/springboot/base/autoconfigure/WebAutoConfiguration.java index 1e1fd13..2737566 100644 --- a/yexuejc-springboot-base/src/main/java/com/yexuejc/springboot/base/autoconfigure/WebAutoConfiguration.java +++ b/yexuejc-springboot-base/src/main/java/com/yexuejc/springboot/base/autoconfigure/WebAutoConfiguration.java @@ -16,6 +16,7 @@ import com.yexuejc.springboot.base.filter.ValidationFilter; import com.yexuejc.springboot.base.filter.ValidationFilterProperties; import com.yexuejc.springboot.base.interceptor.LogInterceptor; import com.yexuejc.springboot.base.util.LogUtil; +import com.yexuejc.springboot.base.util.SSLUtil; import org.springframework.boot.autoconfigure.condition.ConditionalOnProperty; import org.springframework.boot.autoconfigure.condition.ConditionalOnWebApplication; import org.springframework.boot.context.properties.EnableConfigurationProperties; @@ -147,6 +148,15 @@ public class WebAutoConfiguration extends WebMvcConfigurerAdapter { return registration; } + @Bean + /** + * 是否开启HTTPS(SSL)请求证书验证忽略:默认false + */ + @ConditionalOnProperty(name = "yexuejc.enable.ssl-ignore", matchIfMissing = false) + public SSLUtil getSslUtil() { + return new SSLUtil(); + } + /** * 全局异常处理 */ diff --git a/yexuejc-springboot-base/src/main/java/com/yexuejc/springboot/base/util/SSLUtil.java b/yexuejc-springboot-base/src/main/java/com/yexuejc/springboot/base/util/SSLUtil.java new file mode 100644 index 0000000..216d3ec --- /dev/null +++ b/yexuejc-springboot-base/src/main/java/com/yexuejc/springboot/base/util/SSLUtil.java @@ -0,0 +1,63 @@ +package com.yexuejc.springboot.base.util; + +import javax.net.ssl.*; +import java.security.KeyManagementException; +import java.security.NoSuchAlgorithmException; +import java.security.cert.X509Certificate; + +/** + * SSL证书忽略 + * + * @ClassName: SSLUtil + * @Description: + * @author: maxf + * @date: 2018/9/23 12:26:33 + */ +public class SSLUtil { + + + public SSLUtil() { + disableSslVerification(); + } + + private void disableSslVerification() { + try { + // Create a trust manager that does not validate certificate chains + TrustManager[] trustAllCerts = new TrustManager[]{new X509TrustManager() { + @Override + public X509Certificate[] getAcceptedIssuers() { + return null; + } + + @Override + public void checkClientTrusted(X509Certificate[] certs, String authType) { + } + + @Override + public void checkServerTrusted(X509Certificate[] certs, String authType) { + } + } + }; + + // Install the all-trusting trust manager + SSLContext sc = SSLContext.getInstance("SSL"); + sc.init(null, trustAllCerts, new java.security.SecureRandom()); + HttpsURLConnection.setDefaultSSLSocketFactory(sc.getSocketFactory()); + + // Create all-trusting host name verifier + HostnameVerifier allHostsValid = new HostnameVerifier() { + @Override + public boolean verify(String hostname, SSLSession session) { + return true; + } + }; + + // Install the all-trusting host verifier + HttpsURLConnection.setDefaultHostnameVerifier(allHostsValid); + } catch (NoSuchAlgorithmException e) { + e.printStackTrace(); + } catch (KeyManagementException e) { + e.printStackTrace(); + } + } +} \ No newline at end of file diff --git a/yexuejc-springboot-base/src/test/resources/application.properties b/yexuejc-springboot-base/src/test/resources/application.properties index 9d3bff4..3e03b4e 100644 --- a/yexuejc-springboot-base/src/test/resources/application.properties +++ b/yexuejc-springboot-base/src/test/resources/application.properties @@ -21,4 +21,7 @@ yexuejc.http.encrypt.private-pwd=lgfishing2018 spring.http.encoding.force=true spring.http.encoding.charset=UTF-8 spring.http.encoding.enabled=true -server.tomcat.uri-encoding=UTF-8 \ No newline at end of file +server.tomcat.uri-encoding=UTF-8 + +#是否开启HTTPS(SSL)请求证书验证忽略:默认false +yexuejc.enable.ssl-ignore=true \ No newline at end of file