Skip to content

Commit 443ca76

Browse files
committed
Entitlements reporting mode
1 parent 29a2f25 commit 443ca76

File tree

5 files changed

+17
-3
lines changed

5 files changed

+17
-3
lines changed

libs/entitlement/qa/entitled-plugin/src/main/java/org/elasticsearch/entitlement/qa/entitled/EntitledPlugin.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -27,7 +27,7 @@ public class EntitledPlugin extends Plugin implements ExtensiblePlugin {
2727
*/
2828
public static void selfTest() {
2929
selfTestEntitled();
30-
selfTestNotEntitled();
30+
// selfTestNotEntitled();
3131
}
3232

3333
private static void selfTestEntitled() {

libs/entitlement/qa/src/javaRestTest/java/org/elasticsearch/entitlement/qa/EntitlementsDeniedIT.java

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -14,7 +14,9 @@
1414

1515
import org.elasticsearch.entitlement.qa.test.RestEntitlementsCheckAction;
1616
import org.junit.ClassRule;
17+
import org.junit.Ignore;
1718

19+
@Ignore
1820
public class EntitlementsDeniedIT extends AbstractEntitlementsIT {
1921

2022
@ClassRule

libs/entitlement/qa/src/javaRestTest/java/org/elasticsearch/entitlement/qa/EntitlementsDeniedNonModularIT.java

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -14,7 +14,9 @@
1414

1515
import org.elasticsearch.entitlement.qa.test.RestEntitlementsCheckAction;
1616
import org.junit.ClassRule;
17+
import org.junit.Ignore;
1718

19+
@Ignore
1820
public class EntitlementsDeniedNonModularIT extends AbstractEntitlementsIT {
1921

2022
@ClassRule

libs/entitlement/src/main/java/org/elasticsearch/entitlement/bootstrap/EntitlementBootstrap.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -84,7 +84,7 @@ public static void bootstrap(
8484
EntitlementBootstrap.bootstrapArgs = new BootstrapArgs(pluginPolicies, pluginResolver, dataDirs, configDir, tempDir);
8585
exportInitializationToAgent();
8686
loadAgent(findAgentJar());
87-
selfTest();
87+
// selfTest();
8888
}
8989

9090
@SuppressForbidden(reason = "The VirtualMachine API is the only way to attach a java agent dynamically")

libs/entitlement/src/main/java/org/elasticsearch/entitlement/runtime/policy/PolicyManager.java

Lines changed: 11 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -43,6 +43,7 @@
4343
import java.util.stream.Stream;
4444

4545
import static java.lang.StackWalker.Option.RETAIN_CLASS_REFERENCE;
46+
import static java.util.Collections.newSetFromMap;
4647
import static java.util.Objects.requireNonNull;
4748
import static java.util.function.Predicate.not;
4849
import static java.util.stream.Collectors.groupingBy;
@@ -376,10 +377,19 @@ public void checkWriteProperty(Class<?> callerClass, String property) {
376377
);
377378
}
378379

380+
@SuppressForbidden(reason = "I'll print to stderr and you can't stop me")
379381
private static void notEntitled(String message) {
380-
throw new NotEntitledException(message);
382+
if (true) {
383+
if (ALREADY_REPORTED.add(message)) {
384+
System.err.println(message);
385+
}
386+
} else {
387+
throw new NotEntitledException(message);
388+
}
381389
}
382390

391+
private static final Set<String> ALREADY_REPORTED = newSetFromMap(new ConcurrentHashMap<>());
392+
383393
public void checkManageThreadsEntitlement(Class<?> callerClass) {
384394
checkEntitlementPresent(callerClass, ManageThreadsEntitlement.class);
385395
}

0 commit comments

Comments
 (0)