private void checkForPrivilegedExecution(Info info) { if (info.isPrivilegedExecutionRequired()) { boolean shouldElevate = true; String conditionId = info.getPrivilegedExecutionConditionID(); if (conditionId != null) { // only elevate permissions when condition is true shouldElevate = rules.getCondition(conditionId).isTrue(); } if (shouldElevate) { elevate(); } } }
/** * Check if user has correct permissions to use the installer. * * @param info * @param rules * @return */ public boolean hasCorrectPermissions(Info info, RulesEngine rules) { if (info.isPrivilegedExecutionRequired()) { boolean shouldElevate = true; String conditionId = info.getPrivilegedExecutionConditionID(); if (conditionId != null) { shouldElevate = rules.getCondition(conditionId).isTrue(); } if (shouldElevate) { return isAdminUser(); } } return true; }