X-Git-Url: http://git.freeside.biz/gitweb/?a=blobdiff_plain;f=FS%2FFS%2FPassword_Mixin.pm;h=3129366c749ebadc9b3f5e76819bc3a082ed279c;hb=ec4b7d78854b287347eb08a8f99d18c5d41065f5;hp=bcad5463732a3773b84cdc06346d4c4257d365e2;hpb=0c66f548fe3c1a2e880c6672ff28a5c2da353057;p=freeside.git diff --git a/FS/FS/Password_Mixin.pm b/FS/FS/Password_Mixin.pm index bcad54637..3129366c7 100644 --- a/FS/FS/Password_Mixin.pm +++ b/FS/FS/Password_Mixin.pm @@ -61,14 +61,9 @@ sub is_password_allowed { $error = 'Invalid password - ' . $error if $error; return $error if $error; - #check against known usernames - my @disallowed_names = $self->password_disallowed_names; - foreach my $noname (@disallowed_names) { - if ($password =~ /$noname/i) { - #keeping message ambiguous to avoid leaking personal info - return 'Password contains a disallowed word'; - } - } + #check against service fields + $error = $self->password_svc_check($password); + return $error if $error; return '' unless $self->get($self->primary_key); # for validating new passwords pre-insert @@ -107,15 +102,15 @@ sub is_password_allowed { ''; } -=item password_disallowed_names +=item password_svc_check -Override to return a list additional words (eg usernames) not -to be used by passwords on this service. +Override to run additional service-specific password checks. =cut -sub password_disallowed_names { - return (); +sub password_svc_check { + my ($self, $password) = @_; + return ''; } =item password_history_key