Folder guardian: fail on empty uid (#99465)

This commit is contained in:
Stephanie Hingtgen
2025-01-24 11:26:05 +01:00
committed by GitHub
parent 7cb6845d44
commit c787239252
@@ -109,23 +109,23 @@ 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{ q := &folder.GetFolderQuery{
UID: &folderUID, UID: &folderUID,
OrgID: user.GetOrgID(), OrgID: user.GetOrgID(),
SignedInUser: user, SignedInUser: user,
} }
qResult, err := foldersService.Get(ctx, q) f, err := foldersService.Get(ctx, q)
if err != nil { if err != nil {
if errors.Is(err, dashboards.ErrFolderNotFound) { if errors.Is(err, dashboards.ErrFolderNotFound) {
return nil, ErrGuardianFolderNotFound.Errorf("failed to get folder by UID: %w", err) return nil, ErrGuardianFolderNotFound.Errorf("failed to get folder by UID: %w", err)
} }
return nil, ErrGuardianGetFolderFailure.Errorf("failed to get folder by UID: %w", err) return nil, ErrGuardianGetFolderFailure.Errorf("failed to get folder by UID: %w", err)
} }
f = qResult
}
return &accessControlFolderGuardian{ return &accessControlFolderGuardian{
accessControlBaseGuardian: accessControlBaseGuardian{ accessControlBaseGuardian: accessControlBaseGuardian{