diff options
| author | Marie <marie@kaifa.ch> | 2023-10-31 21:31:41 +0100 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2023-10-31 21:31:41 +0100 |
| commit | c44b261bef0b6dee8933b6b789a5bc177367dada (patch) | |
| tree | a08e581d071bed1526996cc796c876750d542aeb /packages/backend/src/server/api/ApiCallService.ts | |
| parent | merge: fix file sorting on user notes (#122) (diff) | |
| parent | merge: locales (diff) | |
| download | sharkey-c44b261bef0b6dee8933b6b789a5bc177367dada.tar.gz sharkey-c44b261bef0b6dee8933b6b789a5bc177367dada.tar.bz2 sharkey-c44b261bef0b6dee8933b6b789a5bc177367dada.zip | |
merge: upstream changes (#123)
Diffstat (limited to 'packages/backend/src/server/api/ApiCallService.ts')
| -rw-r--r-- | packages/backend/src/server/api/ApiCallService.ts | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/packages/backend/src/server/api/ApiCallService.ts b/packages/backend/src/server/api/ApiCallService.ts index 085a0fd58a..66f171a5d8 100644 --- a/packages/backend/src/server/api/ApiCallService.ts +++ b/packages/backend/src/server/api/ApiCallService.ts @@ -318,8 +318,9 @@ export class ApiCallService implements OnApplicationShutdown { } if (ep.meta.requireRolePolicy != null && !user!.isRoot) { + const myRoles = await this.roleService.getUserRoles(user!.id); const policies = await this.roleService.getUserPolicies(user!.id); - if (!policies[ep.meta.requireRolePolicy]) { + if (!policies[ep.meta.requireRolePolicy] && !myRoles.some(r => r.isAdministrator)) { throw new ApiError({ message: 'You are not assigned to a required role.', code: 'ROLE_PERMISSION_DENIED', |