Class CredentialsHelper

java.lang.Object
com.oracle.coherence.grpc.CredentialsHelper

public class CredentialsHelper extends Object
A helper class to resolve gRPC credentials.
  • Field Details

    • PROP_TLS_KEY

      public static final String PROP_TLS_KEY
      The system property that sets the location of the TLS key file.
      See Also:
    • PROP_TLS_KEYPASS

      public static final String PROP_TLS_KEYPASS
      The system property that sets the password for the TLS key file.
      See Also:
    • PROP_TLS_KEYPASS_URI

      public static final String PROP_TLS_KEYPASS_URI
      The system property that sets the URI of a file to read to obtain the password for the TLS key file.
      See Also:
    • PROP_TLS_CERT

      public static final String PROP_TLS_CERT
      The system property that sets the location of the TLS cert file.
      See Also:
    • PROP_TLS_CA

      public static final String PROP_TLS_CA
      The system property that sets the location of the TLS CA file.
      See Also:
    • PROP_CREDENTIALS

      public static final String PROP_CREDENTIALS
      The system property to use to set the type of credentials to use.
      See Also:
  • Method Details

    • createServerCredentials

      public static io.grpc.ServerCredentials createServerCredentials(SocketProviderBuilder socketBuilder)
      Create the ServerCredentials to use for the gRPC Proxy.
      Parameters:
      socketBuilder - the optional SocketProviderBuilder to use to provide the TLS configuration
      Returns:
      the ServerCredentials to use for the gRPC Proxy
    • createChannelCredentials

      public static io.grpc.ChannelCredentials createChannelCredentials(SocketProviderBuilder socketBuilder)
      Create the ChannelCredentials to use for the client channel.

      If the property PROP_CREDENTIALS is "plaintext" then a non-TLS credentials will be created.

      If the property PROP_CREDENTIALS is "insecure" then TLS credentials will be created using an insecure trust manager that will not verify the server certs.

      If the property PROP_CREDENTIALS is "tls" then TLS credentials will be created using a specified key (from the PROP_TLS_KEY) and cert from (from the PROP_TLS_CERT). Optionally a key password (from the PROP_TLS_KEYPASS) and a CA (from the PROP_TLS_CA) may also be provided.

      If the property PROP_CREDENTIALS is not set, "plaintext" will be used.

      Parameters:
      socketBuilder - the channel SocketProviderBuilder
      Returns:
      the ChannelCredentials to use for the client channel.