Uploaded image for project: 'HttpComponents HttpClient'
  1. HttpComponents HttpClient
  2. HTTPCLIENT-1752

Allow to configure the OSGI clients with relaxed SSL checks

    XMLWordPrintableJSON

Details

    • New Feature
    • Status: Resolved
    • Major
    • Resolution: Fixed
    • 4.5.2
    • 5.0 Alpha2
    • HttpClient (classic)
    • None

    Description

      In deployments other than production (e.g. dev, qa, integration testing, etc.) it is often useful to deploy self-signed certificates instead of certificates signed by a trusted CA for cost and simplicity reasons.

      By default, the http client does not validate a self signed certificate because it is not signed by a trusted CA root.

      One way to have the http client to validate the self signed certificate is to add the self-signed certificate (or the detached CA root that signed it) in the java trustore.
      This operation is a configuration only change (no need to change code) however it typically requires accessing the FS and the scope of trust can't be easily modified at runtime.

      Another way to have the http client to validate the self signed certificate is to use the TrustSelfSignedStrategy [0] strategy when building the http client.
      This requires modifying the code.

      In order to use the second approach without modifying code, it would be interesting to allow configuring a set of URIs for which the relaxed SSL mode should be used.

      The configuration could be implemented similarly to the implementation of the central prox configuration (OSGI) in HTTPCLIENT-1238. In addition to allowing sel-signed certificates, the configuration could as well allow to skip FQDN check using the NoopHostnameVerifier [1].
      Of course, this feature must not be deployed in production environment as it is totally insecure.

      [0] https://hc.apache.org/httpcomponents-client-ga/httpclient/apidocs/org/apache/http/conn/ssl/TrustSelfSignedStrategy.html
      [1] https://hc.apache.org/httpcomponents-client-ga/httpclient/apidocs/org/apache/http/conn/ssl/NoopHostnameVerifier.html

      Attachments

        1. HTTPCLIENT-1752_initial.patch
          21 kB
          Simone Tripodi

        Activity

          People

            simone.tripodi Simone Tripodi
            marett Timothee Maret
            Votes:
            0 Vote for this issue
            Watchers:
            4 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved: