SSLConfiguration

class oci.load_balancer.models.SSLConfiguration(**kwargs)

Bases: object

A listener’s SSL handling configuration.

To use SSL, a listener must be associated with a Certificate.

Warning: Oracle recommends that you avoid using any confidential information when you supply string values using the API.

Attributes

SERVER_ORDER_PREFERENCE_DISABLED A constant which can be used with the server_order_preference property of a SSLConfiguration.
SERVER_ORDER_PREFERENCE_ENABLED A constant which can be used with the server_order_preference property of a SSLConfiguration.
certificate_ids Gets the certificate_ids of this SSLConfiguration.
certificate_name Gets the certificate_name of this SSLConfiguration.
cipher_suite_name Gets the cipher_suite_name of this SSLConfiguration.
has_session_resumption Gets the has_session_resumption of this SSLConfiguration.
protocols Gets the protocols of this SSLConfiguration.
server_order_preference Gets the server_order_preference of this SSLConfiguration.
trusted_certificate_authority_ids Gets the trusted_certificate_authority_ids of this SSLConfiguration.
verify_depth [Required] Gets the verify_depth of this SSLConfiguration.
verify_peer_certificate [Required] Gets the verify_peer_certificate of this SSLConfiguration.

Methods

__init__(**kwargs) Initializes a new SSLConfiguration object with values from keyword arguments.
SERVER_ORDER_PREFERENCE_DISABLED = 'DISABLED'

A constant which can be used with the server_order_preference property of a SSLConfiguration. This constant has a value of “DISABLED”

SERVER_ORDER_PREFERENCE_ENABLED = 'ENABLED'

A constant which can be used with the server_order_preference property of a SSLConfiguration. This constant has a value of “ENABLED”

__init__(**kwargs)

Initializes a new SSLConfiguration object with values from keyword arguments. The following keyword arguments are supported (corresponding to the getters/setters of this class):

Parameters:
  • verify_depth (int) – The value to assign to the verify_depth property of this SSLConfiguration.
  • verify_peer_certificate (bool) – The value to assign to the verify_peer_certificate property of this SSLConfiguration.
  • has_session_resumption (bool) – The value to assign to the has_session_resumption property of this SSLConfiguration.
  • trusted_certificate_authority_ids (list[str]) – The value to assign to the trusted_certificate_authority_ids property of this SSLConfiguration.
  • certificate_ids (list[str]) – The value to assign to the certificate_ids property of this SSLConfiguration.
  • certificate_name (str) – The value to assign to the certificate_name property of this SSLConfiguration.
  • server_order_preference (str) – The value to assign to the server_order_preference property of this SSLConfiguration. Allowed values for this property are: “ENABLED”, “DISABLED”, ‘UNKNOWN_ENUM_VALUE’. Any unrecognized values returned by a service will be mapped to ‘UNKNOWN_ENUM_VALUE’.
  • cipher_suite_name (str) – The value to assign to the cipher_suite_name property of this SSLConfiguration.
  • protocols (list[str]) – The value to assign to the protocols property of this SSLConfiguration.
certificate_ids

Gets the certificate_ids of this SSLConfiguration. Ids for OCI certificates service certificates. Currently only a single Id may be passed.

Example: [ocid1.certificate.oc1.us-ashburn-1.amaaaaaaav3bgsaa5o2q7rh5nfmkkukfkogasqhk6af2opufhjlqg7m6jqzq]

Returns:The certificate_ids of this SSLConfiguration.
Return type:list[str]
certificate_name

Gets the certificate_name of this SSLConfiguration. A friendly name for the certificate bundle. It must be unique and it cannot be changed. Valid certificate bundle names include only alphanumeric characters, dashes, and underscores. Certificate bundle names cannot contain spaces. Avoid entering confidential information.

Example: example_certificate_bundle

Returns:The certificate_name of this SSLConfiguration.
Return type:str
cipher_suite_name

Gets the cipher_suite_name of this SSLConfiguration. The name of the cipher suite to use for HTTPS or SSL connections.

If this field is not specified, the default is oci-default-ssl-cipher-suite-v1.

Notes:

  • You must ensure compatibility between the specified SSL protocols and the ciphers configured in the cipher suite. Clients cannot perform an SSL handshake if there is an incompatible configuration.
  • You must ensure compatibility between the ciphers configured in the cipher suite and the configured certificates. For example, RSA-based ciphers require RSA certificates and ECDSA-based ciphers require ECDSA certificates.
  • If the cipher configuration is not modified after load balancer creation, the GET operation returns oci-default-ssl-cipher-suite-v1 as the value of this field in the SSL configuration for existing listeners that predate this feature.
  • If the cipher configuration was modified using Oracle operations after load balancer creation, the GET operation returns oci-customized-ssl-cipher-suite as the value of this field in the SSL configuration for existing listeners that predate this feature.
  • The GET operation returns oci-wider-compatible-ssl-cipher-suite-v1 as the value of this field in the SSL configuration for existing backend sets that predate this feature.
  • If the GET operation on a listener returns oci-customized-ssl-cipher-suite as the value of this field, you must specify an appropriate predefined or custom cipher suite name when updating the resource.
  • The oci-customized-ssl-cipher-suite Oracle reserved cipher suite name is not accepted as valid input for this field.

example: example_cipher_suite

Returns:The cipher_suite_name of this SSLConfiguration.
Return type:str
has_session_resumption

Gets the has_session_resumption of this SSLConfiguration. Whether the load balancer listener should resume an encrypted session by reusing the cryptographic parameters of a previous TLS session, without having to perform a full handshake again. If “true”, the service resumes the previous TLS encrypted session. If “false”, the service starts a new TLS encrypted session. Enabling session resumption improves performance but provides a lower level of security. Disabling session resumption improves security but reduces performance.

Example: true

Returns:The has_session_resumption of this SSLConfiguration.
Return type:bool
protocols

Gets the protocols of this SSLConfiguration. A list of SSL protocols the load balancer must support for HTTPS or SSL connections.

The load balancer uses SSL protocols to establish a secure connection between a client and a server. A secure connection ensures that all data passed between the client and the server is private.

The Load Balancing service supports the following protocols:

  • TLSv1
  • TLSv1.1
  • TLSv1.2
  • TLSv1.3

If this field is not specified, TLSv1.2 is the default.

Warning: All SSL listeners created on a given port must use the same set of SSL protocols.

Notes:

  • The handshake to establish an SSL connection fails if the client supports none of the specified protocols.
  • You must ensure compatibility between the specified SSL protocols and the ciphers configured in the cipher suite.
  • For all existing load balancer listeners and backend sets that predate this feature, the GET operation displays a list of SSL protocols currently used by those resources.

example: [“TLSv1.1”, “TLSv1.2”]

Returns:The protocols of this SSLConfiguration.
Return type:list[str]
server_order_preference

Gets the server_order_preference of this SSLConfiguration. When this attribute is set to ENABLED, the system gives preference to the server ciphers over the client ciphers.

Note: This configuration is applicable only when the load balancer is acting as an SSL/HTTPS server. This
field is ignored when the SSLConfiguration object is associated with a backend set.

Allowed values for this property are: “ENABLED”, “DISABLED”, ‘UNKNOWN_ENUM_VALUE’. Any unrecognized values returned by a service will be mapped to ‘UNKNOWN_ENUM_VALUE’.

Returns:The server_order_preference of this SSLConfiguration.
Return type:str
trusted_certificate_authority_ids

Gets the trusted_certificate_authority_ids of this SSLConfiguration. Ids for OCI certificates service CA or CA bundles for the load balancer to trust.

Example: [ocid1.cabundle.oc1.us-ashburn-1.amaaaaaaav3bgsaagl4zzyqdop5i2vuwoqewdvauuw34llqa74otq2jdsfyq]

Returns:The trusted_certificate_authority_ids of this SSLConfiguration.
Return type:list[str]
verify_depth

[Required] Gets the verify_depth of this SSLConfiguration. The maximum depth for peer certificate chain verification.

Example: 3

Returns:The verify_depth of this SSLConfiguration.
Return type:int
verify_peer_certificate

[Required] Gets the verify_peer_certificate of this SSLConfiguration. Whether the load balancer listener should verify peer certificates.

Example: true

Returns:The verify_peer_certificate of this SSLConfiguration.
Return type:bool