Package akka.remote.artery.tcp.ssl
Class RotatingKeysSSLEngineProvider
- java.lang.Object
-
- akka.remote.artery.tcp.ssl.RotatingKeysSSLEngineProvider
-
- All Implemented Interfaces:
SSLEngineProvider
public final class RotatingKeysSSLEngineProvider extends java.lang.Object implements SSLEngineProvider
Variation on ConfigSSLEngineProvider that will periodically reload the keys and certificates from disk, to facilitate rolling updates of certificates.This class is still ApiMayChange because it can likely be further harmonized with the standard ConfigSSLEngineProvider. Also the location and default values of the configuration may change in future versions of Akka.
This provider does not perform hostname verification, but instead allows checking that the remote certificate has a subject name that matches the subject name of the configured certificate.
-
-
Constructor Summary
Constructors Constructor Description RotatingKeysSSLEngineProvider(ActorSystem system)RotatingKeysSSLEngineProvider(com.typesafe.config.Config config, MarkerLoggingAdapter log)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description com.typesafe.config.Configconfig()javax.net.ssl.SSLEnginecreateClientSSLEngine(java.lang.String hostname, int port)javax.net.ssl.SSLEnginecreateServerSSLEngine(java.lang.String hostname, int port)protected MarkerLoggingAdapterlog()scala.Option<java.lang.Throwable>verifyClientSession(java.lang.String hostname, javax.net.ssl.SSLSession session)Verification that will be called after every successful handshake to verify additional session information.scala.Option<java.lang.Throwable>verifyServerSession(java.lang.String hostname, javax.net.ssl.SSLSession session)Verification that will be called after every successful handshake to verify additional session information.
-
-
-
Constructor Detail
-
RotatingKeysSSLEngineProvider
public RotatingKeysSSLEngineProvider(com.typesafe.config.Config config, MarkerLoggingAdapter log)
-
RotatingKeysSSLEngineProvider
public RotatingKeysSSLEngineProvider(ActorSystem system)
-
-
Method Detail
-
config
public com.typesafe.config.Config config()
-
log
protected MarkerLoggingAdapter log()
-
createServerSSLEngine
public javax.net.ssl.SSLEngine createServerSSLEngine(java.lang.String hostname, int port)- Specified by:
createServerSSLEnginein interfaceSSLEngineProvider
-
createClientSSLEngine
public javax.net.ssl.SSLEngine createClientSSLEngine(java.lang.String hostname, int port)- Specified by:
createClientSSLEnginein interfaceSSLEngineProvider
-
verifyClientSession
public scala.Option<java.lang.Throwable> verifyClientSession(java.lang.String hostname, javax.net.ssl.SSLSession session)Description copied from interface:SSLEngineProviderVerification that will be called after every successful handshake to verify additional session information. ReturnNoneif valid otherwiseSomewith explaining cause.- Specified by:
verifyClientSessionin interfaceSSLEngineProvider
-
verifyServerSession
public scala.Option<java.lang.Throwable> verifyServerSession(java.lang.String hostname, javax.net.ssl.SSLSession session)Description copied from interface:SSLEngineProviderVerification that will be called after every successful handshake to verify additional session information. ReturnNoneif valid otherwiseSomewith explaining cause.- Specified by:
verifyServerSessionin interfaceSSLEngineProvider
-
-