@@ -85,7 +85,6 @@ def getPackagesListAPI(request):
8585 data_ret = {"status" : 0 ,'error_message' : "Could not authorize access to API" }
8686 json_data = json .dumps (data_ret )
8787 return HttpResponse (json_data )
88-
8988
9089@csrf_exempt
9190def getUserInfo (request ):
@@ -672,3 +671,69 @@ def submitUserCreation(request):
672671 data_ret = {'changeStatus' : 0 , 'error_message' : str (msg )}
673672 json_data = json .dumps (data_ret )
674673 return HttpResponse (json_data )
674+
675+ @csrf_exempt
676+ def addFirewallRule (request ):
677+ try :
678+ if request .method == 'POST' :
679+
680+ data = json .loads (request .body )
681+
682+ adminUser = data ['adminUser' ]
683+ adminPass = data ['adminPass' ]
684+
685+ admin = Administrator .objects .get (userName = adminUser )
686+
687+ if admin .api == 0 :
688+ data_ret = {"status" : 0 , 'error_message' : "API Access Disabled." }
689+ json_data = json .dumps (data_ret )
690+ return HttpResponse (json_data )
691+
692+ if hashPassword .check_password (admin .password , adminPass ):
693+ from firewall .firewallManager import FirewallManager
694+
695+ fm = FirewallManager ()
696+ return fm .addRule (admin .pk , json .loads (request .body ))
697+ else :
698+ data_ret = {"status" : 0 ,
699+ 'error_message' : "Could not authorize access to API" }
700+ json_data = json .dumps (data_ret )
701+ return HttpResponse (json_data )
702+
703+ except BaseException as msg :
704+ data_ret = {'submitUserDeletion' : 0 , 'error_message' : str (msg )}
705+ json_data = json .dumps (data_ret )
706+ return HttpResponse (json_data )
707+
708+ @csrf_exempt
709+ def deleteFirewallRule (request ):
710+ try :
711+ if request .method == 'POST' :
712+
713+ data = json .loads (request .body )
714+
715+ adminUser = data ['adminUser' ]
716+ adminPass = data ['adminPass' ]
717+
718+ admin = Administrator .objects .get (userName = adminUser )
719+
720+ if admin .api == 0 :
721+ data_ret = {"status" : 0 , 'error_message' : "API Access Disabled." }
722+ json_data = json .dumps (data_ret )
723+ return HttpResponse (json_data )
724+
725+ if hashPassword .check_password (admin .password , adminPass ):
726+ from firewall .firewallManager import FirewallManager
727+
728+ fm = FirewallManager ()
729+ return fm .deleteRule (admin .pk , json .loads (request .body ))
730+ else :
731+ data_ret = {"status" : 0 ,
732+ 'error_message' : "Could not authorize access to API" }
733+ json_data = json .dumps (data_ret )
734+ return HttpResponse (json_data )
735+
736+ except BaseException as msg :
737+ data_ret = {'submitUserDeletion' : 0 , 'error_message' : str (msg )}
738+ json_data = json .dumps (data_ret )
739+ return HttpResponse (json_data )
0 commit comments