35 lines
1.2 KiB
Python
35 lines
1.2 KiB
Python
import configparser
|
|
import os.path
|
|
from fedora.client import AccountSystem, AuthError
|
|
|
|
class GroupParser:
|
|
|
|
def __init__(self):
|
|
self.username = None
|
|
self.password = None
|
|
self.config = configparser.RawConfigParser()
|
|
try:
|
|
self.config.read('config.cfg')
|
|
self.username = self.config.get('FAS', 'user').strip('\'')
|
|
self.password = self.config.get('FAS', 'pass').strip('\'')
|
|
self.check_config()
|
|
except:
|
|
print("[*] Invalid / Missing Configuration file.")
|
|
def check_config(self):
|
|
if self.username.strip('\'') == 'FAS_USERNAME_HERE':
|
|
print("[*] Please enter FAS credentials in config.cfg")
|
|
return False
|
|
else:
|
|
return True
|
|
|
|
def group_users(self, group_name):
|
|
group_json = dict()
|
|
account = AccountSystem(username=self.username,
|
|
password=self.password)
|
|
try:
|
|
group_json = account.group_members(group_name)
|
|
except AuthError:
|
|
print("[*] Invalid Username / Password")
|
|
return 1
|
|
userlist = [user_desc['username'] for user_desc in group_json]
|
|
return userlist
|