Folder guardian: fail on empty uid (#99465)

This commit is contained in:
Stephanie Hingtgen
2025-01-24 03:26:05 -07:00
committed by GitHub
parent 7cb6845d44
commit c787239252

View File

@@ -109,22 +109,22 @@ func NewAccessControlFolderGuardianByUID(
ctx context.Context, cfg *setting.Cfg, folderUID string, user identity.Requester, ctx context.Context, cfg *setting.Cfg, folderUID string, user identity.Requester,
ac accesscontrol.AccessControl, dashboardService dashboards.DashboardService, foldersService folder.Service, ac accesscontrol.AccessControl, dashboardService dashboards.DashboardService, foldersService folder.Service,
) (DashboardGuardian, error) { ) (DashboardGuardian, error) {
var f *folder.Folder if folderUID == "" {
if folderUID != "" { return nil, ErrGuardianFolderNotFound.Errorf("failed to get folder by UID: folder UID is empty")
q := &folder.GetFolderQuery{ }
UID: &folderUID,
OrgID: user.GetOrgID(),
SignedInUser: user,
}
qResult, err := foldersService.Get(ctx, q) q := &folder.GetFolderQuery{
if err != nil { UID: &folderUID,
if errors.Is(err, dashboards.ErrFolderNotFound) { OrgID: user.GetOrgID(),
return nil, ErrGuardianFolderNotFound.Errorf("failed to get folder by UID: %w", err) SignedInUser: user,
} }
return nil, ErrGuardianGetFolderFailure.Errorf("failed to get folder by UID: %w", err)
f, err := foldersService.Get(ctx, q)
if err != nil {
if errors.Is(err, dashboards.ErrFolderNotFound) {
return nil, ErrGuardianFolderNotFound.Errorf("failed to get folder by UID: %w", err)
} }
f = qResult return nil, ErrGuardianGetFolderFailure.Errorf("failed to get folder by UID: %w", err)
} }
return &accessControlFolderGuardian{ return &accessControlFolderGuardian{