diff options
author | Ivan Kohler <ivan@freeside.biz> | 2013-03-27 02:56:33 -0700 |
---|---|---|
committer | Ivan Kohler <ivan@freeside.biz> | 2013-03-27 02:56:33 -0700 |
commit | 24dee535417570307d82c5f5302c116dec9cf21f (patch) | |
tree | a48e960db4bf9ccc774faba26a00b1f0f7cff50a | |
parent | d234df9a0d62763d341508038dafd0df711de079 (diff) |
start of auth plugin work
-rw-r--r-- | FS/FS/Conf.pm | 8 | ||||
-rw-r--r-- | FS/FS/access_user/internal.pm | 15 | ||||
-rw-r--r-- | FS/FS/access_user/legacy.pm | 15 | ||||
-rw-r--r-- | eg/access_user-external_auth.pm | 27 |
4 files changed, 65 insertions, 0 deletions
diff --git a/FS/FS/Conf.pm b/FS/FS/Conf.pm index e8b3333de..869ce1e73 100644 --- a/FS/FS/Conf.pm +++ b/FS/FS/Conf.pm @@ -5423,6 +5423,14 @@ and customer address. Include units.', 'type' => 'checkbox', }, + { + 'key' => 'authentication_module', + 'section' => 'UI', + 'description' => '"Internal" is the default , which authenticates against the internal database. "Legacy" is similar, but matches passwords against a legacy htpasswd file.', + 'type' => 'select', + 'select_enum' => [qw( Internal Legacy )], + }, + { key => "apacheroot", section => "deprecated", description => "<b>DEPRECATED</b>", type => "text" }, { key => "apachemachine", section => "deprecated", description => "<b>DEPRECATED</b>", type => "text" }, { key => "apachemachines", section => "deprecated", description => "<b>DEPRECATED</b>", type => "text" }, diff --git a/FS/FS/access_user/internal.pm b/FS/FS/access_user/internal.pm new file mode 100644 index 000000000..94f932dee --- /dev/null +++ b/FS/FS/access_user/internal.pm @@ -0,0 +1,15 @@ +package FS::access_user::internal; +use base qw( FS::access_user ); + +use strict; + +sub authenticate { + my( $username, $check_password ) = @_; + + +} + +sub change_password { +} + +1; diff --git a/FS/FS/access_user/legacy.pm b/FS/FS/access_user/legacy.pm new file mode 100644 index 000000000..f8dcdc015 --- /dev/null +++ b/FS/FS/access_user/legacy.pm @@ -0,0 +1,15 @@ +package FS::access_user::legacy; +use base qw( FS::access_user ); #::internal ? + +use strict; + +sub authenticate { + my( $username, $check_password ) = @_; + + +} + +sub change_password { +} + +1; diff --git a/eg/access_user-external_auth.pm b/eg/access_user-external_auth.pm new file mode 100644 index 000000000..2cea1d3ca --- /dev/null +++ b/eg/access_user-external_auth.pm @@ -0,0 +1,27 @@ +package FS::access_user::external_auth; +use base qw( FS::access_user ); + +use strict; + +sub authenticate { + my( $username, $check_password ) = @_; + + #magic happens here + + if ( $auth_good ) { #verbose for clarity + return 1; + } else { + return 0; + } + +} + +#omitting these subroutines will eliminate + +#sub create_user { +# + +#sub change_password { +#} + +1; |