From 5a64d7530c1cb1eab9067bacb4931075a3dc4dcd Mon Sep 17 00:00:00 2001 From: Jana Cupova Date: Feb 10 2023 12:27:53 +0000 Subject: Admin user cannot revoke admin permission by self Fixes: https://pagure.io/koji/issue/3681 --- diff --git a/kojihub/kojihub.py b/kojihub/kojihub.py index 4ed88a7..1a913bd 100644 --- a/kojihub/kojihub.py +++ b/kojihub/kojihub.py @@ -12599,6 +12599,8 @@ class RootExports(object): if perm['name'] not in koji.auth.get_user_perms(user_id): raise koji.GenericError('user %s does not have permission: %s' % (userinfo, perm['name'])) + if (user_id == self.getLoggedInUser()['id']) and permission == 'admin': + raise koji.GenericError('Admin user cannot revoke admin permission by self') update = UpdateProcessor('user_perms', values=locals(), clauses=["user_id = %(user_id)i", "perm_id = %(perm_id)i"]) update.make_revoke()