mirror of
https://github.com/postgres/postgres.git
synced 2025-07-18 17:42:25 +03:00
Add settings to control SSL/TLS protocol version
For example: ssl_min_protocol_version = 'TLSv1.1' ssl_max_protocol_version = 'TLSv1.2' Reviewed-by: Steve Singer <steve@ssinger.info> Discussion: https://www.postgresql.org/message-id/flat/1822da87-b862-041a-9fc2-d0310c3da173@2ndquadrant.com
This commit is contained in:
@ -428,6 +428,15 @@ static const struct config_enum_entry password_encryption_options[] = {
|
||||
{NULL, 0, false}
|
||||
};
|
||||
|
||||
const struct config_enum_entry ssl_protocol_versions_info[] = {
|
||||
{"", PG_TLS_ANY, false},
|
||||
{"TLSv1", PG_TLS1_VERSION, false},
|
||||
{"TLSv1.1", PG_TLS1_1_VERSION, false},
|
||||
{"TLSv1.2", PG_TLS1_2_VERSION, false},
|
||||
{"TLSv1.3", PG_TLS1_3_VERSION, false},
|
||||
{NULL, 0, false}
|
||||
};
|
||||
|
||||
/*
|
||||
* Options for enum values stored in other modules
|
||||
*/
|
||||
@ -4193,6 +4202,30 @@ static struct config_enum ConfigureNamesEnum[] =
|
||||
NULL, NULL, NULL
|
||||
},
|
||||
|
||||
{
|
||||
{"ssl_min_protocol_version", PGC_SIGHUP, CONN_AUTH_SSL,
|
||||
gettext_noop("Sets the minimum SSL/TLS protocol version to use."),
|
||||
NULL,
|
||||
GUC_SUPERUSER_ONLY
|
||||
},
|
||||
&ssl_min_protocol_version,
|
||||
PG_TLS1_VERSION,
|
||||
ssl_protocol_versions_info + 1 /* don't allow PG_TLS_ANY */,
|
||||
NULL, NULL, NULL
|
||||
},
|
||||
|
||||
{
|
||||
{"ssl_max_protocol_version", PGC_SIGHUP, CONN_AUTH_SSL,
|
||||
gettext_noop("Sets the maximum SSL/TLS protocol version to use."),
|
||||
NULL,
|
||||
GUC_SUPERUSER_ONLY
|
||||
},
|
||||
&ssl_max_protocol_version,
|
||||
PG_TLS_ANY,
|
||||
ssl_protocol_versions_info,
|
||||
NULL, NULL, NULL
|
||||
},
|
||||
|
||||
/* End-of-list marker */
|
||||
{
|
||||
{NULL, 0, 0, NULL, NULL}, NULL, 0, NULL, NULL, NULL, NULL
|
||||
|
Reference in New Issue
Block a user