Fixed some logic, added functions to list allowlist, and category. Category list function will need work, the subcategories are not being parsed at this time

This commit is contained in:
=
2025-08-28 09:06:25 -04:00
parent f94c3e432e
commit e51ed0543a
4 changed files with 96 additions and 25 deletions
+53 -1
View File
@@ -94,4 +94,56 @@ def listPolicies(url):
policyids.append(list['groupid'])
choice = input(ct.colorText("Select Policy Group: ", "white"))
choice = int(choice) - 1
return choice, policiesnames
return choice, policiesnames
def listAllowlists(url):
endpoint = url + '/v1/application'
print(ct.colorText("[+] Grabbing All Allowlists", "cyan"))
payload = {}
headers = {
"X-APIKey": os.getenv('APIKEY')
}
response = requests.request("POST", endpoint, headers=headers, data=payload, verify=False)
parse_text = json.loads(response.text)
policiesnames = []
policyids = []
for index, list in enumerate(parse_text['response']['applications'], start=1):
print(ct.colorText(f"{index}. {list['name']}", "yellow"))
policiesnames.append(list['name'])
policyids.append(list['applicationid'])
choice = int(input(ct.colorText("Select allowlist: ", "white")))
if choice < 38:
print(ct.colorText("Please only choose an allowlist designed for this use - '38+'","red"))
elif choice >= 38:
choice = int(choice) - 1
return choice, policiesnames
#Need else and catch for upper bound
def listCategories(url):
endpoint = url + '/v1/application/categories'
print(ct.colorText("[+] Grabbing All Categories", "cyan"))
payload = {}
headers = {
"X-APIKey": os.getenv('APIKEY')
}
response = requests.request("POST", endpoint, headers=headers, data=payload, verify=False)
parse_text = json.loads(response.text)
policiesnames = []
policyids = []
for index, list in enumerate(parse_text['response']['categories'], start=1):
print(ct.colorText(f"{index}. {list['name']}", "yellow"))
policiesnames.append(list['name'])
policyids.append(list['categoryid'])
choice = input(ct.colorText("Select Policy Group: ", "white"))
choice = int(choice) - 1
return choice, policiesnames
else:
print(ct.colorText("Please choose only 38 or Aboove", "red"))