Skip to content

Commit

Permalink
Do minor clarifications on "privileged" bulk flag
Browse files Browse the repository at this point in the history
  • Loading branch information
mederly committed Jul 10, 2023
1 parent 9b38936 commit d0f186a
Show file tree
Hide file tree
Showing 3 changed files with 23 additions and 5 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -262,10 +262,9 @@ public class StateConstraintEvaluator implements PolicyConstraintEvaluator<State
}

private void addAssignmentTargetArgument(List<Object> args, PolicyRuleEvaluationContext<?> ctx) {
if (!(ctx instanceof AssignmentPolicyRuleEvaluationContext)) {
if (!(ctx instanceof AssignmentPolicyRuleEvaluationContext<?> actx)) {
args.add("");
} else {
AssignmentPolicyRuleEvaluationContext<?> actx = (AssignmentPolicyRuleEvaluationContext<?>) ctx;
args.add(ObjectTypeUtil.createDisplayInformation(actx.evaluatedAssignment.getTarget(), false));
}
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -13,11 +13,13 @@
import com.evolveum.midpoint.prism.PrismContext;
import com.evolveum.midpoint.prism.query.QueryConverter;
import com.evolveum.midpoint.schema.expression.VariablesMap;
import com.evolveum.midpoint.schema.result.OperationResult;
import com.evolveum.midpoint.task.api.RunningTask;
import com.evolveum.midpoint.task.api.Task;
import com.evolveum.midpoint.util.exception.SystemException;
import com.evolveum.midpoint.util.logging.Trace;
import com.evolveum.midpoint.util.logging.TraceManager;
import com.evolveum.midpoint.xml.ns._public.model.scripting_3.ExecuteScriptType;
import com.evolveum.midpoint.xml.ns._public.model.scripting_3.ScriptingExpressionEvaluationOptionsType;

import java.util.HashMap;
Expand All @@ -30,6 +32,12 @@
public class ExecutionContext {
private static final Trace LOGGER = TraceManager.getTrace(ExecutionContext.class);

/**
* Are we pre-authorized for dangerous operations like Groovy script execution? See
* {@link ScriptingExpressionEvaluator#evaluateExpressionPrivileged(ExecuteScriptType, VariablesMap, Task, OperationResult)}.
*
* TEMPORARY. To be replaced.
*/
private final boolean privileged;
private final ScriptingExpressionEvaluationOptionsType options;
private final Task task;
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -113,10 +113,21 @@ public ExecutionContext evaluateExpression(@NotNull ExecuteScriptType executeScr

/**
* Entry point for privileged execution.
* Note that privileged execution means
*
* Note that privileged execution means the `root` authorization is not checked for some sensitive operations like custom
* script execution.
*
* See {@link ExecutionContext#isPrivileged()}.
*
* TEMPORARY.
*/
public ExecutionContext evaluateExpressionPrivileged(@NotNull ExecuteScriptType executeScript, @NotNull VariablesMap initialVariables, Task task, OperationResult result) throws ScriptExecutionException {
return evaluateExpression(executeScript, initialVariables, true, false, task, result);
public ExecutionContext evaluateExpressionPrivileged(
@NotNull ExecuteScriptType executeScript,
@NotNull VariablesMap initialVariables,
Task task,
OperationResult result) throws ScriptExecutionException {
return evaluateExpression(
executeScript, initialVariables, true, false, task, result);
}

/**
Expand Down

0 comments on commit d0f186a

Please sign in to comment.