diff options
author | Frederick Muriuki Muriithi | 2025-07-31 16:15:01 -0500 |
---|---|---|
committer | Frederick Muriuki Muriithi | 2025-07-31 16:15:01 -0500 |
commit | f275b3ab6172922cef97822804e54e6513937c2a (patch) | |
tree | 65400d5ae4629a5fedf78802b96f14d89fdc3315 | |
parent | 56378b428b6bc50927fe226539c4d6ad8814b7d2 (diff) | |
download | gn-auth-f275b3ab6172922cef97822804e54e6513937c2a.tar.gz |
Prevent error in case sysadmin user already has access
In case any sysadmin user has access to the resource, we do not want the query failing for other sysadmins.
-rw-r--r-- | gn_auth/auth/authorisation/resources/common.py | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/gn_auth/auth/authorisation/resources/common.py b/gn_auth/auth/authorisation/resources/common.py index 5a48704..fd358f1 100644 --- a/gn_auth/auth/authorisation/resources/common.py +++ b/gn_auth/auth/authorisation/resources/common.py @@ -42,6 +42,7 @@ def grant_access_to_sysadmins( cursor.executemany( "INSERT INTO user_roles(user_id, role_id, resource_id) " - "VALUES (?, ?, ?)", + "VALUES (?, ?, ?) " + "ON CONFLICT (user_id, role_id, resource_id) DO NOTHING", tuple((row["user_id"], sysadminroleid, str(resource_id)) for row in cursor.fetchall())) |