Come for the products,
stay for the community

The Atlassian Community can help you and your team get more value out of Atlassian products and practices.

Atlassian Community about banner
4,298,205
Community Members
 
Community Events
165
Community Groups

How to remove user space permissions via SpacePermissionManagerInternal

Yep, thats my problem. I want to move from SpacePermissionManager to SpacePermissionManagerInternal becaouse of deprication.

 

This is my scenario:
-user create new space
-script will remove creator from user space permission

This is my code how I want to do it, but have problems here:

 

<code>

import com.atlassian.confluence.internal.security.SpacePermissionContext
import com.atlassian.confluence.internal.security.SpacePermissionManagerInternal
import com.atlassian.confluence.security.SpacePermission
import com.atlassian.confluence.spaces.Space
import com.atlassian.confluence.spaces.SpaceManager
import com.atlassian.spring.container.ContainerManager


def context = SpacePermissionContext.createDefault()
def spaceManager = ContainerManager.getComponent("spaceManager") as SpaceManager
def spaceToClean = spaceManager.getSpace('88GGBBNNYY')
def usersToDelete

spaceToClean.getPermissions().each {spacePerm->
       if( spacePerm.isUserPermission() ) { usersToDelete= spacePerm.getUserSubject() }
}

SpacePermissionManagerInternal.removeAllUserPermissions( usersToDelete, context )
</code>
Problem?

groovy.lang.MissingMethodException: No signature of method: static com.atlassian.confluence.internal.security.SpacePermissionManagerInternal.removeAllUserPermissions() is applicable for argument types: (com.atlassian.confluence.user.ConfluenceUserImpl_$$_jvst242_7...) values: [ConfluenceUserImpl{name='rafal.zydek@test.orangesharing.com', key=8a7d81847ffd62b9017ffe36f90e0000}, ...] at Script357.run(Script357.groovy:18)

1 comment

tried also that varation: 

 

import com.atlassian.confluence.internal.security.SpacePermissionContext
import com.atlassian.confluence.internal.security.SpacePermissionManagerInternal
import com.atlassian.confluence.security.SpacePermission
import com.atlassian.confluence.spaces.Space
import com.atlassian.confluence.spaces.SpaceManager
import com.atlassian.spring.container.ContainerManager
import com.atlassian.sal.api.component.ComponentLocator

def context = SpacePermissionContext.createDefault()
def spaceManager = ContainerManager.getComponent("spaceManager") as SpaceManager
def spaceToClean = spaceManager.getSpace('88GGBBNNYY')
def usersToDelete

spaceToClean.getPermissions().each {spacePerm->
       if( spacePerm.isUserPermission() ) { usersToDelete= spacePerm.getUserSubject() }
}

def spacePermissionManager = ComponentLocator.getComponent(SpacePermissionManagerInternal)
spacePermissionManager.removeAllUserPermissions( usersToDelete, context )
Error:
2022-05-24 13:33:55,113 WARN [component.DefaultComponentLocator]: More than one instance of com.atlassian.confluence.internal.security.SpacePermissionManagerInternal found but none of them has key spacePermissionManagerInternal 2022-05-24 13:33:55,115 ERROR [common.UserScriptEndpoint]: ************************************************************************************* 2022-05-24 13:33:55,115 ERROR [common.UserScriptEndpoint]: Script console script failed: java.lang.NullPointerException: Cannot invoke method removeAllUserPermissions() on null object

Comment

Log in or Sign up to comment
TAGS
Community showcase
Published in Confluence

An update on Confluence Cloud customer feedback – June 2022

Hi everyone, We’re always looking at how to improve Confluence and customer feedback plays an important role in making sure we're investing in the areas that will bring the most value to the most c...

159 views 1 3
Read article

Community Events

Connect with like-minded Atlassian users at free events near you!

Find an event

Connect with like-minded Atlassian users at free events near you!

Unfortunately there are no Community Events near you at the moment.

Host an event

You're one step closer to meeting fellow Atlassian users at your local event. Learn more about Community Events

Events near you