Interface SpacePermissionService

All Known Implementing Classes:
SpacePermissionServiceImpl

public interface SpacePermissionService
Provides mutable operations for SpacePermissions
Since:
9.1.0
  • Method Details

    • getPermissionsGrantedToUser

      List<SpacePermission> getPermissionsGrantedToUser(String spaceKey, String userKey)

      Get the permissions granted to a user in the given space.

      Parameters:
      spaceKey - the key of the space
      userKey - the user key
      Returns:
      list of space permissions granted to the user
      Throws:
      NotFoundException - if user not found
      PermissionException - if user doesn't have permission to perform this action
    • getPermissionsGrantedToAnonymousUsers

      List<SpacePermission> getPermissionsGrantedToAnonymousUsers(String spaceKey)

      Get the permissions granted to an anonymous users in the given space.

      Parameters:
      spaceKey - the key of the space
      Returns:
      list of space permissions granted to the user
      Throws:
      PermissionException - if user doesn't have permission to perform this action
    • getPermissionsGrantedToGroup

      List<SpacePermission> getPermissionsGrantedToGroup(String spaceKey, String groupName)

      Get the permissions granted to a group in the given space.

      Parameters:
      spaceKey - the key of the space
      groupName - the name of the group
      Returns:
      list of space permissions granted to the group
      Throws:
      NotFoundException - if group not found
      PermissionException - if user doesn't have permission to perform this action
    • getAllPermissions

      List<SpacePermission> getAllPermissions(String spaceKey)

      Get all space permissions

      Parameters:
      spaceKey - the key of the space
      Returns:
      list of permissions granted to users and groups in the particular space
      Throws:
      PermissionException - if user doesn't have permission to perform this action
    • grantPermissionsToUser

      void grantPermissionsToUser(String spaceKey, String userKey, Set<OperationDescription> permissions)

      Grants permissions to a user in the given space.

      Parameters:
      spaceKey - the key of the space to update
      userKey - the user key
      permissions - the permissions being granted
      Throws:
      NotFoundException - if user not found
      PermissionException - if user doesn't have permission to perform this action
    • grantPermissionsToAnonymousUser

      void grantPermissionsToAnonymousUser(String spaceKey, Set<OperationDescription> permissions)

      Grants permissions to an anonymous user in the given space.

      Parameters:
      spaceKey - the key of the space to update
      permissions - the permissions being granted
      Throws:
      PermissionException - if user doesn't have permission to perform this action
    • grantPermissionsToGroup

      void grantPermissionsToGroup(String spaceKey, String groupName, Set<OperationDescription> permissions)

      Grants permissions to a user in the given space.

      Parameters:
      spaceKey - the key of the space to update
      groupName - the name of the group
      permissions - the permissions being granted
      Throws:
      NotFoundException - if group not found
      PermissionException - if user doesn't have permission to perform this action
    • removePermissionsFromUser

      void removePermissionsFromUser(String spaceKey, String userKey, Set<OperationDescription> permissions)

      Remove space permissions from a user in the given space.

      Parameters:
      spaceKey - the key of the space to update
      userKey - the user key
      permissions - the permissions being revoked
      Throws:
      NotFoundException - if user not found
      PermissionException - if user doesn't have permission to perform this action
    • removePermissionsFromAnonymousUser

      void removePermissionsFromAnonymousUser(String spaceKey, Set<OperationDescription> permissions)

      Remove space permissions from an anonymous user in the given space.

      Parameters:
      spaceKey - the key of the space to update
      permissions - the permissions being revoked
      Throws:
      NotFoundException - if group not found
      PermissionException - if user doesn't have permission to perform this action
    • removePermissionsFromGroup

      void removePermissionsFromGroup(String spaceKey, String groupName, Set<OperationDescription> permissions)

      Remove space permissions from a group in the given space.

      Parameters:
      spaceKey - the key of the space to update
      groupName - the name of the group
      permissions - the permissions being revoked
      Throws:
      NotFoundException - if group not found
      PermissionException - if user doesn't have permission to perform this action
    • setPermissions

      void setPermissions(String spaceKey, Set<SpacePermissionsForSubject> spacePermissionsForSubjects)
      Sets permissions to multiple users/groups in the given space.

      Request should contain all permissions that user/group/anonymous user will have in a given space. If permission is absent in the request, but was granted before, it will be revoked. If empty list of permissions passed to user/group/anonymous user, then all their existing permissions will be revoked. If user/group/anonymous user not mentioned in the request, their permissions will not be revoked.

      Maximum 40 different users/groups/anonymous user could be passed in the request.
      Parameters:
      spaceKey - the key of the space to update
      spacePermissionsForSubjects - the name of the group
      Throws:
      NotFoundException - if group not found
      PermissionException - if user doesn't have permission to perform this action