Skip to content

Commit d5d78df

Browse files
committed
added new scrollable bar(inline style) + more robust way to update users with special chars in their name like for example "@" and "<".
1 parent 813e9d1 commit d5d78df

File tree

2 files changed

+5
-3
lines changed

2 files changed

+5
-3
lines changed

src/extensions/rbac/RBACManagementMenu.tsx

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -64,7 +64,7 @@ export const RBACManagementMenu = ({ anchorEl, MenuOpen, handleClose, createNoti
6464
onClose={handleClose}
6565
size='small'
6666
>
67-
<MenuItems>
67+
<MenuItems style={{ maxHeight: '200px', overflowY: 'auto' }}>
6868
{roles.map((role) => (
6969
<MenuItem key={role} onClick={() => handleRoleClicked(role)} icon={<UserIconOutline />} title={role} />
7070
))}

src/extensions/rbac/RBACUtils.ts

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -258,10 +258,11 @@ export function retrieveDatabaseList(driver, setDatabases: React.Dispatch<React.
258258
export async function updateUsers(driver, currentRole, allUsers, selectedUsers, onSuccess, onFail) {
259259
// 1. Build the query that removes all users from the role.
260260
let globalStatus = -1;
261+
const escapedAllUsers = allUsers.map((user) => `\`${user}\``).join(',');
261262
await runCypherQuery(
262263
driver,
263264
'system',
264-
`REVOKE ROLE ${currentRole} FROM ${allUsers.join(',')}`,
265+
`REVOKE ROLE ${currentRole} FROM ${escapedAllUsers}`,
265266
{},
266267
1000,
267268
(status) => {
@@ -277,10 +278,11 @@ export async function updateUsers(driver, currentRole, allUsers, selectedUsers,
277278
// TODO: Neo4j is very slow in updating after the previous query, even though it is technically a finished query.
278279
// We build in an artificial delay...
279280
if (selectedUsers.length > 0) {
281+
const escapedSelectedUsers = selectedUsers.map((user) => `\`${user}\``).join(',');
280282
await runCypherQuery(
281283
driver,
282284
'system',
283-
`GRANT ROLE ${currentRole} TO ${selectedUsers.join(',')}`,
285+
`GRANT ROLE ${currentRole} TO ${escapedSelectedUsers}`,
284286
{},
285287
1000,
286288
(status) => {

0 commit comments

Comments
 (0)