RBAC: Fix filter so that check for access on service account is correct (#78907)

Fix filter so that check for access on service account is in correct place
This commit is contained in:
Karl Persson
2023-11-30 17:32:04 +02:00
committed by GitHub
parent cdad712547
commit 0f0249abea
@@ -393,14 +393,14 @@ func (s *store) getResourcePermissions(sess *db.Session, orgID int64, query GetR
return nil, err
}
filter := "(" + userFilter.Where + " AND NOT u.is_service_account)"
filter := "((" + userFilter.Where + " AND NOT u.is_service_account)"
saFilter, err := accesscontrol.Filter(query.User, "u.id", "serviceaccounts:id:", serviceaccounts.ActionRead)
if err != nil {
return nil, err
}
filter += " OR (" + saFilter.Where + " AND u.is_service_account)"
filter += " OR (" + saFilter.Where + " AND u.is_service_account))"
userQuery += " AND " + filter
args = append(args, userFilter.Args...)