`

ssl 忽略主机验证

 
阅读更多

ssl 忽略主机验证

 

javax.net.ssl.SSLException: Certificate for <103.xx.xx.xx> doesn't match common name of the certificate subject: *.xx.com.cn

 

 

可以:

SSLConnectionSocketFactory sslf = new SSLConnectionSocketFactory(sslcontext, new String[] { "TLSv1" },null, SSLConnectionSocketFactory.ALLOW_ALL_HOSTNAME_VERIFIER);

 

 

 in httpcliet4.3.3 :

SSLConnectionSocketFactory sslsf =newSSLConnectionSocketFactory(sslContext,SSLConnectionSocketFactory.ALLOW_ALL_HOSTNAME_VERIFIER);CloseableHttpClient httpclient =HttpClients.custom().setSSLSocketFactory(sslsf).build();

 

 

参考:

https://stackoverflow.com/questions/7256955/java-sslexception-hostname-in-certificate-didnt-match

 

分享到:
评论

相关推荐

    httpClient实例httpClient调用 http/https实例 忽略SSL验证

    这个实例主要涉及如何配置HttpClient来忽略SSL(Secure Socket Layer)验证,这对于在开发和测试环境中处理自签名证书或未认证的服务器非常有用。以下将详细介绍HttpClient的使用以及如何进行SSL验证的忽略。 首先...

    Android okhttp3.0忽略https证书的方法

    3.配置 HostnameVerifier,以忽略主机名验证: ```java public static HostnameVerifier getHostnameVerifier() { HostnameVerifier hostnameVerifier = new HostnameVerifier() { @Override public boolean ...

    http远程接口调用-httpClient+跳过SSL证书校验

    // 创建忽略主机名验证的hostnameVerifier HostnameVerifier hostnameVerifier = NoopHostnameVerifier.INSTANCE; // 创建一个忽略SSL校验的SSLConnectionSocketFactory SSLConnectionSocketFactory ...

    httpclient 绕开HTTPS证书校验

    // 忽略主机名验证 return HttpClients.custom() .setSSLSocketFactory(sslSocketFactory) .build(); } } ``` 在`HttpUtil.java`这个文件中,我们可能看到了类似上述代码的实现。`createUnsafeHttpClient()`...

    Https请求验证工具类

    2. **禁用SSL验证**:在某些测试或调试场景下,可能需要临时禁用SSL验证,但这并不推荐在生产环境中使用,因为会降低安全性。 3. **配置SSLContext**:通过`SSLContext`对象,我们可以设置自定义的`TrustManager`和`...

    android 7.0 SSLsocket

    3. **主机名验证**:除了证书验证外,还需要检查SSL连接的目标主机名是否与证书中的主题匹配。这可以通过重写DefaultHostnameVerifier或使用自定义的HostnameVerifier来实现。 4. **安全上下文**:创建一个带有...

    HTTPS通信证书验证和绕过证书验证.zip

    TrustManager用于检查证书链的有效性,而HostnameVerifier则确保服务器的证书主题与预期的主机名匹配。通过重写这两个接口,开发者可以实现灵活的证书策略。 总之,HTTPS通信证书验证和绕过是网络开发中的核心问题...

    openssl、libcurl、https访问服务器进行验证,并且得到服务器证书

    1. **启用SSL**:在curl_easy_setopt中设置CURLOPT_SSL_VERIFYPEER和CURLOPT_SSL_VERIFYHOST选项,分别控制是否验证服务器证书和主机名。 2. **提供CA证书**:如果服务器使用的是自签名证书或者不在默认的CA根证书...

    跳过Https认证

    当跳过HTTPS的SSL验证时,Android应用会忽略服务器的证书验证,允许与任何服务器建立连接,无论其证书是否有效或是否由可信任的CA签发。这可能导致以下风险: 1. **数据泄露**:由于没有加密,通信内容可能被第三方...

    iOS 中对 HTTPS 证书链的验证 - 简书1

    开发者还可以通过自定义网络请求库或者使用`NSURLSession`的配置来实现更细粒度的证书验证控制,例如忽略某些特定的验证错误。 在实际开发中,如果遇到自签名证书或者企业内部证书的情况,可能需要在代码中添加特殊...

    oss.tar.gz,curl,oss,ssl

    在涉及到HTTPS通信时,"curl" 可以通过添加 `-k` 或 `--insecure` 参数来忽略SSL证书验证,这对于调试和测试自签名证书的服务器非常有用。不过,这在生产环境中应该避免,因为这将削弱安全性。 总结一下,本话题...

    Python pip install之SSL异常处理操作

    忽略SSL验证** 如果上述方法不可行,还可以选择禁用SSL验证。但请注意,这会降低安全性,只建议在测试环境中使用。可以使用以下命令临时禁用SSL验证: ```bash pip install --no-check-certificate ``` 或者在`...

    WebService绕过https证书认证方法.docx

    标题中的“WebService绕过https证书认证方法”是指在使用Java进行Web服务调用时,如何在忽略HTTPS证书验证的情况下访问Web服务。这通常用于开发和测试环境,因为在这些环境中,可能使用自签名证书或者未被公共信任的...

    https 访问操作

    2. **自定义主机名验证器**:`TrustAnyHostnameVerifier`实现了`HostnameVerifier`接口,用于验证连接到的主机名与服务器证书中的主机名是否匹配。在这里我们也选择信任所有主机名。 3. **建立SSL上下文**:通过`...

    Android使用OkHttp访问自签名证书的接口

    .hostnameVerifier((hostname, session) -&gt; true) // 忽略主机名验证 .build(); ``` 4. 使用OkHttpClient发起请求: ```java Request request = new Request.Builder() .url("https://your-self-signed-url")...

    HttpsTest:Https的方式请求网络,包括需要证书验证,和不需要证书验证两种

    1. **禁用证书验证**:在Java代码中,可以通过设置`HttpsURLConnection`的`setHostnameVerifier`方法来忽略主机名验证,或者设置`SSLContext`并使用自定义的`TrustManager`。 2. **安全风险**:不验证服务器证书会...

    okhttp关于https封装的几个工具类

    2. **自定义域名验证**:默认的OkHttpClient会进行标准的主机名验证,但有时我们需要自定义验证规则。可以通过实现HostnameVerifier接口来自定义这一过程。 3. **配置SSLContext**:SSLContext用于管理密钥和证书,...

    JAVA利用HttpClient进行POST请求(HTTPS)实例

    然后我们使用这个TrustManager初始化SSLContext,并创建了一个允许所有主机名验证的SSLSocketFactory。 接下来,我们需要编写一个类来利用HttpClient发送POST请求。这个类可以接收参数,如URL、请求头和请求体,...

    HttpClient Https实战

    5. 配置HTTP客户端的SSL参数:例如,设置主机名验证策略。 6. 发送请求并处理响应:使用HttpGet、HttpPost等方法发起请求,使用EntityUtils读取响应内容。 在实际应用中,我们还需要考虑性能优化,如设置合适的连接...

Global site tag (gtag.js) - Google Analytics