diff --git a/scm-webapp/src/main/java/sonia/scm/api/v2/resources/GroupCollectionResource.java b/scm-webapp/src/main/java/sonia/scm/api/v2/resources/GroupCollectionResource.java index 2a09850117..2619caff8a 100644 --- a/scm-webapp/src/main/java/sonia/scm/api/v2/resources/GroupCollectionResource.java +++ b/scm-webapp/src/main/java/sonia/scm/api/v2/resources/GroupCollectionResource.java @@ -29,8 +29,10 @@ import io.swagger.v3.oas.annotations.headers.Header; import io.swagger.v3.oas.annotations.media.Content; import io.swagger.v3.oas.annotations.media.Schema; import io.swagger.v3.oas.annotations.responses.ApiResponse; +import org.apache.shiro.SecurityUtils; import sonia.scm.group.Group; import sonia.scm.group.GroupManager; +import sonia.scm.group.GroupPermissions; import sonia.scm.search.SearchRequest; import sonia.scm.search.SearchUtil; import sonia.scm.web.VndMediaType; @@ -106,6 +108,7 @@ public class GroupCollectionResource { @QueryParam("desc") boolean desc, @DefaultValue("") @QueryParam("q") String search ) { + GroupPermissions.list().check(); return adapter.getAll(page, pageSize, createSearchPredicate(search), sortBy, desc, pageResult -> groupCollectionToDtoMapper.map(page, pageSize, pageResult)); } diff --git a/scm-webapp/src/main/java/sonia/scm/api/v2/resources/UserCollectionResource.java b/scm-webapp/src/main/java/sonia/scm/api/v2/resources/UserCollectionResource.java index 0180729933..516ebf0af2 100644 --- a/scm-webapp/src/main/java/sonia/scm/api/v2/resources/UserCollectionResource.java +++ b/scm-webapp/src/main/java/sonia/scm/api/v2/resources/UserCollectionResource.java @@ -30,10 +30,12 @@ import io.swagger.v3.oas.annotations.media.Content; import io.swagger.v3.oas.annotations.media.Schema; import io.swagger.v3.oas.annotations.responses.ApiResponse; import org.apache.shiro.authc.credential.PasswordService; +import sonia.scm.group.GroupPermissions; import sonia.scm.search.SearchRequest; import sonia.scm.search.SearchUtil; import sonia.scm.user.User; import sonia.scm.user.UserManager; +import sonia.scm.user.UserPermissions; import sonia.scm.web.VndMediaType; import javax.inject.Inject; @@ -108,6 +110,7 @@ public class UserCollectionResource { @DefaultValue("false") @QueryParam("desc") boolean desc, @DefaultValue("") @QueryParam("q") String search ) { + UserPermissions.list().check(); return adapter.getAll(page, pageSize, createSearchPredicate(search), sortBy, desc, pageResult -> userCollectionToDtoMapper.map(page, pageSize, pageResult)); }