From 399e7cd384ec89d43fec1e8db741d54d995a1f5e Mon Sep 17 00:00:00 2001 From: Pavel Zavora Date: Wed, 25 May 2022 07:58:31 +0200 Subject: [PATCH] feat(ui): show effective RW permissions on users page --- ui/src/admin/containers/influxdb/UsersPage.tsx | 14 ++++++++++++-- 1 file changed, 12 insertions(+), 2 deletions(-) diff --git a/ui/src/admin/containers/influxdb/UsersPage.tsx b/ui/src/admin/containers/influxdb/UsersPage.tsx index e48b03618..b148f54be 100644 --- a/ui/src/admin/containers/influxdb/UsersPage.tsx +++ b/ui/src/admin/containers/influxdb/UsersPage.tsx @@ -117,13 +117,23 @@ const UsersPage = ({ () => visibleUsers.map(u => { const permRecord = u.permissions.reduce((acc, userPerm) => { - if (userPerm.scope === 'database') { + if (userPerm.scope === 'all') { + const allowed = userPerm.allowed.includes('ALL') + ? {READ: true, WRITE: true} + : userPerm.allowed.reduce((obj, x) => { + obj[x] = true + return obj + }, {}) + databases.forEach( + db => (acc[db.name] = {...allowed, ...acc[db.name]}) + ) + } else if (userPerm.scope === 'database') { acc[userPerm.name] = userPerm.allowed.reduce< Record >((obj, perm) => { obj[perm] = true return obj - }, {}) + }, acc[userPerm.name] || {}) } return acc }, {})