Yevgeny Zaspitsky has uploaded a new change for review.

Change subject: core: make possible to run an internal option with permissions 
check
......................................................................

core: make possible to run an internal option with permissions check

Make possible to run an internal option with permissions check enabled.

Change-Id: Id83da1240e4753ae551a1b2aa6a3aecd736858a8
Signed-off-by: Yevgeny Zaspitsky <[email protected]>
---
M 
backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/CommandBase.java
1 file changed, 9 insertions(+), 1 deletion(-)


  git pull ssh://gerrit.ovirt.org:29418/ovirt-engine refs/changes/02/37202/1

diff --git 
a/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/CommandBase.java
 
b/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/CommandBase.java
index f07815c..463fd8d 100644
--- 
a/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/CommandBase.java
+++ 
b/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/CommandBase.java
@@ -122,6 +122,7 @@
     private final List<Class<?>> validationGroups = new ArrayList<>();
     private final Guid commandId;
     private boolean quotaChanged = false;
+    private boolean forceCheckPermissions = false;
     private String _description = "";
     private TransactionScopeOption scope;
     private TransactionScopeOption endActionScope;
@@ -999,7 +1000,7 @@
      */
     protected boolean isUserAuthorizedToRunAction() {
         // Skip check if this is an internal action:
-        if (isInternalExecution()) {
+        if (isInternalExecution() && !forceCheckPermissions) {
             if (log.isDebugEnabled()) {
                 log.debug("Permission check skipped for internal action {}.", 
getActionType());
             }
@@ -2280,6 +2281,13 @@
         return null;
     }
 
+    protected VdcReturnValueBase runInternalAction(VdcActionType actionType,
+            VdcActionParametersBase parameters,
+            boolean forceCheckPermissions) {
+        this.forceCheckPermissions = forceCheckPermissions;
+        return runInternalAction(actionType, parameters);
+    }
+
     protected VdcReturnValueBase runInternalAction(VdcActionType actionType, 
VdcActionParametersBase parameters) {
         return getBackend().runInternalAction(actionType, parameters, 
context.clone());
     }


-- 
To view, visit http://gerrit.ovirt.org/37202
To unsubscribe, visit http://gerrit.ovirt.org/settings

Gerrit-MessageType: newchange
Gerrit-Change-Id: Id83da1240e4753ae551a1b2aa6a3aecd736858a8
Gerrit-PatchSet: 1
Gerrit-Project: ovirt-engine
Gerrit-Branch: master
Gerrit-Owner: Yevgeny Zaspitsky <[email protected]>
_______________________________________________
Engine-patches mailing list
[email protected]
http://lists.ovirt.org/mailman/listinfo/engine-patches

Reply via email to