Closed
Description
I'm getting access denied ("java.util.PropertyPermission" "*" "read,write")
error when using the IO Scheduler.
Its coming from:
static {
Properties properties = System.getProperties();
PurgeProperties pp = new PurgeProperties();
pp.load(properties);
PURGE_ENABLED = pp.purgeEnable;
PURGE_PERIOD_SECONDS = pp.purgePeriod;
start();
}
All this seems to be from what I could see is that it's trying to get purge options from the system properties.
static final class PurgeProperties {
boolean purgeEnable;
int purgePeriod;
void load(Properties properties) {
if (properties.containsKey(PURGE_ENABLED_KEY)) {
purgeEnable = Boolean.parseBoolean(properties.getProperty(PURGE_ENABLED_KEY));
} else {
purgeEnable = true;
}
if (purgeEnable && properties.containsKey(PURGE_PERIOD_SECONDS_KEY)) {
try {
purgePeriod = Integer.parseInt(properties.getProperty(PURGE_PERIOD_SECONDS_KEY));
} catch (NumberFormatException ex) {
purgePeriod = 1;
}
} else {
purgePeriod = 1;
}
}
}
In my system I can't allow for read/write access to all System properties. Can this be changed to use System.getProperty(PURGE_ENABLED_KEY)
or the like as I can allow for access to specific keys.