diff --git a/CHANGELOG.md b/CHANGELOG.md index 7f3b71d..23ce20c 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,3 +1,6 @@ +## 1.4.0 + - Feat: added ssl_supported_protocols option [#38](https://github.com/logstash-plugins/logstash-filter-http/pull/38) + ## 1.3.0 - Feat: support ssl_verification_mode option [#37](https://github.com/logstash-plugins/logstash-filter-http/pull/37) diff --git a/docs/index.asciidoc b/docs/index.asciidoc index 87dbc93..3ede865 100644 --- a/docs/index.asciidoc +++ b/docs/index.asciidoc @@ -72,6 +72,7 @@ There are also multiple configuration options related to the HTTP connectivity: | <> |<>|No | <> |<>|No | <> |<>|No +| <> |<>|No | <> |<>|No | <> |a valid filesystem path|No | <> |<>|No @@ -326,12 +327,29 @@ If `automatic_retries` is enabled this will cause non-idempotent HTTP verbs (suc Timeout (in seconds) to wait for data on the socket. Default is `10s` +[id="plugins-{type}s-{plugin}-ssl_supported_protocols"] +===== `ssl_supported_protocols` + + * Value type is <> + * Allowed values are: `'TLSv1.1'`, `'TLSv1.2'`, `'TLSv1.3'` + * Default depends on the JDK being used. With up-to-date Logstash, the default is `['TLSv1.2', 'TLSv1.3']`. + `'TLSv1.1'` is not considered secure and is only provided for legacy applications. + +List of allowed SSL/TLS versions to use when establishing a connection to the HTTP endpoint. + +For Java 8 `'TLSv1.3'` is supported only since **8u262** (AdoptOpenJDK), but requires that you set the +`LS_JAVA_OPTS="-Djdk.tls.client.protocols=TLSv1.3"` system property in Logstash. + +NOTE: If you configure the plugin to use `'TLSv1.1'` on any recent JVM, such as the one packaged with Logstash, +the protocol is disabled by default and needs to be enabled manually by changing `jdk.tls.disabledAlgorithms` in +the *$JDK_HOME/conf/security/java.security* configuration file. That is, `TLSv1.1` needs to be removed from the list. + [id="plugins-{type}s-{plugin}-ssl_verification_mode"] ===== `ssl_verification_mode` -* Value type is <> -* Supported values are: `full`, `none` -* Default value is `full` + * Value type is <> + * Supported values are: `full`, `none` + * Default value is `full` Controls the verification of server certificates. The `full` option verifies that the provided certificate is signed by a trusted authority (CA) diff --git a/logstash-filter-http.gemspec b/logstash-filter-http.gemspec index ee43889..9e06698 100644 --- a/logstash-filter-http.gemspec +++ b/logstash-filter-http.gemspec @@ -1,6 +1,6 @@ Gem::Specification.new do |s| s.name = 'logstash-filter-http' - s.version = '1.3.0' + s.version = '1.4.0' s.licenses = ['Apache License (2.0)'] s.summary = 'This filter requests data from a RESTful Web Service.' s.description = 'This gem is a logstash plugin required to be installed on top of the Logstash core pipeline using $LS_HOME/bin/logstash-plugin install logstash-filter-http. This gem is not a stand-alone program' @@ -28,7 +28,7 @@ Gem::Specification.new do |s| # Gem dependencies s.add_runtime_dependency 'logstash-core-plugin-api', '>= 1.60', '<= 2.99' s.add_runtime_dependency 'logstash-mixin-ecs_compatibility_support', '~>1.2' - s.add_runtime_dependency "logstash-mixin-http_client", ">= 7.1.0", '< 9.0.0' + s.add_runtime_dependency "logstash-mixin-http_client", ">= 7.2.0", '< 9.0.0' s.add_runtime_dependency 'logstash-mixin-validator_support', '~> 1.0' s.add_development_dependency 'logstash-devutils'