Getting PermissionDeniedException on programmatically getting WorkspaceManager of other user's workspace
Hi,
I'm accessing other users' workspace programmatically. When the workspace's permission is "private", sometimes another user gets PermissionDeniedException. Following is the way I'm getting the IVersionable: IVersionableHandle versionHandle = (IVersionableHandle) IFileItem.ITEM_TYPE.createItemHandle( UUID.valueOf(fileUuid), UUID.valueOf(stateUuid)); IVersionableManager verManager = SCMPlatform.getWorkspaceManager(repository).versionableManager(); return verManager.fetchCompleteState(versionHandle, monitor); But the problem is that I'm not getting this exception systematically. For the same user/otherUser combinations, sometimes it works fine without any exceptions too ! |
Accepted answer
I resolved this issue by doing-away with accessing workspace to have versionables. Now, I use only the change-set details to find versionables.
Ralph Schoon selected this answer as the correct answer
|
Your answer
Dashboards and work items are no longer publicly available, so some links may be invalid. We now provide similar information through other means. Learn more here.
Comments
You don't get the permission on getting the IVersionableManage, I assume you get it on retrieving the versionable handle.Right?
Are you using the item permissions feature?
@Ralph - I get the PermissionDeniedException while getting workspace connection.
i.e.,
IWorkspaceConnection workspaceConnection = SCMPlatform.getWorkspaceManager(repository).getWorkspaceConnection(workspaceHandle, monitor);
IFlowEntry defaultDeliverFlow = workspaceConnection.getFlowTable().getDefaultDeliverFlow();
...
...
@Tim - No, on attempting to create workspace connection itself, I get this exception.
Are you accessing this workspace using an admin account? You say the other user's workspace is private but you don't mention that your user account is admin.
No, none of the accounts are admin accounts.