logstash-input-elasticsearch 4.15.0 → 4.16.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/docs/index.asciidoc +15 -0
- data/lib/logstash/inputs/elasticsearch.rb +10 -0
- data/logstash-input-elasticsearch.gemspec +1 -1
- data/spec/inputs/elasticsearch_spec.rb +8 -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: 1c5466b50a56ec047ac20dc019d9e24862756b518613b63edf44583900a090e2
|
4
|
+
data.tar.gz: 6b3915bd640318ebd6fa4b87f676d7e43d4fba7fe54893efdb6eb39f70481da8
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 930202045f30125060cce1f3d45b22c0336976a6cdcbf5931f4b98410785bd425cf665224edfe4994953ad2d53cdaa994b31be9db86fd05f538a722ff788ba97
|
7
|
+
data.tar.gz: 8cf1f45481575f653867831ab38fb7efd286c12432b2afc2c6940c32d4eb91f913dd7b89c284ed4e11e9205536cc75b318f399b92136777f84ac6dec75d2de2d
|
data/CHANGELOG.md
CHANGED
@@ -1,3 +1,6 @@
|
|
1
|
+
## 4.16.0
|
2
|
+
- Added `ssl_certificate_verification` option to control SSL certificate verification [#180](https://github.com/logstash-plugins/logstash-input-elasticsearch/pull/180)
|
3
|
+
|
1
4
|
## 4.15.0
|
2
5
|
- Feat: add `retries` option. allow retry for failing query [#179](https://github.com/logstash-plugins/logstash-input-elasticsearch/pull/179)
|
3
6
|
|
data/docs/index.asciidoc
CHANGED
@@ -122,6 +122,7 @@ This plugin supports the following configuration options plus the <<plugins-{typ
|
|
122
122
|
| <<plugins-{type}s-{plugin}-size>> |<<number,number>>|No
|
123
123
|
| <<plugins-{type}s-{plugin}-slices>> |<<number,number>>|No
|
124
124
|
| <<plugins-{type}s-{plugin}-ssl>> |<<boolean,boolean>>|No
|
125
|
+
| <<plugins-{type}s-{plugin}-ssl_certificate_verification>> |<<boolean,boolean>>|No
|
125
126
|
| <<plugins-{type}s-{plugin}-socket_timeout_seconds>> | <<number,number>>|No
|
126
127
|
| <<plugins-{type}s-{plugin}-target>> | {logstash-ref}/field-references-deepdive.html[field reference] | No
|
127
128
|
| <<plugins-{type}s-{plugin}-retries>> | <<number,number>>|No
|
@@ -414,6 +415,20 @@ instructions into the query.
|
|
414
415
|
If enabled, SSL will be used when communicating with the Elasticsearch
|
415
416
|
server (i.e. HTTPS will be used instead of plain HTTP).
|
416
417
|
|
418
|
+
[id="plugins-{type}s-{plugin}-ssl_certificate_verification"]
|
419
|
+
===== `ssl_certificate_verification`
|
420
|
+
|
421
|
+
* Value type is <<boolean,boolean>>
|
422
|
+
* Default value is `true`
|
423
|
+
|
424
|
+
Option to validate the server's certificate. Disabling this severely compromises security.
|
425
|
+
When certificate validation is disabled, this plugin implicitly trusts the machine
|
426
|
+
resolved at the given address without validating its proof-of-identity.
|
427
|
+
In this scenario, the plugin can transmit credentials to or process data from an untrustworthy
|
428
|
+
man-in-the-middle or other compromised infrastructure.
|
429
|
+
More information on the importance of certificate verification:
|
430
|
+
**https://www.cs.utexas.edu/~shmat/shmat_ccs12.pdf**.
|
431
|
+
|
417
432
|
[id="plugins-{type}s-{plugin}-socket_timeout_seconds"]
|
418
433
|
===== `socket_timeout_seconds`
|
419
434
|
|
@@ -190,6 +190,11 @@ class LogStash::Inputs::Elasticsearch < LogStash::Inputs::Base
|
|
190
190
|
# SSL Certificate Authority file in PEM encoded format, must also include any chain certificates as necessary
|
191
191
|
config :ca_file, :validate => :path
|
192
192
|
|
193
|
+
# Option to validate the server's certificate. Disabling this severely compromises security.
|
194
|
+
# For more information on the importance of certificate verification please read
|
195
|
+
# https://www.cs.utexas.edu/~shmat/shmat_ccs12.pdf
|
196
|
+
config :ssl_certificate_verification, :validate => :boolean, :default => true
|
197
|
+
|
193
198
|
# Schedule of when to periodically run statement, in Cron format
|
194
199
|
# for example: "* * * * *" (execute query every minute, on the minute)
|
195
200
|
#
|
@@ -432,6 +437,11 @@ class LogStash::Inputs::Elasticsearch < LogStash::Inputs::Base
|
|
432
437
|
ssl_options[:ssl] = true if @ssl
|
433
438
|
ssl_options[:ca_file] = @ca_file if @ssl && @ca_file
|
434
439
|
ssl_options[:trust_strategy] = trust_strategy_for_ca_trusted_fingerprint
|
440
|
+
if @ssl && !@ssl_certificate_verification
|
441
|
+
logger.warn "You have enabled encryption but DISABLED certificate verification, " +
|
442
|
+
"to make sure your data is secure remove `ssl_certificate_verification => false`"
|
443
|
+
ssl_options[:verify] = :disable
|
444
|
+
end
|
435
445
|
|
436
446
|
ssl_options
|
437
447
|
end
|
@@ -1,7 +1,7 @@
|
|
1
1
|
Gem::Specification.new do |s|
|
2
2
|
|
3
3
|
s.name = 'logstash-input-elasticsearch'
|
4
|
-
s.version = '4.
|
4
|
+
s.version = '4.16.0'
|
5
5
|
s.licenses = ['Apache License (2.0)']
|
6
6
|
s.summary = "Reads query results from an Elasticsearch cluster"
|
7
7
|
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"
|
@@ -698,6 +698,14 @@ describe LogStash::Inputs::Elasticsearch, :ecs_compatibility_support do
|
|
698
698
|
expect { plugin.register }.to raise_error LogStash::ConfigurationError, /Multiple authentication options are specified/
|
699
699
|
end
|
700
700
|
end
|
701
|
+
|
702
|
+
context 'ssl verification disabled' do
|
703
|
+
let(:config) { super().merge({ 'ssl_certificate_verification' => false }) }
|
704
|
+
it 'should warn data security risk' do
|
705
|
+
expect(plugin.logger).to receive(:warn).once.with("You have enabled encryption but DISABLED certificate verification, to make sure your data is secure remove `ssl_certificate_verification => false`")
|
706
|
+
plugin.register
|
707
|
+
end
|
708
|
+
end
|
701
709
|
end
|
702
710
|
end if LOGSTASH_VERSION > '6.0'
|
703
711
|
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: logstash-input-elasticsearch
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 4.
|
4
|
+
version: 4.16.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Elastic
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2022-08-
|
11
|
+
date: 2022-08-12 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
requirement: !ruby/object:Gem::Requirement
|