Skip to content

Commit f1cd937

Browse files
committed
Make GetTermVersionAction internal
GetTermVersion action has been added to check if cluster state needs to be updated as a performance improvement on all cluster state checks. The Authorization systems in the Security Plugin check all actions that do not start with `internal:` for permissions causing users without `cluster:monitor/*` permissions to start getting 403 exceptions. This change signals that this action does not require an authorization check by any security systems since it cannot be called via REST APIs. Signed-off-by: Peter Nied <petern@amazon.com>
1 parent c04dad5 commit f1cd937

File tree

2 files changed

+3
-3
lines changed

2 files changed

+3
-3
lines changed

server/src/main/java/org/opensearch/action/admin/cluster/state/term/GetTermVersionAction.java

+1-1
Original file line numberDiff line numberDiff line change
@@ -18,7 +18,7 @@
1818
public class GetTermVersionAction extends ActionType<GetTermVersionResponse> {
1919

2020
public static final GetTermVersionAction INSTANCE = new GetTermVersionAction();
21-
public static final String NAME = "cluster:monitor/term";
21+
public static final String NAME = "internal:monitor/term";
2222

2323
private GetTermVersionAction() {
2424
super(NAME, GetTermVersionResponse::new);

server/src/test/java/org/opensearch/action/support/clustermanager/TransportClusterManagerTermCheckTests.java

+2-2
Original file line numberDiff line numberDiff line change
@@ -223,7 +223,7 @@ public void testTermCheckMatchWithClusterManager() throws ExecutionException, In
223223
assertThat(transport.capturedRequests().length, equalTo(1));
224224
CapturingTransport.CapturedRequest capturedRequest = transport.capturedRequests()[0];
225225
assertTrue(capturedRequest.node.isClusterManagerNode());
226-
assertThat(capturedRequest.action, equalTo("cluster:monitor/term"));
226+
assertThat(capturedRequest.action, equalTo("internal:monitor/term"));
227227
GetTermVersionResponse response = new GetTermVersionResponse(
228228
new ClusterStateTermVersion(
229229
clusterService.state().getClusterName(),
@@ -249,7 +249,7 @@ public void testTermCheckNoMatchWithClusterManager() throws ExecutionException,
249249
assertThat(transport.capturedRequests().length, equalTo(1));
250250
CapturingTransport.CapturedRequest termCheckRequest = transport.capturedRequests()[0];
251251
assertTrue(termCheckRequest.node.isClusterManagerNode());
252-
assertThat(termCheckRequest.action, equalTo("cluster:monitor/term"));
252+
assertThat(termCheckRequest.action, equalTo("internal:monitor/term"));
253253
GetTermVersionResponse noMatchResponse = new GetTermVersionResponse(
254254
new ClusterStateTermVersion(
255255
clusterService.state().getClusterName(),

0 commit comments

Comments
 (0)