diff --git a/public/app/core/components/AccessControl/PermissionList.tsx b/public/app/core/components/AccessControl/PermissionList.tsx index baadf95b0c7..a56c98c4d32 100644 --- a/public/app/core/components/AccessControl/PermissionList.tsx +++ b/public/app/core/components/AccessControl/PermissionList.tsx @@ -27,6 +27,12 @@ export const PermissionList = ({ title, items, compareKey, permissionLevels, can if (item.actions.length > keep[key].actions.length) { keep[key] = item; + continue; + } + + // If the same permission has been inherited and applied directly, keep the one that is applied directly + if (item.actions.length === keep[key].actions.length && !item.isInherited) { + keep[key] = item; } } return Object.keys(keep).map((k) => keep[k]);