Skip to content

Commit 9a21578

Browse files
implement isRemoteClusterConnection and invoke it instead resolving alias
1 parent f07cd23 commit 9a21578

File tree

2 files changed

+5
-4
lines changed

2 files changed

+5
-4
lines changed

x-pack/plugin/security/src/main/java/org/elasticsearch/xpack/security/transport/CrossClusterAccessTransportInterceptor.java

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -330,7 +330,9 @@ private static IllegalArgumentException illegalArgumentExceptionWithDebugLog(Str
330330

331331
@Override
332332
public boolean isRemoteClusterConnection(Transport.Connection connection) {
333-
return false;
333+
return remoteClusterCredentialsResolver.apply(connection)
334+
.map(RemoteConnectionManager.RemoteClusterAliasWithCredentials::clusterAlias)
335+
.isPresent();
334336
}
335337

336338
@Override

x-pack/plugin/security/src/main/java/org/elasticsearch/xpack/security/transport/SecurityServerTransportInterceptor.java

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -144,12 +144,11 @@ public <T extends TransportResponse> void sendRequest(
144144
TransportResponseHandler<T> handler
145145
) {
146146
assertNoCrossClusterAccessHeadersInContext();
147-
final Optional<String> remoteClusterAlias = remoteClusterCredentialsResolver.apply(connection)
148-
.map(RemoteClusterAliasWithCredentials::clusterAlias);
147+
final boolean isRemoteClusterConnection = remoteClusterTransportInterceptor.isRemoteClusterConnection(connection);
149148
if (PreAuthorizationUtils.shouldRemoveParentAuthorizationFromThreadContext(
150149
action,
151150
securityContext,
152-
remoteClusterAlias.isPresent()
151+
isRemoteClusterConnection
153152
)) {
154153
securityContext.executeAfterRemovingParentAuthorization(original -> {
155154
sendRequestInner(

0 commit comments

Comments
 (0)