Hello Shmuel Melamud, I'd like you to do a code review. Please visit
https://gerrit.ovirt.org/42392 to review the following change. Change subject: core: Make regular user owner of VMs he created ...................................................................... core: Make regular user owner of VMs he created If regular user has permission to create a VM and does this through webadmin UI (having also ReadOnlyAdmin role) or REST API with Filter: false, he doesn't get ownership for this VM by default. This is OK for admin users, but non-admin users will effectively loose access to their VMs. To fix this, additional check is made for webadmin UI users and REST API with Filter: false users, checking if they have permission to manage the VM being created. If not, this permission is added for them. Change-Id: I7e814ab024ceed63e3ec7fce82ca574fa5be1c8b Bug-Url: https://bugzilla.redhat.com/show_bug.cgi?id=1121144 Signed-off-by: Shmuel Melamud <smela...@redhat.com> --- M backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/AddVmCommand.java 1 file changed, 7 insertions(+), 1 deletion(-) git pull ssh://gerrit.ovirt.org:29418/ovirt-engine refs/changes/92/42392/1 diff --git a/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/AddVmCommand.java b/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/AddVmCommand.java index fb2e3a9..f0264e1 100644 --- a/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/AddVmCommand.java +++ b/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/AddVmCommand.java @@ -1290,7 +1290,7 @@ protected void addVmPermission() { UniquePermissionsSet permissionsToAdd = new UniquePermissionsSet(); - if ((getParameters()).isMakeCreatorExplicitOwner()) { + if (isMakeCreatorExplicitOwner()) { permissionsToAdd.addPermission(getCurrentUser().getId(), PredefinedRoles.VM_OPERATOR.getId(), getVmId(), VdcObjectType.VM); } @@ -1307,6 +1307,12 @@ } } + private boolean isMakeCreatorExplicitOwner() { + return getParameters().isMakeCreatorExplicitOwner() || + !checkUserAuthorization( + getCurrentUser().getId(), ActionGroup.MANIPULATE_PERMISSIONS, getVmId(), VdcObjectType.VM); + } + private void copyTemplatePermissions(UniquePermissionsSet permissionsToAdd) { PermissionDAO dao = getDbFacade().getPermissionDao(); -- To view, visit https://gerrit.ovirt.org/42392 To unsubscribe, visit https://gerrit.ovirt.org/settings Gerrit-MessageType: newchange Gerrit-Change-Id: I7e814ab024ceed63e3ec7fce82ca574fa5be1c8b Gerrit-PatchSet: 1 Gerrit-Project: ovirt-engine Gerrit-Branch: master Gerrit-Owner: Shmuel Leib Melamud <smela...@redhat.com> Gerrit-Reviewer: Shmuel Melamud <smela...@redhat.com> _______________________________________________ Engine-patches mailing list Engine-patches@ovirt.org http://lists.ovirt.org/mailman/listinfo/engine-patches