MySQL 9.3 Reference Manual Including MySQL NDB Cluster 9.3
When using the MySQL communication stack
(group_replication_communication_stack=MYSQL
)
AND secure connections between members
(group_replication_ssl_mode
is not set to DISABLED
), the security
settings discussed in this section are applied not just to
distributed recovery connections, but to group communications
between members in general. See
Section 20.6.1, “Communication Stack for Connection Security Management”.
Whether the distributed recovery connection is made using the standard SQL client connection or a distributed recovery endpoint, to configure the connection securely, you can use Group Replication's dedicated distributed recovery SSL options. These options correspond to the server SSL options that are used for group communication connections, but they are only applied for distributed recovery connections. By default, distributed recovery connections do not use SSL, even if you activated SSL for group communication connections, and the server SSL options are not applied for distributed recovery connections. You must configure these connections separately.
If a remote cloning operation is used as part of distributed recovery, Group Replication automatically configures the clone plugin's SSL options to match your settings for the distributed recovery SSL options. (For details of how the clone plugin uses SSL, see Configuring an Encrypted Connection for Cloning.)
The distributed recovery SSL options are as follows:
group_replication_recovery_use_ssl
:
Set to ON
to make Group Replication use
SSL for distributed recovery connections, including remote
cloning operations and state transfer from a donor's
binary log. If the server you connect to does not use the
default configuration for this (see
Section 8.3.1, “Configuring MySQL to Use Encrypted Connections”), use the
other distributed recovery SSL options to determine which
certificates and cipher suites to use.
group_replication_recovery_ssl_ca
:
The path name of the Certificate Authority (CA) file to use
for distributed recovery connections. Group Replication
automatically configures the clone SSL option
clone_ssl_ca
to match this.
group_replication_recovery_ssl_capath
:
The path name of a directory that contains trusted SSL
certificate authority (CA) certificate files.
group_replication_recovery_ssl_cert
:
The path name of the SSL public key certificate file to use
for distributed recovery connections. Group Replication
automatically configures the clone SSL option
clone_ssl_cert
to match
this.
group_replication_recovery_ssl_key
:
The path name of the SSL private key file to use for
distributed recovery connections. Group Replication
automatically configures the clone SSL option
clone_ssl_cert
to match
this.
group_replication_recovery_ssl_verify_server_cert
:
Makes the distributed recovery connection check the server's
Common Name value in the donor sent certificate. Setting
this option to ON
is the equivalent for
distributed recovery connections of setting
VERIFY_IDENTITY
for the
group_replication_ssl_mode
option for group communication connections.
group_replication_recovery_ssl_crl
:
The path name of a file containing certificate revocation
lists.
group_replication_recovery_ssl_crlpath
:
The path name of a directory containing certificate
revocation lists.
group_replication_recovery_ssl_cipher
:
A list of permissible ciphers for connection encryption for
the distributed recovery connection. Specify a list of one
or more cipher names, separated by colons. For information
about which encryption ciphers MySQL supports, see
Section 8.3.2, “Encrypted Connection TLS Protocols and Ciphers”.
group_replication_recovery_tls_version
:
A comma-separated list of one or more permitted TLS
protocols for connection encryption when this server
instance is the client in the distributed recovery
connection, that is, the joining member. The default for
this system variable depends on the TLS protocol versions
supported in the MySQL Server release. The group members
involved in each distributed recovery connection as the
client (joining member) and server (donor) negotiate the
highest protocol version that they are both set up to
support.
group_replication_recovery_tls_ciphersuites
:
A colon-separated list of one or more permitted ciphersuites
when TLSv1.3 is used for connection encryption for the
distributed recovery connection, and this server instance is
the client in the distributed recovery connection, that is,
the joining member. If this system variable is set to
NULL
when TLSv1.3 is used (which is the
default if you do not set the system variable), the
ciphersuites that are enabled by default are allowed, as
listed in
Section 8.3.2, “Encrypted Connection TLS Protocols and Ciphers”. If
this system variable is set to the empty string, no cipher
suites are allowed, and TLSv1.3 is therefore not used.