def report_on_perm_differences(self, program_list):
perms = defaultdict(dict)
for program in program_list:
program_name = program['data']['attributes']['handle']
for member in program['data']['relationships']['members']['data']:
username = member['relationships']['user']['data']['attributes']['username']
permissions = member['attributes']['permissions']
perms[username][program_name] = set(permissions)
for user in perms:
handled = False
for program in perms[user]:
other_programs = set(perms[user].keys()) - set([program])
for other_program in other_programs:
if perms[user][program] != perms[user][other_program]:
self.stdout.write(f'Mismatching perms for {user}:')
self.stdout.write(f' {program}: {perms[user][program]}')
self.stdout.write(f' {other_program}: {perms[user][other_program]}')
handled = True
if handled:
break
report_on_user_groups.py 文件源码
python
阅读 29
收藏 0
点赞 0
评论 0
评论列表
文章目录