From c90a529450dd85902449788fd83940471be50377 Mon Sep 17 00:00:00 2001 From: Ivan Kohler Date: Fri, 5 Feb 2016 09:29:14 -0800 Subject: [PATCH] option to disable password checks for an agent, RT#40236 --- FS/FS/Conf.pm | 8 ++++++++ FS/FS/Password_Mixin.pm | 4 +++- 2 files changed, 11 insertions(+), 1 deletion(-) diff --git a/FS/FS/Conf.pm b/FS/FS/Conf.pm index 0e89008af..e9d0ee690 100644 --- a/FS/FS/Conf.pm +++ b/FS/FS/Conf.pm @@ -4270,6 +4270,14 @@ and customer address. Include units.', }, { + 'key' => 'password-insecure', + 'section' => 'password', + 'description' => 'Disable all password security checks and allow entry of insecure passwords. NOT RECOMMENDED.', + 'type' => 'checkbox', + 'per_agent' => 1, + }, + + { 'key' => 'datavolume-forcemegabytes', 'section' => 'UI', 'description' => 'All data volumes are expressed in megabytes', diff --git a/FS/FS/Password_Mixin.pm b/FS/FS/Password_Mixin.pm index ee038db5a..a27dd5453 100644 --- a/FS/FS/Password_Mixin.pm +++ b/FS/FS/Password_Mixin.pm @@ -45,6 +45,9 @@ sub is_password_allowed { my $self = shift; my $password = shift; + my $cust_main = $self->cust_main; + return '' if $cust_main && $conf->config_bool('password-insecure', $cust_main->agentnum); + # basic checks using Data::Password; # options for Data::Password $DICTIONARY = 4; # minimum length of disallowed words @@ -70,7 +73,6 @@ sub is_password_allowed { return '' unless $self->get($self->primary_key); # for validating new passwords pre-insert #check against customer fields - my $cust_main = $self->cust_main; if ($cust_main) { my @words; # words from cust_main -- 2.11.0