Drive folder permission mode on folder move deprecated
Configuration
With OX App Suite 7.10.4, several modes were introduced defining the behaviour on Drive folder move. This mode can be set for every folder tree separately via three new properties:
com.openexchange.folderstorage.permissions.moveToPublic
- sets the mode for moving folders within or into the public folder treecom.openexchange.folderstorage.permissions.moveToPrivate
- sets the mode for moving folders within or into the private folder treecom.openexchange.folderstorage.permissions.moveToShared
- sets the mode for moving folders within or into the shared folder tree
Possible modes are one of
merge
- Merge permissions from moved folder and new parent folderinherit
- Inherit folder from new parent folder, previous permissions from moved folder are droppedkeep
- Keep permissions from moved folder as is, don't change anything
where inherit
is the default for all three properties. Please be aware that when merging two permissions for the same user results in the permissions with more rights to win. E.g. when merging a viewer and and author permission for the same user the author permissions wins.
Examples
Assuming User1 does move operations in the following Drive folder tree:
My files
- Folder 1
- Folder 2
- Folder 3
Public files
- Public folder 1
- Public folder 2
Shared files
- User2
- Shared folder 1
where User1 has administrative permission for folders Folder 1
, Folder 2
and Folder 3
and Author permission for Public folder 1
, Public folder 2
and Shared folder 1
.
User2 has administrative permission for folder Shared folder 1
, Reviewer permission for Folder 1
, Viewer permission for Folder 2
and Folder 3
and Author permission for Public folder 1
.
And all users have viewer permission for public folders and Folder 3
.
Note: In this scenario the public folders have to be created by a third user who granted Author permission to User1 and User2 for those folders. Apart from that the third user is not required and won't be mentioned in this scenario for simplification.
Private folders
com.openexchange.folderstorage.permissions.moveToPrivate=merge
When moving Folder 2
into Folder 1
and com.openexchange.folderstorage.permissions.moveToPrivate
set to merge
, Folder 2
has following permissions after the move operation:
- User1 has administrative permission for both folders, no permission change
- User2 had Reviewer permission for
Folder 1
and Viewer permission forFolder 2
. Merging results in Reviewer permission forFolder 2
com.openexchange.folderstorage.permissions.moveToPrivate=inherit
When moving Folder 1
into Folder 2
and com.openexchange.folderstorage.permissions.moveToPrivate
set to inherit
, Folder 1
has following permissions after the move operation:
- User1 has administrative permission for both folders, no permission change
- User2 had Reviewer permission for
Folder 1
and Viewer permission forFolder 2
. InheritingFolder 2
's permission lead to Viewer permission forFolder 1
com.openexchange.folderstorage.permissions.moveToPrivate=keep
When moving Folder 1
into Folder 2
and com.openexchange.folderstorage.permissions.moveToPrivate
set to keep
, Folder 1
has following permissions after the move operation:
- User1 has administrative permission for both folders, no permission change
- User2 had Reviewer permission for
Folder 1
, no permission change
Public folders
com.openexchange.folderstorage.permissions.moveToPublic=merge
When moving Folder 1
into Public folder 1
and com.openexchange.folderstorage.permissions.moveToPublic
set to merge
, Folder 1
has following permissions after the move operation:
- User1 keeps administrative permission for
Folder 1
- User2 had Reviewer permission for
Folder 1
, merge with Author permission forPublic folder 1
results in Author permission forFolder 1
- Viewer permission for group 'AllUsers' is unchanged
com.openexchange.folderstorage.permissions.moveToPublic=inherit
When moving Folder 1
into Public folder 2
and com.openexchange.folderstorage.permissions.moveToPublic
set to inherit
, Folder 1
has following permissions after the move operation:
- User1 keeps administrative permission for
Folder 1
- User2 had Reviewer permission for
Folder 1
and no permissions forPublic folder 2
, so User2's permissions forFolder 1
are dropped - Viewer permission for group 'AllUsers' is unchanged
com.openexchange.folderstorage.permissions.moveToPublic=keep
When moving Folder 1
into Public folder 2
and com.openexchange.folderstorage.permissions.moveToPublic
set to keep
, Folder 1
has following permissions after the move operation:
- User1 keeps administrative permission for
Folder 1
- User2 keeps Reviewer permission for
Folder 1
- Viewer permission for group 'AllUsers' is unchanged
Shared folders
com.openexchange.folderstorage.permissions.moveToShared=merge
When moving Folder 3
into Shared folder 1
and com.openexchange.folderstorage.permissions.moveToShared
set to merge
, Folder 3
has following permissions after the move operation:
- User1 keeps administrative permission for
Folder 3
- User2 gains administrative permission for
Folder 3
- Viewer permission for group 'AllUsers' is unchanged
com.openexchange.folderstorage.permissions.moveToShared=inherit
When moving Folder 3
into Shared folder 1
and com.openexchange.folderstorage.permissions.moveToShared
set to inherit
, Folder 3
has following permissions after the move operation:
- User1 keeps administrative permission for
Folder 3
- User2 gains administrative permission for
Folder 3
- Viewer permission for group 'AllUsers' is dropped
com.openexchange.folderstorage.permissions.moveToShared=keep
When moving Folder 3
into Shared folder 1
and com.openexchange.folderstorage.permissions.moveToShared
set to keep
, Folder 3
has following permissions after the move operation:
- User1 keeps administrative permission for
Folder 3
- User2 keeps Viewer permission for
Folder 3
- Viewer permission for group 'AllUsers' is unchanged