logstash-mixin-http_client 7.3.0 → 7.4.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/CHANGELOG.md +3 -0
- data/lib/logstash/plugin_mixins/http_client.rb +10 -0
- data/logstash-mixin-http_client.gemspec +1 -1
- data/spec/plugin_mixin/http_client_ssl_spec.rb +26 -0
- metadata +2 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 37d1b2f6c38db9be11cb37da743556d46e05f6f5e100239c18c9e0b56b8e9607
|
4
|
+
data.tar.gz: 1faae938aabfa08c0a958a5a74b4993917326caf4040beedb58dafe84af62ff4
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 283e5c0e7346f8b0051b387805ba379792a822adbf542b61c00fd2fab00de8e0e9e36121ba7234f5ba906fc7e1e6428f7343131cbaf1597e39b03004963004ee
|
7
|
+
data.tar.gz: 053f697103912ce7767f9d62797e002e9d7d6f468d34c66fffa43854cdaf7789d092563757bae1a566e4441ff11f3da468270ce16c457b17ee85b1731e727954
|
data/CHANGELOG.md
CHANGED
@@ -1,3 +1,6 @@
|
|
1
|
+
## 7.4.0
|
2
|
+
- Adds new `ssl_enabled` setting for enabling/disabling the SSL configurations [#44](https://github.com/logstash-plugins/logstash-mixin-http_client/pull/44)
|
3
|
+
|
1
4
|
## 7.3.0
|
2
5
|
- Adds standardized SSL settings and deprecates their non-standard counterparts. Deprecated settings will continue to work, and will provide pipeline maintainers with guidance toward using their standardized counterparts [#42](https://github.com/logstash-plugins/logstash-mixin-http_client/pull/42)
|
3
6
|
- Adds new `ssl_truststore_path`, `ssl_truststore_password`, and `ssl_truststore_type` settings for configuring SSL-trust using a PKCS-12 or JKS trust store, deprecating their `truststore`, `truststore_password`, and `truststore_type` counterparts.
|
@@ -75,6 +75,9 @@ module LogStash::PluginMixins::HttpClient
|
|
75
75
|
# See https://hc.apache.org/httpcomponents-client-ga/httpclient/apidocs/org/apache/http/impl/conn/PoolingHttpClientConnectionManager.html#setValidateAfterInactivity(int)[these docs for more info]
|
76
76
|
base.config :validate_after_inactivity, :validate => :number, :default => 200
|
77
77
|
|
78
|
+
# Enable/disable the SSL configurations
|
79
|
+
base.config :ssl_enabled, :validate => :boolean, :default => true
|
80
|
+
|
78
81
|
# If you need to use a custom X.509 CA (.pem certs) specify the path to that here
|
79
82
|
base.config :ssl_certificate_authorities, :validate => :path, :list => :true
|
80
83
|
|
@@ -188,6 +191,13 @@ module LogStash::PluginMixins::HttpClient
|
|
188
191
|
def ssl_options
|
189
192
|
|
190
193
|
options = {}
|
194
|
+
|
195
|
+
unless @ssl_enabled
|
196
|
+
ignored_ssl_settings = original_params.select { |k| k != 'ssl_enabled' && k.start_with?('ssl_') }
|
197
|
+
self.logger.warn("Configured SSL settings are not used when `ssl_enabled` is set to `false`: #{ignored_ssl_settings.keys}") if ignored_ssl_settings.any?
|
198
|
+
return options
|
199
|
+
end
|
200
|
+
|
191
201
|
if @ssl_certificate_authorities&.any?
|
192
202
|
raise LogStash::ConfigurationError, 'Multiple values on `ssl_certificate_authorities` are not supported by this plugin' if @ssl_certificate_authorities.size > 1
|
193
203
|
|
@@ -1,6 +1,6 @@
|
|
1
1
|
Gem::Specification.new do |s|
|
2
2
|
s.name = 'logstash-mixin-http_client'
|
3
|
-
s.version = '7.
|
3
|
+
s.version = '7.4.0'
|
4
4
|
s.licenses = ['Apache License (2.0)']
|
5
5
|
s.summary = "AWS mixins to provide a unified interface for Amazon Webservice"
|
6
6
|
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 gemname. This gem is not a stand-alone program"
|
@@ -339,6 +339,32 @@ shared_examples 'a client with standardized ssl options' do
|
|
339
339
|
end
|
340
340
|
end
|
341
341
|
end
|
342
|
+
|
343
|
+
describe 'with ssl_enabled' do
|
344
|
+
context 'set to false' do
|
345
|
+
let(:basic_config) { super().merge('ssl_enabled' => false) }
|
346
|
+
let(:plugin) { plugin_class.new(basic_config) }
|
347
|
+
|
348
|
+
it 'should not configure the client :ssl' do
|
349
|
+
expect(plugin.client_config[:ssl]).to eq({})
|
350
|
+
end
|
351
|
+
|
352
|
+
context 'and another ssl_* config set' do
|
353
|
+
let(:basic_config) { super().merge('ssl_verification_mode' => 'none') }
|
354
|
+
let(:logger_mock) { double('logger') }
|
355
|
+
|
356
|
+
before(:each) do
|
357
|
+
allow(plugin).to receive(:logger).and_return(logger_mock)
|
358
|
+
end
|
359
|
+
|
360
|
+
it 'should log a warn message' do
|
361
|
+
allow(logger_mock).to receive(:warn)
|
362
|
+
plugin.client_config
|
363
|
+
expect(logger_mock).to have_received(:warn).with('Configured SSL settings are not used when `ssl_enabled` is set to `false`: ["ssl_verification_mode"]')
|
364
|
+
end
|
365
|
+
end
|
366
|
+
end
|
367
|
+
end
|
342
368
|
end
|
343
369
|
end
|
344
370
|
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: logstash-mixin-http_client
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 7.
|
4
|
+
version: 7.4.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Elastic
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date:
|
11
|
+
date: 2024-06-17 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
requirement: !ruby/object:Gem::Requirement
|