Skip to content

Commit 30d8a34

Browse files
committed
minimal changes to always use entitlements
1 parent 8a8e641 commit 30d8a34

File tree

6 files changed

+17
-32
lines changed

6 files changed

+17
-32
lines changed

build-tools/src/main/java/org/elasticsearch/gradle/testclusters/RunTask.java

Lines changed: 4 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -42,7 +42,7 @@ public abstract class RunTask extends DefaultTestClustersTask {
4242

4343
private Boolean debug = false;
4444
private Boolean cliDebug = false;
45-
private Boolean entitlementsEnabled = false;
45+
4646
private Boolean apmServerEnabled = false;
4747

4848
private Boolean preserveData = false;
@@ -74,9 +74,7 @@ public void setCliDebug(boolean enabled) {
7474
option = "entitlements",
7575
description = "Use the Entitlements agent system in place of SecurityManager to enforce sandbox policies."
7676
)
77-
public void setEntitlementsEnabled(boolean enabled) {
78-
this.entitlementsEnabled = enabled;
79-
}
77+
public void setEntitlementsEnabled(boolean enabled) {}
8078

8179
@Input
8280
public Boolean getDebug() {
@@ -90,7 +88,7 @@ public Boolean getCliDebug() {
9088

9189
@Input
9290
public Boolean getEntitlementsEnabled() {
93-
return entitlementsEnabled;
91+
return true;
9492
}
9593

9694
@Input
@@ -240,9 +238,7 @@ else if (node.getSettingKeys().contains("telemetry.metrics.enabled") == false) {
240238
if (cliDebug) {
241239
enableCliDebug();
242240
}
243-
if (entitlementsEnabled) {
244-
enableEntitlements();
245-
}
241+
enableEntitlements();
246242
}
247243

248244
@TaskAction

distribution/tools/server-cli/src/main/java/org/elasticsearch/server/cli/SystemJvmOptions.java

Lines changed: 2 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,6 @@
1111

1212
import org.elasticsearch.common.settings.Settings;
1313
import org.elasticsearch.common.util.concurrent.EsExecutors;
14-
import org.elasticsearch.core.Booleans;
1514
import org.elasticsearch.jdk.RuntimeVersionFeature;
1615

1716
import java.io.IOException;
@@ -27,9 +26,8 @@ final class SystemJvmOptions {
2726
static List<String> systemJvmOptions(Settings nodeSettings, final Map<String, String> sysprops) {
2827
String distroType = sysprops.get("es.distribution.type");
2928
boolean isHotspot = sysprops.getOrDefault("sun.management.compiler", "").contains("HotSpot");
30-
boolean entitlementsExplicitlyEnabled = Booleans.parseBoolean(sysprops.getOrDefault("es.entitlements.enabled", "true"));
31-
// java 24+ only supports entitlements, but it may be enabled on earlier versions explicitly
32-
boolean useEntitlements = RuntimeVersionFeature.isSecurityManagerAvailable() == false || entitlementsExplicitlyEnabled;
29+
30+
boolean useEntitlements = true;
3331
return Stream.of(
3432
Stream.of(
3533
/*

modules/analysis-common/build.gradle

Lines changed: 7 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -38,14 +38,11 @@ tasks.named("yamlRestCompatTestTransform").configure { task ->
3838
}
3939

4040
tasks.named("yamlRestTest").configure {
41-
if (buildParams.getRuntimeJavaVersion().map{ it.majorVersion.toInteger() }.get() >= 24 ||
42-
"-Des.entitlements.enabled=true".equals(System.getProperty("tests.jvm.argline"))) {
43-
systemProperty 'tests.rest.blacklist',
44-
[
45-
// AWAITSFIX: this test relies on security manager, which doesn't exist in JDK 24.
46-
// and entitlements don't yet replace the functionality.
47-
// see https://github.com/elastic/elasticsearch/issues/119130
48-
'analysis-common/40_token_filters/stemmer_override file access',
49-
].join(',')
50-
}
41+
systemProperty 'tests.rest.blacklist',
42+
[
43+
// AWAITSFIX: this test relies on security manager, which doesn't exist in JDK 24.
44+
// and entitlements don't yet replace the functionality.
45+
// see https://github.com/elastic/elasticsearch/issues/119130
46+
'analysis-common/40_token_filters/stemmer_override file access',
47+
].join(',')
5148
}

modules/ingest-attachment/src/main/java/org/elasticsearch/ingest/attachment/TikaImpl.java

Lines changed: 1 addition & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -18,11 +18,9 @@
1818
import org.apache.tika.parser.ParserDecorator;
1919
import org.elasticsearch.SpecialPermission;
2020
import org.elasticsearch.bootstrap.FilePermissionUtils;
21-
import org.elasticsearch.core.Booleans;
2221
import org.elasticsearch.core.PathUtils;
2322
import org.elasticsearch.core.SuppressForbidden;
2423
import org.elasticsearch.jdk.JarHell;
25-
import org.elasticsearch.jdk.RuntimeVersionFeature;
2624

2725
import java.io.ByteArrayInputStream;
2826
import java.io.IOException;
@@ -129,9 +127,7 @@ static String parse(final byte content[], final Metadata metadata, final int lim
129127
: null;
130128

131129
private static boolean isUsingSecurityManager() {
132-
boolean entitlementsEnabled = Booleans.parseBoolean(System.getProperty("es.entitlements.enabled"), false)
133-
|| RuntimeVersionFeature.isSecurityManagerAvailable() == false;
134-
return entitlementsEnabled == false;
130+
return false;
135131
}
136132

137133
// compute some minimal permissions for parsers. they only get r/w access to the java temp directory,

server/src/main/java/org/elasticsearch/bootstrap/Elasticsearch.java

Lines changed: 2 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -28,7 +28,6 @@
2828
import org.elasticsearch.common.transport.BoundTransportAddress;
2929
import org.elasticsearch.common.util.concurrent.RunOnce;
3030
import org.elasticsearch.core.AbstractRefCounted;
31-
import org.elasticsearch.core.Booleans;
3231
import org.elasticsearch.core.CheckedConsumer;
3332
import org.elasticsearch.core.IOUtils;
3433
import org.elasticsearch.core.SuppressForbidden;
@@ -123,9 +122,8 @@ private static Bootstrap initPhase1() {
123122
final PrintStream out = getStdout();
124123
final PrintStream err = getStderr();
125124
final ServerArgs args;
126-
final boolean entitlementsEnabled = Booleans.parseBoolean(System.getProperty("es.entitlements.enabled", "true"));
127-
// java 24+ only supports entitlements, but it may be enabled on earlier versions explicitly
128-
final boolean useEntitlements = RuntimeVersionFeature.isSecurityManagerAvailable() == false || entitlementsEnabled;
125+
126+
final boolean useEntitlements = true;
129127
try {
130128
initSecurityProperties();
131129

x-pack/qa/security-example-spi-extension/src/main/java/org/elasticsearch/example/ExampleSecurityExtension.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -36,7 +36,7 @@
3636
public class ExampleSecurityExtension implements SecurityExtension {
3737

3838
static {
39-
final boolean useEntitlements = Boolean.parseBoolean(System.getProperty("es.entitlements.enabled"));
39+
final boolean useEntitlements = true;
4040
if (useEntitlements == false && RuntimeVersionFeature.isSecurityManagerAvailable()) {
4141
// check that the extension's policy works.
4242
AccessController.doPrivileged((PrivilegedAction<Void>) () -> {

0 commit comments

Comments
 (0)