From: Ivan Kohler Date: Sat, 26 Mar 2016 21:37:38 +0000 (-0700) Subject: webservice infrastructure, RT#33849 X-Git-Url: http://git.freeside.biz/gitweb/?a=commitdiff_plain;h=4426278dd2f0c1f037cb67eb23d43be2a68b6224;p=freeside.git 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