From: Ivan Kohler Date: Sat, 26 Mar 2016 21:37:37 +0000 (-0700) Subject: webservice infrastructure, RT#33849 X-Git-Url: http://git.freeside.biz/gitweb/?p=freeside.git;a=commitdiff_plain;h=db27e4da24fa49d91215bd8ef7a05895fa58c0f6 webservice infrastructure, RT#33849 --- diff --git a/FS/FS/ClientAPI/Freeside.pm b/FS/FS/ClientAPI/Freeside.pm index 90fa55018..dcd3ed6e9 100644 --- a/FS/FS/ClientAPI/Freeside.pm +++ b/FS/FS/ClientAPI/Freeside.pm @@ -8,7 +8,7 @@ use FS::svc_external; use FS::webservice_log; #$DEBUG = 0; -#$me = '[FS::ClientAPI::PrepaidPhone]'; +#$me = '[FS::ClientAPI:Freeside]'; # inputs: # support-key @@ -17,6 +17,7 @@ use FS::webservice_log; # # returns: # error (empty, or error message) +# custnum sub freesideinc_service { my $packet = shift; @@ -36,8 +37,12 @@ sub freesideinc_service { '_password' => $_password, }, 'extra_sql' => "AND svcpart = $svcpart", - }) - or return { 'error' => 'bad support-key' }; + }); + unless ( $svc_external ) { + warn "bad support-key for $username from $ENV{REMOTE_IP}\n"; + sleep 5; #ideally also rate-limit and eventually ban their IP + return { 'error' => 'bad support-key' }; + } #XXX check if some customers can use some API calls, rate-limiting, etc. # but for now, everybody can use everything