mirror of
https://github.com/postgres/postgres.git
synced 2025-11-18 02:02:55 +03:00
Support configuring TLSv1.3 cipher suites
The ssl_ciphers GUC can only set cipher suites for TLSv1.2, and lower, connections. For TLSv1.3 connections a different OpenSSL API must be used. This adds a new GUC, ssl_tls13_ciphers, which can be used to configure a colon separated list of cipher suites to support when performing a TLSv1.3 handshake. Original patch by Erica Zhang with additional hacking by me. Author: Erica Zhang <ericazhangy2021@qq.com> Author: Daniel Gustafsson <daniel@yesql.se> Reviewed-by: Jacob Champion <jacob.champion@enterprisedb.com> Reviewed-by: Andres Freund <andres@anarazel.de> Reviewed-by: Peter Eisentraut <peter@eisentraut.org> Reviewed-by: Jelte Fennema-Nio <postgres@jeltef.nl> Discussion: https://postgr.es/m/tencent_063F89FA72CCF2E48A0DF5338841988E9809@qq.com
This commit is contained in:
@@ -4641,12 +4641,23 @@ struct config_string ConfigureNamesString[] =
|
||||
},
|
||||
|
||||
{
|
||||
{"ssl_ciphers", PGC_SIGHUP, CONN_AUTH_SSL,
|
||||
gettext_noop("Sets the list of allowed SSL ciphers."),
|
||||
{"ssl_tls13_ciphers", PGC_SIGHUP, CONN_AUTH_SSL,
|
||||
gettext_noop("Sets the list of allowed TLSv1.3 cipher suites (leave blank for default)."),
|
||||
NULL,
|
||||
GUC_SUPERUSER_ONLY
|
||||
},
|
||||
&SSLCipherSuites,
|
||||
"",
|
||||
NULL, NULL, NULL
|
||||
},
|
||||
|
||||
{
|
||||
{"ssl_ciphers", PGC_SIGHUP, CONN_AUTH_SSL,
|
||||
gettext_noop("Sets the list of allowed TLSv1.2 (and lower) ciphers."),
|
||||
NULL,
|
||||
GUC_SUPERUSER_ONLY
|
||||
},
|
||||
&SSLCipherList,
|
||||
#ifdef USE_OPENSSL
|
||||
"HIGH:MEDIUM:+3DES:!aNULL",
|
||||
#else
|
||||
|
||||
@@ -110,7 +110,8 @@
|
||||
#ssl_crl_file = ''
|
||||
#ssl_crl_dir = ''
|
||||
#ssl_key_file = 'server.key'
|
||||
#ssl_ciphers = 'HIGH:MEDIUM:+3DES:!aNULL' # allowed SSL ciphers
|
||||
#ssl_ciphers = 'HIGH:MEDIUM:+3DES:!aNULL' # allowed TLSv1.2 ciphers
|
||||
#ssl_tls13_ciphers = '' # allowed TLSv1.3 cipher suites, blank for default
|
||||
#ssl_prefer_server_ciphers = on
|
||||
#ssl_groups = 'prime256v1'
|
||||
#ssl_min_protocol_version = 'TLSv1.2'
|
||||
|
||||
Reference in New Issue
Block a user