org.apache.tinkerpop.gremlin.server

## Class Settings.SslSettings

- java.lang.Object
- - org.apache.tinkerpop.gremlin.server.Settings.SslSettings

- Enclosing class:
    Settings

      public static class Settings.SslSettings
      extends Object

  Settings to configure SSL support.

- - ### Field Summary

    Fields
    Modifier and Type | Field and Description
    --- | ---
    `boolean` | `enabled` Enables SSL.
    `String` | `keyCertChainFile` The X.509 certificate chain file in PEM format.
    `String` | `keyFile` The PKCS#8 private key file in PEM format.
    `String` | `keyPassword` The password of the `keyFile`, or `null` if it's not password-protected.
    `ClientAuth` | `needClientAuth` Require client certificate authentication
    `String` | `trustCertChainFile` Trusted certificates for verifying the remote endpoint's certificate.

  - ### Constructor Summary

    Constructors
    Constructor and Description
    `SslSettings()`

  - ### Method Summary

    All Methods Instance Methods Concrete Methods
    Modifier and Type | Method and Description
    --- | ---
    `Optional<SslContext>` | `getSslContext()`
    `void` | `overrideSslContext(SslContext sslContext)` When this value is set, the other settings for SSL are ignored.

    - ### Methods inherited from class java.lang.Object

      `clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

- - ### Field Detail

    - #### enabled

          public boolean enabled

      Enables SSL. Other settings will be ignored unless this is set to true. By default a self-signed certificate is used (not suitable for production) for SSL. To override this setting, be sure to set the `keyCertChainFile` and the `keyFile`.

    - #### keyCertChainFile

          public String keyCertChainFile

      The X.509 certificate chain file in PEM format.

    - #### keyFile

          public String keyFile

      The PKCS#8 private key file in PEM format.

    - #### keyPassword

          public String keyPassword

      The password of the `keyFile`, or `null` if it's not password-protected.

    - #### trustCertChainFile

          public String trustCertChainFile

      Trusted certificates for verifying the remote endpoint's certificate. The file should contain an X.509 certificate chain in PEM format. `null` uses the system default.

    - #### needClientAuth

          public ClientAuth needClientAuth

      Require client certificate authentication

  - ### Constructor Detail

    - #### SslSettings

          public SslSettings()

  - ### Method Detail

    - #### overrideSslContext

          public void overrideSslContext(SslContext sslContext)

      When this value is set, the other settings for SSL are ignored. This option provides for a programmatic way to configure more complex SSL configurations. The `enabled` setting should still be set to `true` for this setting to take effect.

    - #### getSslContext

          public Optional<SslContext> getSslContext()

Copyright © 2013–2018 Apache Software Foundation. All rights reserved.