Skip to content

Commit 6ca07fb

Browse files
committed
Imported ValidatedPasswordSetting instead of aliasing to existing ValidatedPassword
1 parent 61da02c commit 6ca07fb

File tree

3 files changed

+5
-48
lines changed

3 files changed

+5
-48
lines changed

logstash-core/lib/logstash/settings.rb

Lines changed: 1 addition & 44 deletions
Original file line numberDiff line numberDiff line change
@@ -437,50 +437,7 @@ def validate(value)
437437

438438
java_import org.logstash.settings.NullableStringSetting
439439
java_import org.logstash.settings.PasswordSetting
440-
ValidatedPassword = org.logstash.settings.ValidatedPasswordSetting
441-
442-
# class ValidatedPassword < Setting::PasswordSetting
443-
# def initialize(name, value, password_policies)
444-
# @password_policies = password_policies
445-
# super(name, value, true)
446-
# end
447-
#
448-
# def coerce(password)
449-
# if password && !password.kind_of?(::LogStash::Util::Password)
450-
# raise(ArgumentError, "Setting `#{name}` could not coerce LogStash::Util::Password value to password")
451-
# end
452-
#
453-
# policies = build_password_policies
454-
# validatedResult = LogStash::Util::PasswordValidator.new(policies).validate(password.value)
455-
# if validatedResult.length() > 0
456-
# if @password_policies.fetch(:mode).eql?("WARN")
457-
# logger.warn("Password #{validatedResult}.")
458-
# else
459-
# raise(ArgumentError, "Password #{validatedResult}.")
460-
# end
461-
# end
462-
# password
463-
# end
464-
#
465-
# def build_password_policies
466-
# policies = {}
467-
# policies[Util::PasswordPolicyType::EMPTY_STRING] = Util::PasswordPolicyParam.new
468-
# policies[Util::PasswordPolicyType::LENGTH] = Util::PasswordPolicyParam.new("MINIMUM_LENGTH", @password_policies.dig(:length, :minimum).to_s)
469-
# if @password_policies.dig(:include, :upper).eql?("REQUIRED")
470-
# policies[Util::PasswordPolicyType::UPPER_CASE] = Util::PasswordPolicyParam.new
471-
# end
472-
# if @password_policies.dig(:include, :lower).eql?("REQUIRED")
473-
# policies[Util::PasswordPolicyType::LOWER_CASE] = Util::PasswordPolicyParam.new
474-
# end
475-
# if @password_policies.dig(:include, :digit).eql?("REQUIRED")
476-
# policies[Util::PasswordPolicyType::DIGIT] = Util::PasswordPolicyParam.new
477-
# end
478-
# if @password_policies.dig(:include, :symbol).eql?("REQUIRED")
479-
# policies[Util::PasswordPolicyType::SYMBOL] = Util::PasswordPolicyParam.new
480-
# end
481-
# policies
482-
# end
483-
# end
440+
java_import org.logstash.settings.ValidatedPasswordSetting
484441

485442
# The CoercibleString allows user to enter any value which coerces to a String.
486443
# For example for true/false booleans; if the possible_strings are ["foo", "true", "false"]

logstash-core/lib/logstash/webserver.rb

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -150,7 +150,7 @@ def initialize(logger, agent, options = {})
150150
username = options[:auth_basic].fetch(:username)
151151
password = options[:auth_basic].fetch(:password)
152152
password_policies = options[:auth_basic].fetch(:password_policies)
153-
validated_password = Setting::ValidatedPassword.new("api.auth.basic.password", password, password_policies).freeze
153+
validated_password = Setting::ValidatedPasswordSetting.new("api.auth.basic.password", password, password_policies).freeze
154154
app = Rack::Auth::Basic.new(app, "logstash-api") { |u, p| u == username && p == validated_password.value.value }
155155
end
156156

logstash-core/spec/logstash/settings_spec.rb

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -283,20 +283,20 @@
283283
context "when running PasswordValidator coerce" do
284284
it "raises an error when supplied value is not LogStash::Util::Password" do
285285
expect {
286-
LogStash::Setting::ValidatedPassword.new("test.validated.password", "testPassword", password_policies)
286+
LogStash::Setting::ValidatedPasswordSetting.new("test.validated.password", "testPassword", password_policies)
287287
}.to raise_error(IllegalArgumentException, a_string_including("Setting `test.validated.password` could not coerce LogStash::Util::Password value to password"))
288288
end
289289

290290
it "fails on validation" do
291291
password = LogStash::Util::Password.new("Password!")
292292
expect {
293-
LogStash::Setting::ValidatedPassword.new("test.validated.password", password, password_policies)
293+
LogStash::Setting::ValidatedPasswordSetting.new("test.validated.password", password, password_policies)
294294
}.to raise_error(IllegalArgumentException, a_string_including("Password must contain at least one digit between 0 and 9."))
295295
end
296296

297297
it "validates the password successfully" do
298298
password = LogStash::Util::Password.new("Password123!")
299-
expect(LogStash::Setting::ValidatedPassword.new("test.validated.password", password, password_policies)).to_not be_nil
299+
expect(LogStash::Setting::ValidatedPasswordSetting.new("test.validated.password", password, password_policies)).to_not be_nil
300300
end
301301
end
302302
end

0 commit comments

Comments
 (0)