Package oracle.jdbc

Interface SecurityInformation


public interface SecurityInformation
Interface to retrieve security details of the underlying network connection.
Since:
23ai
  • Method Details

    • getDNMatchStatus

      After connection establishment, calling this method returns the server DN verification status. Returns null if underlying protocol does not support DN verification.

      If DN is configured (through SSL_SERVER_CERT_DN), then the DN of the server's certificate must match the configured DN for the connection to be successful. In this case DNMatchStatus.VERIFIED_MATCHING_CONFIG is returned.

      If DN is not configured, standard DN verification will occur if the EZConnect+ URL format is used or if the property OracleConnection.CONNECTION_PROPERTY_THIN_SSL_SERVER_DN_MATCH is set to true or if SSL_SERVER_DN_MATCH is set to TRUE in the URL. If no DN verification is done then this method will return DNMatchStatus.NOT_VERIFIED.

      Standard DN verification is done using the host name or service name specified in the URL in the following order:

      1. If the host name from the URL is matched with one of the SANs (Subject Alternative Name) or the CN value from the server's certificate then DNMatchStatus.VERIFIED_MATCHING_HOSTNAME is returned.
      2. If the service name from the URL is matched with one of the SANs (Subject Alternative Name) or the CN value from the server's certificate then DNMatchStatus.VERIFIED_MATCHING_SERVICENAME is returned.

      Returns:
      dnMatchStatus
      See Also:
    • getServerDN

      String getServerDN()
      Returns the DN received from the TLS certificate of the server.
      Returns:
      The server certificate DN, or null if TLS is not enabled.
    • getTLSCipherSuite

      String getTLSCipherSuite()
      Returns the name of the CipherSuite used for securing the underlying TCPS connection.
      Returns:
      The cipher suite name, or null if TLS is not enabled.
      See Also:
    • getTLSVersion

      String getTLSVersion()
      Returns the TLS version negotiated with the server.
      Returns:
      The TLS version, or null if TLS is not enabled.
      See Also:
    • isNativeEncryptionEnabled

      boolean isNativeEncryptionEnabled()
      Returns true if the underlying network connection is protected by Native Network Encryption, otherwise returns false.
      Returns:
      true if Native Network Encryption is enabled, otherwise false
    • getEncryptionAlgorithm

      String getEncryptionAlgorithm()
      Returns the encryption algorithm which is used for encrypting the data packets transferred over the network with Native Network Encryption.
      Returns:
      The encryption algorithm name, or null if Native Network Encryption is not enabled.
      See Also:
    • getChecksummingAlgorithm

      String getChecksummingAlgorithm()
      Returns the checksumming algorithm name used for protecting the data packets transferred over the network with Native Network Encryption.
      Returns:
      The checksumming algorithm name, or null if Native Network Encryption is not enabled.
      See Also:
    • getEncryptionLevel

      String getEncryptionLevel()
      Returns the encryption level configured to negotiate Native Network Encryption with the server. Default value is ACCEPTED.
      Returns:
      The encryption level, or null if Native Network Encryption is not enabled.
      See Also:
    • getChecksumLevel

      String getChecksumLevel()
      Returns the checksumming level configured to negotiate Native Network Encryption with the server. Default value is ACCEPTED.
      Returns:
      The checksumming level, or null if Native Network Encryption is not enabled.
      See Also:
    • isStrongCryptoUsed

      boolean isStrongCryptoUsed()
      Returns true if strong key and IV are used to protect the data packets transferred over the network with Native Network Encryption.
      Returns:
      true if strong crypto is enabled, or false if it is disabled or if Native Network Encryption is not enabled.
      See Also:
    • getAuthenticationAdaptor

      Returns the type of the authentication mechanism used for authenticating the user to the Oracle Database Server. Default authentication mechanism is SecurityInformation.AuthenticationAdaptorType.O5LOGON.
      Returns:
      The authentication type. Not null.
    • getSNI

      String getSNI()
      Returns the Server Name Indication (SNI) value used while TLS handshake. Returns null If no SNI is used.
      See Also: