From 4ceeb877b188ab727c200a06fc77eabcdaf23224 Mon Sep 17 00:00:00 2001 From: kolaente Date: Thu, 22 Apr 2021 16:44:42 +0200 Subject: [PATCH] Fix checking list rights when accessing a bucket --- pkg/models/kanban.go | 13 +++++++++++++ 1 file changed, 13 insertions(+) diff --git a/pkg/models/kanban.go b/pkg/models/kanban.go index ad2d8bb291e..825b69f7c64 100644 --- a/pkg/models/kanban.go +++ b/pkg/models/kanban.go @@ -119,6 +119,19 @@ func getDoneBucketForList(s *xorm.Session, listID int64) (bucket *Bucket, err er // @Router /lists/{id}/buckets [get] func (b *Bucket) ReadAll(s *xorm.Session, auth web.Auth, search string, page int, perPage int) (result interface{}, resultCount int, numberOfTotalItems int64, err error) { + list, err := GetListSimpleByID(s, b.ListID) + if err != nil { + return nil, 0, 0, err + } + + can, _, err := list.CanRead(s, auth) + if err != nil { + return nil, 0, 0, err + } + if !can { + return nil, 0, 0, ErrGenericForbidden{} + } + // Get all buckets for this list buckets := []*Bucket{} err = s.Where("list_id = ?", b.ListID).Find(&buckets)