|  | 
| 16 | 16 | import java.util.List; | 
| 17 | 17 | import java.util.Optional; | 
| 18 | 18 | import javax.net.ssl.KeyManagerFactory; | 
|  | 19 | +import javax.net.ssl.SSLContext; | 
| 19 | 20 | import javax.net.ssl.SSLEngine; | 
| 20 | 21 | import javax.net.ssl.SSLException; | 
| 21 | 22 | import javax.net.ssl.TrustManagerFactory; | 
| 22 | 23 | 
 | 
| 23 | 24 | import org.opensearch.common.settings.Settings; | 
| 24 | 25 | import org.opensearch.http.HttpServerTransport; | 
| 25 | 26 | import org.opensearch.http.netty4.ssl.SecureNetty4HttpServerTransport; | 
|  | 27 | +import org.opensearch.plugins.NetworkPlugin; | 
| 26 | 28 | import org.opensearch.plugins.SecureAuxTransportSettingsProvider; | 
| 27 | 29 | import org.opensearch.plugins.SecureHttpTransportSettingsProvider; | 
| 28 | 30 | import org.opensearch.plugins.SecureSettingsFactory; | 
|  | 
| 34 | 36 | import org.opensearch.security.ssl.http.netty.Netty4HttpRequestHeaderVerifier; | 
| 35 | 37 | import org.opensearch.security.ssl.transport.SSLConfig; | 
| 36 | 38 | import org.opensearch.threadpool.ThreadPool; | 
|  | 39 | +import org.opensearch.transport.AuxTransport; | 
| 37 | 40 | import org.opensearch.transport.Transport; | 
| 38 | 41 | import org.opensearch.transport.TransportAdapterProvider; | 
| 39 | 42 | 
 | 
| @@ -189,6 +192,28 @@ public Optional<SSLEngine> buildSecureHttpServerEngine(Settings settings, HttpSe | 
| 189 | 192 | 
 | 
| 190 | 193 |     @Override | 
| 191 | 194 |     public Optional<SecureAuxTransportSettingsProvider> getSecureAuxTransportSettingsProvider(Settings settings) { | 
| 192 |  | -        return Optional.empty(); | 
|  | 195 | +        return Optional.of(new SecureAuxTransportSettingsProvider() { | 
|  | 196 | + | 
|  | 197 | +            @Override | 
|  | 198 | +            public Optional<SSLContext> buildSecureAuxServerTransportContext(Settings settings, AuxTransport transport) throws SSLException { | 
|  | 199 | +                CertType auxTransportCertType = new CertType(transport.settingKey()); | 
|  | 200 | +                return sslSettingsManager.sslContextHandler(auxTransportCertType).map(SslContextHandler::sslContext); | 
|  | 201 | +            } | 
|  | 202 | + | 
|  | 203 | +            @Override | 
|  | 204 | +            public Optional<SecureAuxTransportParameters> parameters() { | 
|  | 205 | +                return Optional.of(new SecureAuxTransportParameters() { | 
|  | 206 | +                    @Override | 
|  | 207 | +                    public Optional<String> clientAuth() { | 
|  | 208 | +                        return Optional.empty(); | 
|  | 209 | +                    } | 
|  | 210 | + | 
|  | 211 | +                    @Override | 
|  | 212 | +                    public Collection<String> cipherSuites() { | 
|  | 213 | +                        return List.of(); | 
|  | 214 | +                    } | 
|  | 215 | +                }); | 
|  | 216 | +            } | 
|  | 217 | +        }); | 
| 193 | 218 |     } | 
| 194 | 219 | } | 
0 commit comments