From 160076afcf18eebb599140b4627cb0ab9aedbdc2 Mon Sep 17 00:00:00 2001 From: Tobias Kurze Date: Fri, 7 Aug 2020 16:47:33 +0200 Subject: [PATCH] slight changes to config --- backend/api/user_api.py | 3 +++ backend/config.py | Bin 6514 -> 6696 bytes 2 files changed, 3 insertions(+) diff --git a/backend/api/user_api.py b/backend/api/user_api.py index c489b26..52cfef6 100644 --- a/backend/api/user_api.py +++ b/backend/api/user_api.py @@ -137,6 +137,9 @@ class UserResource(Resource): """Fetch a user given its identifier""" user = User.get_by_id(id) if user is not None: + if str(user.role) == str(Config.Roles.ADMIN): + print("role deletion forbidden") + return api_user.abort(403, message="It is not allowed to delete role admin users!") db.session.delete(user) db.session.commit() return "ok" diff --git a/backend/config.py b/backend/config.py index 50500f7b847615a6ff1290dcbbaf766c6cf1472d..513a3c80e3bdc6faca67154942661e82872b5600 100644 GIT binary patch literal 6696 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 literal 6514 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