RustImplementation #23

Merged
mysticmomba merged 118 commits from RustImplementation into master 2025-11-04 18:13:24 -05:00
Showing only changes of commit 74b3f7b2e1 - Show all commits
+28 -5
View File
@@ -108,19 +108,24 @@ def getPolicyAllowlists(url, groupid):
return data
def getPolicyName(url, groupid):
endpoint = url + '/v1/group/'
payload = {
}
payload = {}
headers = {"X-APIKey": os.getenv('APIKEY')}
payload = json.dumps(payload)
response = requests.post(endpoint, headers=headers, data=payload, verify=False)
result = json.loads(response.text)
data = pd.DataFrame(result["response"]["groups"])
name = data.loc[data['groupid'] == f"{groupid}", 'name'].values[0]
# Safely attempt to get the policy name
filtered = data.loc[data['groupid'] == str(groupid), 'name']
if not filtered.empty:
name = filtered.values[0]
else:
name = None # or "Unknown", depending on your preference
return name
@@ -193,6 +198,24 @@ def findAllAgents(url):
response = requests.post(endpoint, headers=headers, data=payload, verify=False)
result = json.loads(response.text)
data = pd.DataFrame(result["response"]["agents"])
group_ids = sorted(data['groupid'].unique().tolist())
group_policy_map = {}
for groupid in group_ids:
policy_name = getPolicyName(url, groupid)
group_policy_map[groupid] = policy_name
data['policy_name'] = data['groupid'].map(group_policy_map)
status_map = {
0: 'Offline',
1: 'Online',
2: 'Hidden',
3: 'Safemode'
}
data['status'] = data['status'].map(status_map)
return(data)
def findAgents(url, device_input_str):