Control channel Spread TLS
The control channel allows nodes to exchange plan information with one another and to distribute calls among nodes. Enabling Spread security secures this communication with TLS. See Internode TLS for more information.
Internode TLS uses the following channels. Both must be enabled in the following order before you set other parameters:
-
Control Channel, implemented with Spread, which allows nodes to exchange plan information and distribute calls. For details, see spread.org.
-
Data Channel, implemented with TCP, which allows nodes to exchange table data.
Enable EncryptSpreadComm
EncryptSpreadComm controls Spread encryption and can be set to one of two values:
-
vertica
: Vertica generates the Spread encryption key for the cluster when the database starts up. -
aws-kms|
key_name
: Vertica fetches the user-specified key from the AWS Key Management Service when the database starts up, rather than generating one itself.
You can verify the current value of EncryptSpreadComm with SECURITY_CONFIG_CHECK:
In general, you should set the EncryptSpreadComm parameter to enable Spread encryption before setting any other security parameters.
To create a new database with EncryptSpreadComm set:
To set EncryptSpreadComm on an existing database:
- Set
EncryptSpreadComm
parameter with ALTER DATABASE: - Restart the database.
- Verify your settings with SECURITY_CONFIG_CHECK.
Privileges
Superuser
Restrictions
If you set this parameter on an existing database with ALTER DATABASE, you must restart the database for it to take effect.