agora inbox for [email protected]help / color / mirror / Atom feed
[PATCH] Enable replication connections by default in pg_hba.conf 37+ messages / 2 participants [nested] [flat]
* [PATCH] Enable replication connections by default in pg_hba.conf @ 2017-03-06 19:53 Peter Eisentraut <[email protected]> 0 siblings, 0 replies; 37+ messages in thread From: Peter Eisentraut @ 2017-03-06 19:53 UTC (permalink / raw) --- src/backend/libpq/pg_hba.conf.sample | 6 +++--- src/bin/pg_basebackup/t/010_pg_basebackup.pl | 7 ++----- src/test/perl/PostgresNode.pm | 19 ++----------------- 3 files changed, 7 insertions(+), 25 deletions(-) diff --git a/src/backend/libpq/pg_hba.conf.sample b/src/backend/libpq/pg_hba.conf.sample index e0fbfcb026..b0852c82c0 100644 --- a/src/backend/libpq/pg_hba.conf.sample +++ b/src/backend/libpq/pg_hba.conf.sample @@ -84,6 +84,6 @@ host all all 127.0.0.1/32 @authmethodhost@ host all all ::1/128 @authmethodhost@ # Allow replication connections from localhost, by a user with the # replication privilege. -@remove-line-for-nolocal@#local replication @default_username@ @authmethodlocal@ -#host replication @default_username@ 127.0.0.1/32 @authmethodhost@ -#host replication @default_username@ ::1/128 @authmethodhost@ +@remove-line-for-nolocal@local replication @default_username@ @authmethodlocal@ +host replication @default_username@ 127.0.0.1/32 @authmethodhost@ +host replication @default_username@ ::1/128 @authmethodhost@ diff --git a/src/bin/pg_basebackup/t/010_pg_basebackup.pl b/src/bin/pg_basebackup/t/010_pg_basebackup.pl index aafb138fd5..14bd813896 100644 --- a/src/bin/pg_basebackup/t/010_pg_basebackup.pl +++ b/src/bin/pg_basebackup/t/010_pg_basebackup.pl @@ -4,7 +4,7 @@ use Config; use PostgresNode; use TestLib; -use Test::More tests => 73; +use Test::More tests => 72; program_help_ok('pg_basebackup'); program_version_ok('pg_basebackup'); @@ -15,15 +15,12 @@ my $node = get_new_node('main'); # Initialize node without replication settings -$node->init(hba_permit_replication => 0); +$node->init; $node->start; my $pgdata = $node->data_dir; $node->command_fails(['pg_basebackup'], 'pg_basebackup needs target directory specified'); -$node->command_fails( - [ 'pg_basebackup', '-D', "$tempdir/backup" ], - 'pg_basebackup fails because of hba'); # Some Windows ANSI code pages may reject this filename, in which case we # quietly proceed without this bit of test coverage. diff --git a/src/test/perl/PostgresNode.pm b/src/test/perl/PostgresNode.pm index e5cb348f4c..7e530676b2 100644 --- a/src/test/perl/PostgresNode.pm +++ b/src/test/perl/PostgresNode.pm @@ -349,11 +349,7 @@ sub set_replication_conf open my $hba, ">>$pgdata/pg_hba.conf"; print $hba "\n# Allow replication (set up by PostgresNode.pm)\n"; - if (!$TestLib::windows_os) - { - print $hba "local replication all trust\n"; - } - else + if ($TestLib::windows_os) { print $hba "host replication all $test_localhost/32 sspi include_realm=1 map=regress\n"; @@ -373,9 +369,6 @@ a directory that's only accessible to the current user to ensure that. On Windows, we use SSPI authentication to ensure the same (by pg_regress --config-auth). -pg_hba.conf is configured to allow replication connections. Pass the keyword -parameter hba_permit_replication => 0 to disable this. - WAL archiving can be enabled on this node by passing the keyword parameter has_archiving => 1. This is disabled by default. @@ -396,8 +389,6 @@ sub init my $pgdata = $self->data_dir; my $host = $self->host; - $params{hba_permit_replication} = 1 - unless defined $params{hba_permit_replication}; $params{allows_streaming} = 0 unless defined $params{allows_streaming}; $params{has_archiving} = 0 unless defined $params{has_archiving}; @@ -451,7 +442,7 @@ sub init } close $conf; - $self->set_replication_conf if $params{hba_permit_replication}; + $self->set_replication_conf if $params{allows_streaming}; $self->enable_archiving if $params{has_archiving}; } @@ -591,9 +582,6 @@ Does not start the node after initializing it. A recovery.conf is not created. -pg_hba.conf is configured to allow replication connections. Pass the keyword -parameter hba_permit_replication => 0 to disable this. - Streaming replication can be enabled on this node by passing the keyword parameter has_streaming => 1. This is disabled by default. @@ -615,8 +603,6 @@ sub init_from_backup my $root_name = $root_node->name; $params{has_streaming} = 0 unless defined $params{has_streaming}; - $params{hba_permit_replication} = 1 - unless defined $params{hba_permit_replication}; $params{has_restoring} = 0 unless defined $params{has_restoring}; print @@ -638,7 +624,6 @@ sub init_from_backup qq( port = $port )); - $self->set_replication_conf if $params{hba_permit_replication}; $self->enable_streaming($root_node) if $params{has_streaming}; $self->enable_restoring($root_node) if $params{has_restoring}; } -- 2.12.0 --------------392F5296BC5B7988B13A769D Content-Type: text/plain Content-Disposition: inline Content-Transfer-Encoding: 8bit MIME-Version: 1.0 -- Sent via pgsql-hackers mailing list ([email protected]) To make changes to your subscription: http://www.postgresql.org/mailpref/pgsql-hackers --------------392F5296BC5B7988B13A769D-- ^ permalink raw reply [nested|flat] 37+ messages in thread
* [PATCH] Enable replication connections by default in pg_hba.conf @ 2017-03-06 19:53 Peter Eisentraut <[email protected]> 0 siblings, 0 replies; 37+ messages in thread From: Peter Eisentraut @ 2017-03-06 19:53 UTC (permalink / raw) --- src/backend/libpq/pg_hba.conf.sample | 6 +++--- src/bin/pg_basebackup/t/010_pg_basebackup.pl | 7 ++----- src/test/perl/PostgresNode.pm | 19 ++----------------- 3 files changed, 7 insertions(+), 25 deletions(-) diff --git a/src/backend/libpq/pg_hba.conf.sample b/src/backend/libpq/pg_hba.conf.sample index e0fbfcb026..b0852c82c0 100644 --- a/src/backend/libpq/pg_hba.conf.sample +++ b/src/backend/libpq/pg_hba.conf.sample @@ -84,6 +84,6 @@ host all all 127.0.0.1/32 @authmethodhost@ host all all ::1/128 @authmethodhost@ # Allow replication connections from localhost, by a user with the # replication privilege. -@remove-line-for-nolocal@#local replication @default_username@ @authmethodlocal@ -#host replication @default_username@ 127.0.0.1/32 @authmethodhost@ -#host replication @default_username@ ::1/128 @authmethodhost@ +@remove-line-for-nolocal@local replication @default_username@ @authmethodlocal@ +host replication @default_username@ 127.0.0.1/32 @authmethodhost@ +host replication @default_username@ ::1/128 @authmethodhost@ diff --git a/src/bin/pg_basebackup/t/010_pg_basebackup.pl b/src/bin/pg_basebackup/t/010_pg_basebackup.pl index aafb138fd5..14bd813896 100644 --- a/src/bin/pg_basebackup/t/010_pg_basebackup.pl +++ b/src/bin/pg_basebackup/t/010_pg_basebackup.pl @@ -4,7 +4,7 @@ use Config; use PostgresNode; use TestLib; -use Test::More tests => 73; +use Test::More tests => 72; program_help_ok('pg_basebackup'); program_version_ok('pg_basebackup'); @@ -15,15 +15,12 @@ my $node = get_new_node('main'); # Initialize node without replication settings -$node->init(hba_permit_replication => 0); +$node->init; $node->start; my $pgdata = $node->data_dir; $node->command_fails(['pg_basebackup'], 'pg_basebackup needs target directory specified'); -$node->command_fails( - [ 'pg_basebackup', '-D', "$tempdir/backup" ], - 'pg_basebackup fails because of hba'); # Some Windows ANSI code pages may reject this filename, in which case we # quietly proceed without this bit of test coverage. diff --git a/src/test/perl/PostgresNode.pm b/src/test/perl/PostgresNode.pm index e5cb348f4c..7e530676b2 100644 --- a/src/test/perl/PostgresNode.pm +++ b/src/test/perl/PostgresNode.pm @@ -349,11 +349,7 @@ sub set_replication_conf open my $hba, ">>$pgdata/pg_hba.conf"; print $hba "\n# Allow replication (set up by PostgresNode.pm)\n"; - if (!$TestLib::windows_os) - { - print $hba "local replication all trust\n"; - } - else + if ($TestLib::windows_os) { print $hba "host replication all $test_localhost/32 sspi include_realm=1 map=regress\n"; @@ -373,9 +369,6 @@ a directory that's only accessible to the current user to ensure that. On Windows, we use SSPI authentication to ensure the same (by pg_regress --config-auth). -pg_hba.conf is configured to allow replication connections. Pass the keyword -parameter hba_permit_replication => 0 to disable this. - WAL archiving can be enabled on this node by passing the keyword parameter has_archiving => 1. This is disabled by default. @@ -396,8 +389,6 @@ sub init my $pgdata = $self->data_dir; my $host = $self->host; - $params{hba_permit_replication} = 1 - unless defined $params{hba_permit_replication}; $params{allows_streaming} = 0 unless defined $params{allows_streaming}; $params{has_archiving} = 0 unless defined $params{has_archiving}; @@ -451,7 +442,7 @@ sub init } close $conf; - $self->set_replication_conf if $params{hba_permit_replication}; + $self->set_replication_conf if $params{allows_streaming}; $self->enable_archiving if $params{has_archiving}; } @@ -591,9 +582,6 @@ Does not start the node after initializing it. A recovery.conf is not created. -pg_hba.conf is configured to allow replication connections. Pass the keyword -parameter hba_permit_replication => 0 to disable this. - Streaming replication can be enabled on this node by passing the keyword parameter has_streaming => 1. This is disabled by default. @@ -615,8 +603,6 @@ sub init_from_backup my $root_name = $root_node->name; $params{has_streaming} = 0 unless defined $params{has_streaming}; - $params{hba_permit_replication} = 1 - unless defined $params{hba_permit_replication}; $params{has_restoring} = 0 unless defined $params{has_restoring}; print @@ -638,7 +624,6 @@ sub init_from_backup qq( port = $port )); - $self->set_replication_conf if $params{hba_permit_replication}; $self->enable_streaming($root_node) if $params{has_streaming}; $self->enable_restoring($root_node) if $params{has_restoring}; } -- 2.12.0 --------------392F5296BC5B7988B13A769D Content-Type: text/plain Content-Disposition: inline Content-Transfer-Encoding: 8bit MIME-Version: 1.0 -- Sent via pgsql-hackers mailing list ([email protected]) To make changes to your subscription: http://www.postgresql.org/mailpref/pgsql-hackers --------------392F5296BC5B7988B13A769D-- ^ permalink raw reply [nested|flat] 37+ messages in thread
* [PATCH] Enable replication connections by default in pg_hba.conf @ 2017-03-06 19:53 Peter Eisentraut <[email protected]> 0 siblings, 0 replies; 37+ messages in thread From: Peter Eisentraut @ 2017-03-06 19:53 UTC (permalink / raw) --- src/backend/libpq/pg_hba.conf.sample | 6 +++--- src/bin/pg_basebackup/t/010_pg_basebackup.pl | 7 ++----- src/test/perl/PostgresNode.pm | 19 ++----------------- 3 files changed, 7 insertions(+), 25 deletions(-) diff --git a/src/backend/libpq/pg_hba.conf.sample b/src/backend/libpq/pg_hba.conf.sample index e0fbfcb026..b0852c82c0 100644 --- a/src/backend/libpq/pg_hba.conf.sample +++ b/src/backend/libpq/pg_hba.conf.sample @@ -84,6 +84,6 @@ host all all 127.0.0.1/32 @authmethodhost@ host all all ::1/128 @authmethodhost@ # Allow replication connections from localhost, by a user with the # replication privilege. -@remove-line-for-nolocal@#local replication @default_username@ @authmethodlocal@ -#host replication @default_username@ 127.0.0.1/32 @authmethodhost@ -#host replication @default_username@ ::1/128 @authmethodhost@ +@remove-line-for-nolocal@local replication @default_username@ @authmethodlocal@ +host replication @default_username@ 127.0.0.1/32 @authmethodhost@ +host replication @default_username@ ::1/128 @authmethodhost@ diff --git a/src/bin/pg_basebackup/t/010_pg_basebackup.pl b/src/bin/pg_basebackup/t/010_pg_basebackup.pl index aafb138fd5..14bd813896 100644 --- a/src/bin/pg_basebackup/t/010_pg_basebackup.pl +++ b/src/bin/pg_basebackup/t/010_pg_basebackup.pl @@ -4,7 +4,7 @@ use Config; use PostgresNode; use TestLib; -use Test::More tests => 73; +use Test::More tests => 72; program_help_ok('pg_basebackup'); program_version_ok('pg_basebackup'); @@ -15,15 +15,12 @@ my $node = get_new_node('main'); # Initialize node without replication settings -$node->init(hba_permit_replication => 0); +$node->init; $node->start; my $pgdata = $node->data_dir; $node->command_fails(['pg_basebackup'], 'pg_basebackup needs target directory specified'); -$node->command_fails( - [ 'pg_basebackup', '-D', "$tempdir/backup" ], - 'pg_basebackup fails because of hba'); # Some Windows ANSI code pages may reject this filename, in which case we # quietly proceed without this bit of test coverage. diff --git a/src/test/perl/PostgresNode.pm b/src/test/perl/PostgresNode.pm index e5cb348f4c..7e530676b2 100644 --- a/src/test/perl/PostgresNode.pm +++ b/src/test/perl/PostgresNode.pm @@ -349,11 +349,7 @@ sub set_replication_conf open my $hba, ">>$pgdata/pg_hba.conf"; print $hba "\n# Allow replication (set up by PostgresNode.pm)\n"; - if (!$TestLib::windows_os) - { - print $hba "local replication all trust\n"; - } - else + if ($TestLib::windows_os) { print $hba "host replication all $test_localhost/32 sspi include_realm=1 map=regress\n"; @@ -373,9 +369,6 @@ a directory that's only accessible to the current user to ensure that. On Windows, we use SSPI authentication to ensure the same (by pg_regress --config-auth). -pg_hba.conf is configured to allow replication connections. Pass the keyword -parameter hba_permit_replication => 0 to disable this. - WAL archiving can be enabled on this node by passing the keyword parameter has_archiving => 1. This is disabled by default. @@ -396,8 +389,6 @@ sub init my $pgdata = $self->data_dir; my $host = $self->host; - $params{hba_permit_replication} = 1 - unless defined $params{hba_permit_replication}; $params{allows_streaming} = 0 unless defined $params{allows_streaming}; $params{has_archiving} = 0 unless defined $params{has_archiving}; @@ -451,7 +442,7 @@ sub init } close $conf; - $self->set_replication_conf if $params{hba_permit_replication}; + $self->set_replication_conf if $params{allows_streaming}; $self->enable_archiving if $params{has_archiving}; } @@ -591,9 +582,6 @@ Does not start the node after initializing it. A recovery.conf is not created. -pg_hba.conf is configured to allow replication connections. Pass the keyword -parameter hba_permit_replication => 0 to disable this. - Streaming replication can be enabled on this node by passing the keyword parameter has_streaming => 1. This is disabled by default. @@ -615,8 +603,6 @@ sub init_from_backup my $root_name = $root_node->name; $params{has_streaming} = 0 unless defined $params{has_streaming}; - $params{hba_permit_replication} = 1 - unless defined $params{hba_permit_replication}; $params{has_restoring} = 0 unless defined $params{has_restoring}; print @@ -638,7 +624,6 @@ sub init_from_backup qq( port = $port )); - $self->set_replication_conf if $params{hba_permit_replication}; $self->enable_streaming($root_node) if $params{has_streaming}; $self->enable_restoring($root_node) if $params{has_restoring}; } -- 2.12.0 --------------392F5296BC5B7988B13A769D Content-Type: text/plain Content-Disposition: inline Content-Transfer-Encoding: 8bit MIME-Version: 1.0 -- Sent via pgsql-hackers mailing list ([email protected]) To make changes to your subscription: http://www.postgresql.org/mailpref/pgsql-hackers --------------392F5296BC5B7988B13A769D-- ^ permalink raw reply [nested|flat] 37+ messages in thread
* [PATCH] Enable replication connections by default in pg_hba.conf @ 2017-03-06 19:53 Peter Eisentraut <[email protected]> 0 siblings, 0 replies; 37+ messages in thread From: Peter Eisentraut @ 2017-03-06 19:53 UTC (permalink / raw) --- src/backend/libpq/pg_hba.conf.sample | 6 +++--- src/bin/pg_basebackup/t/010_pg_basebackup.pl | 7 ++----- src/test/perl/PostgresNode.pm | 19 ++----------------- 3 files changed, 7 insertions(+), 25 deletions(-) diff --git a/src/backend/libpq/pg_hba.conf.sample b/src/backend/libpq/pg_hba.conf.sample index e0fbfcb026..b0852c82c0 100644 --- a/src/backend/libpq/pg_hba.conf.sample +++ b/src/backend/libpq/pg_hba.conf.sample @@ -84,6 +84,6 @@ host all all 127.0.0.1/32 @authmethodhost@ host all all ::1/128 @authmethodhost@ # Allow replication connections from localhost, by a user with the # replication privilege. -@remove-line-for-nolocal@#local replication @default_username@ @authmethodlocal@ -#host replication @default_username@ 127.0.0.1/32 @authmethodhost@ -#host replication @default_username@ ::1/128 @authmethodhost@ +@remove-line-for-nolocal@local replication @default_username@ @authmethodlocal@ +host replication @default_username@ 127.0.0.1/32 @authmethodhost@ +host replication @default_username@ ::1/128 @authmethodhost@ diff --git a/src/bin/pg_basebackup/t/010_pg_basebackup.pl b/src/bin/pg_basebackup/t/010_pg_basebackup.pl index aafb138fd5..14bd813896 100644 --- a/src/bin/pg_basebackup/t/010_pg_basebackup.pl +++ b/src/bin/pg_basebackup/t/010_pg_basebackup.pl @@ -4,7 +4,7 @@ use Config; use PostgresNode; use TestLib; -use Test::More tests => 73; +use Test::More tests => 72; program_help_ok('pg_basebackup'); program_version_ok('pg_basebackup'); @@ -15,15 +15,12 @@ my $node = get_new_node('main'); # Initialize node without replication settings -$node->init(hba_permit_replication => 0); +$node->init; $node->start; my $pgdata = $node->data_dir; $node->command_fails(['pg_basebackup'], 'pg_basebackup needs target directory specified'); -$node->command_fails( - [ 'pg_basebackup', '-D', "$tempdir/backup" ], - 'pg_basebackup fails because of hba'); # Some Windows ANSI code pages may reject this filename, in which case we # quietly proceed without this bit of test coverage. diff --git a/src/test/perl/PostgresNode.pm b/src/test/perl/PostgresNode.pm index e5cb348f4c..7e530676b2 100644 --- a/src/test/perl/PostgresNode.pm +++ b/src/test/perl/PostgresNode.pm @@ -349,11 +349,7 @@ sub set_replication_conf open my $hba, ">>$pgdata/pg_hba.conf"; print $hba "\n# Allow replication (set up by PostgresNode.pm)\n"; - if (!$TestLib::windows_os) - { - print $hba "local replication all trust\n"; - } - else + if ($TestLib::windows_os) { print $hba "host replication all $test_localhost/32 sspi include_realm=1 map=regress\n"; @@ -373,9 +369,6 @@ a directory that's only accessible to the current user to ensure that. On Windows, we use SSPI authentication to ensure the same (by pg_regress --config-auth). -pg_hba.conf is configured to allow replication connections. Pass the keyword -parameter hba_permit_replication => 0 to disable this. - WAL archiving can be enabled on this node by passing the keyword parameter has_archiving => 1. This is disabled by default. @@ -396,8 +389,6 @@ sub init my $pgdata = $self->data_dir; my $host = $self->host; - $params{hba_permit_replication} = 1 - unless defined $params{hba_permit_replication}; $params{allows_streaming} = 0 unless defined $params{allows_streaming}; $params{has_archiving} = 0 unless defined $params{has_archiving}; @@ -451,7 +442,7 @@ sub init } close $conf; - $self->set_replication_conf if $params{hba_permit_replication}; + $self->set_replication_conf if $params{allows_streaming}; $self->enable_archiving if $params{has_archiving}; } @@ -591,9 +582,6 @@ Does not start the node after initializing it. A recovery.conf is not created. -pg_hba.conf is configured to allow replication connections. Pass the keyword -parameter hba_permit_replication => 0 to disable this. - Streaming replication can be enabled on this node by passing the keyword parameter has_streaming => 1. This is disabled by default. @@ -615,8 +603,6 @@ sub init_from_backup my $root_name = $root_node->name; $params{has_streaming} = 0 unless defined $params{has_streaming}; - $params{hba_permit_replication} = 1 - unless defined $params{hba_permit_replication}; $params{has_restoring} = 0 unless defined $params{has_restoring}; print @@ -638,7 +624,6 @@ sub init_from_backup qq( port = $port )); - $self->set_replication_conf if $params{hba_permit_replication}; $self->enable_streaming($root_node) if $params{has_streaming}; $self->enable_restoring($root_node) if $params{has_restoring}; } -- 2.12.0 --------------392F5296BC5B7988B13A769D Content-Type: text/plain Content-Disposition: inline Content-Transfer-Encoding: 8bit MIME-Version: 1.0 -- Sent via pgsql-hackers mailing list ([email protected]) To make changes to your subscription: http://www.postgresql.org/mailpref/pgsql-hackers --------------392F5296BC5B7988B13A769D-- ^ permalink raw reply [nested|flat] 37+ messages in thread
* [PATCH] Enable replication connections by default in pg_hba.conf @ 2017-03-06 19:53 Peter Eisentraut <[email protected]> 0 siblings, 0 replies; 37+ messages in thread From: Peter Eisentraut @ 2017-03-06 19:53 UTC (permalink / raw) --- src/backend/libpq/pg_hba.conf.sample | 6 +++--- src/bin/pg_basebackup/t/010_pg_basebackup.pl | 7 ++----- src/test/perl/PostgresNode.pm | 19 ++----------------- 3 files changed, 7 insertions(+), 25 deletions(-) diff --git a/src/backend/libpq/pg_hba.conf.sample b/src/backend/libpq/pg_hba.conf.sample index e0fbfcb026..b0852c82c0 100644 --- a/src/backend/libpq/pg_hba.conf.sample +++ b/src/backend/libpq/pg_hba.conf.sample @@ -84,6 +84,6 @@ host all all 127.0.0.1/32 @authmethodhost@ host all all ::1/128 @authmethodhost@ # Allow replication connections from localhost, by a user with the # replication privilege. -@remove-line-for-nolocal@#local replication @default_username@ @authmethodlocal@ -#host replication @default_username@ 127.0.0.1/32 @authmethodhost@ -#host replication @default_username@ ::1/128 @authmethodhost@ +@remove-line-for-nolocal@local replication @default_username@ @authmethodlocal@ +host replication @default_username@ 127.0.0.1/32 @authmethodhost@ +host replication @default_username@ ::1/128 @authmethodhost@ diff --git a/src/bin/pg_basebackup/t/010_pg_basebackup.pl b/src/bin/pg_basebackup/t/010_pg_basebackup.pl index aafb138fd5..14bd813896 100644 --- a/src/bin/pg_basebackup/t/010_pg_basebackup.pl +++ b/src/bin/pg_basebackup/t/010_pg_basebackup.pl @@ -4,7 +4,7 @@ use Config; use PostgresNode; use TestLib; -use Test::More tests => 73; +use Test::More tests => 72; program_help_ok('pg_basebackup'); program_version_ok('pg_basebackup'); @@ -15,15 +15,12 @@ my $node = get_new_node('main'); # Initialize node without replication settings -$node->init(hba_permit_replication => 0); +$node->init; $node->start; my $pgdata = $node->data_dir; $node->command_fails(['pg_basebackup'], 'pg_basebackup needs target directory specified'); -$node->command_fails( - [ 'pg_basebackup', '-D', "$tempdir/backup" ], - 'pg_basebackup fails because of hba'); # Some Windows ANSI code pages may reject this filename, in which case we # quietly proceed without this bit of test coverage. diff --git a/src/test/perl/PostgresNode.pm b/src/test/perl/PostgresNode.pm index e5cb348f4c..7e530676b2 100644 --- a/src/test/perl/PostgresNode.pm +++ b/src/test/perl/PostgresNode.pm @@ -349,11 +349,7 @@ sub set_replication_conf open my $hba, ">>$pgdata/pg_hba.conf"; print $hba "\n# Allow replication (set up by PostgresNode.pm)\n"; - if (!$TestLib::windows_os) - { - print $hba "local replication all trust\n"; - } - else + if ($TestLib::windows_os) { print $hba "host replication all $test_localhost/32 sspi include_realm=1 map=regress\n"; @@ -373,9 +369,6 @@ a directory that's only accessible to the current user to ensure that. On Windows, we use SSPI authentication to ensure the same (by pg_regress --config-auth). -pg_hba.conf is configured to allow replication connections. Pass the keyword -parameter hba_permit_replication => 0 to disable this. - WAL archiving can be enabled on this node by passing the keyword parameter has_archiving => 1. This is disabled by default. @@ -396,8 +389,6 @@ sub init my $pgdata = $self->data_dir; my $host = $self->host; - $params{hba_permit_replication} = 1 - unless defined $params{hba_permit_replication}; $params{allows_streaming} = 0 unless defined $params{allows_streaming}; $params{has_archiving} = 0 unless defined $params{has_archiving}; @@ -451,7 +442,7 @@ sub init } close $conf; - $self->set_replication_conf if $params{hba_permit_replication}; + $self->set_replication_conf if $params{allows_streaming}; $self->enable_archiving if $params{has_archiving}; } @@ -591,9 +582,6 @@ Does not start the node after initializing it. A recovery.conf is not created. -pg_hba.conf is configured to allow replication connections. Pass the keyword -parameter hba_permit_replication => 0 to disable this. - Streaming replication can be enabled on this node by passing the keyword parameter has_streaming => 1. This is disabled by default. @@ -615,8 +603,6 @@ sub init_from_backup my $root_name = $root_node->name; $params{has_streaming} = 0 unless defined $params{has_streaming}; - $params{hba_permit_replication} = 1 - unless defined $params{hba_permit_replication}; $params{has_restoring} = 0 unless defined $params{has_restoring}; print @@ -638,7 +624,6 @@ sub init_from_backup qq( port = $port )); - $self->set_replication_conf if $params{hba_permit_replication}; $self->enable_streaming($root_node) if $params{has_streaming}; $self->enable_restoring($root_node) if $params{has_restoring}; } -- 2.12.0 --------------392F5296BC5B7988B13A769D Content-Type: text/plain Content-Disposition: inline Content-Transfer-Encoding: 8bit MIME-Version: 1.0 -- Sent via pgsql-hackers mailing list ([email protected]) To make changes to your subscription: http://www.postgresql.org/mailpref/pgsql-hackers --------------392F5296BC5B7988B13A769D-- ^ permalink raw reply [nested|flat] 37+ messages in thread
* [PATCH] Enable replication connections by default in pg_hba.conf @ 2017-03-06 19:53 Peter Eisentraut <[email protected]> 0 siblings, 0 replies; 37+ messages in thread From: Peter Eisentraut @ 2017-03-06 19:53 UTC (permalink / raw) --- src/backend/libpq/pg_hba.conf.sample | 6 +++--- src/bin/pg_basebackup/t/010_pg_basebackup.pl | 7 ++----- src/test/perl/PostgresNode.pm | 19 ++----------------- 3 files changed, 7 insertions(+), 25 deletions(-) diff --git a/src/backend/libpq/pg_hba.conf.sample b/src/backend/libpq/pg_hba.conf.sample index e0fbfcb026..b0852c82c0 100644 --- a/src/backend/libpq/pg_hba.conf.sample +++ b/src/backend/libpq/pg_hba.conf.sample @@ -84,6 +84,6 @@ host all all 127.0.0.1/32 @authmethodhost@ host all all ::1/128 @authmethodhost@ # Allow replication connections from localhost, by a user with the # replication privilege. -@remove-line-for-nolocal@#local replication @default_username@ @authmethodlocal@ -#host replication @default_username@ 127.0.0.1/32 @authmethodhost@ -#host replication @default_username@ ::1/128 @authmethodhost@ +@remove-line-for-nolocal@local replication @default_username@ @authmethodlocal@ +host replication @default_username@ 127.0.0.1/32 @authmethodhost@ +host replication @default_username@ ::1/128 @authmethodhost@ diff --git a/src/bin/pg_basebackup/t/010_pg_basebackup.pl b/src/bin/pg_basebackup/t/010_pg_basebackup.pl index aafb138fd5..14bd813896 100644 --- a/src/bin/pg_basebackup/t/010_pg_basebackup.pl +++ b/src/bin/pg_basebackup/t/010_pg_basebackup.pl @@ -4,7 +4,7 @@ use Config; use PostgresNode; use TestLib; -use Test::More tests => 73; +use Test::More tests => 72; program_help_ok('pg_basebackup'); program_version_ok('pg_basebackup'); @@ -15,15 +15,12 @@ my $node = get_new_node('main'); # Initialize node without replication settings -$node->init(hba_permit_replication => 0); +$node->init; $node->start; my $pgdata = $node->data_dir; $node->command_fails(['pg_basebackup'], 'pg_basebackup needs target directory specified'); -$node->command_fails( - [ 'pg_basebackup', '-D', "$tempdir/backup" ], - 'pg_basebackup fails because of hba'); # Some Windows ANSI code pages may reject this filename, in which case we # quietly proceed without this bit of test coverage. diff --git a/src/test/perl/PostgresNode.pm b/src/test/perl/PostgresNode.pm index e5cb348f4c..7e530676b2 100644 --- a/src/test/perl/PostgresNode.pm +++ b/src/test/perl/PostgresNode.pm @@ -349,11 +349,7 @@ sub set_replication_conf open my $hba, ">>$pgdata/pg_hba.conf"; print $hba "\n# Allow replication (set up by PostgresNode.pm)\n"; - if (!$TestLib::windows_os) - { - print $hba "local replication all trust\n"; - } - else + if ($TestLib::windows_os) { print $hba "host replication all $test_localhost/32 sspi include_realm=1 map=regress\n"; @@ -373,9 +369,6 @@ a directory that's only accessible to the current user to ensure that. On Windows, we use SSPI authentication to ensure the same (by pg_regress --config-auth). -pg_hba.conf is configured to allow replication connections. Pass the keyword -parameter hba_permit_replication => 0 to disable this. - WAL archiving can be enabled on this node by passing the keyword parameter has_archiving => 1. This is disabled by default. @@ -396,8 +389,6 @@ sub init my $pgdata = $self->data_dir; my $host = $self->host; - $params{hba_permit_replication} = 1 - unless defined $params{hba_permit_replication}; $params{allows_streaming} = 0 unless defined $params{allows_streaming}; $params{has_archiving} = 0 unless defined $params{has_archiving}; @@ -451,7 +442,7 @@ sub init } close $conf; - $self->set_replication_conf if $params{hba_permit_replication}; + $self->set_replication_conf if $params{allows_streaming}; $self->enable_archiving if $params{has_archiving}; } @@ -591,9 +582,6 @@ Does not start the node after initializing it. A recovery.conf is not created. -pg_hba.conf is configured to allow replication connections. Pass the keyword -parameter hba_permit_replication => 0 to disable this. - Streaming replication can be enabled on this node by passing the keyword parameter has_streaming => 1. This is disabled by default. @@ -615,8 +603,6 @@ sub init_from_backup my $root_name = $root_node->name; $params{has_streaming} = 0 unless defined $params{has_streaming}; - $params{hba_permit_replication} = 1 - unless defined $params{hba_permit_replication}; $params{has_restoring} = 0 unless defined $params{has_restoring}; print @@ -638,7 +624,6 @@ sub init_from_backup qq( port = $port )); - $self->set_replication_conf if $params{hba_permit_replication}; $self->enable_streaming($root_node) if $params{has_streaming}; $self->enable_restoring($root_node) if $params{has_restoring}; } -- 2.12.0 --------------392F5296BC5B7988B13A769D Content-Type: text/plain Content-Disposition: inline Content-Transfer-Encoding: 8bit MIME-Version: 1.0 -- Sent via pgsql-hackers mailing list ([email protected]) To make changes to your subscription: http://www.postgresql.org/mailpref/pgsql-hackers --------------392F5296BC5B7988B13A769D-- ^ permalink raw reply [nested|flat] 37+ messages in thread
* [PATCH] Enable replication connections by default in pg_hba.conf @ 2017-03-06 19:53 Peter Eisentraut <[email protected]> 0 siblings, 0 replies; 37+ messages in thread From: Peter Eisentraut @ 2017-03-06 19:53 UTC (permalink / raw) --- src/backend/libpq/pg_hba.conf.sample | 6 +++--- src/bin/pg_basebackup/t/010_pg_basebackup.pl | 7 ++----- src/test/perl/PostgresNode.pm | 19 ++----------------- 3 files changed, 7 insertions(+), 25 deletions(-) diff --git a/src/backend/libpq/pg_hba.conf.sample b/src/backend/libpq/pg_hba.conf.sample index e0fbfcb026..b0852c82c0 100644 --- a/src/backend/libpq/pg_hba.conf.sample +++ b/src/backend/libpq/pg_hba.conf.sample @@ -84,6 +84,6 @@ host all all 127.0.0.1/32 @authmethodhost@ host all all ::1/128 @authmethodhost@ # Allow replication connections from localhost, by a user with the # replication privilege. -@remove-line-for-nolocal@#local replication @default_username@ @authmethodlocal@ -#host replication @default_username@ 127.0.0.1/32 @authmethodhost@ -#host replication @default_username@ ::1/128 @authmethodhost@ +@remove-line-for-nolocal@local replication @default_username@ @authmethodlocal@ +host replication @default_username@ 127.0.0.1/32 @authmethodhost@ +host replication @default_username@ ::1/128 @authmethodhost@ diff --git a/src/bin/pg_basebackup/t/010_pg_basebackup.pl b/src/bin/pg_basebackup/t/010_pg_basebackup.pl index aafb138fd5..14bd813896 100644 --- a/src/bin/pg_basebackup/t/010_pg_basebackup.pl +++ b/src/bin/pg_basebackup/t/010_pg_basebackup.pl @@ -4,7 +4,7 @@ use Config; use PostgresNode; use TestLib; -use Test::More tests => 73; +use Test::More tests => 72; program_help_ok('pg_basebackup'); program_version_ok('pg_basebackup'); @@ -15,15 +15,12 @@ my $node = get_new_node('main'); # Initialize node without replication settings -$node->init(hba_permit_replication => 0); +$node->init; $node->start; my $pgdata = $node->data_dir; $node->command_fails(['pg_basebackup'], 'pg_basebackup needs target directory specified'); -$node->command_fails( - [ 'pg_basebackup', '-D', "$tempdir/backup" ], - 'pg_basebackup fails because of hba'); # Some Windows ANSI code pages may reject this filename, in which case we # quietly proceed without this bit of test coverage. diff --git a/src/test/perl/PostgresNode.pm b/src/test/perl/PostgresNode.pm index e5cb348f4c..7e530676b2 100644 --- a/src/test/perl/PostgresNode.pm +++ b/src/test/perl/PostgresNode.pm @@ -349,11 +349,7 @@ sub set_replication_conf open my $hba, ">>$pgdata/pg_hba.conf"; print $hba "\n# Allow replication (set up by PostgresNode.pm)\n"; - if (!$TestLib::windows_os) - { - print $hba "local replication all trust\n"; - } - else + if ($TestLib::windows_os) { print $hba "host replication all $test_localhost/32 sspi include_realm=1 map=regress\n"; @@ -373,9 +369,6 @@ a directory that's only accessible to the current user to ensure that. On Windows, we use SSPI authentication to ensure the same (by pg_regress --config-auth). -pg_hba.conf is configured to allow replication connections. Pass the keyword -parameter hba_permit_replication => 0 to disable this. - WAL archiving can be enabled on this node by passing the keyword parameter has_archiving => 1. This is disabled by default. @@ -396,8 +389,6 @@ sub init my $pgdata = $self->data_dir; my $host = $self->host; - $params{hba_permit_replication} = 1 - unless defined $params{hba_permit_replication}; $params{allows_streaming} = 0 unless defined $params{allows_streaming}; $params{has_archiving} = 0 unless defined $params{has_archiving}; @@ -451,7 +442,7 @@ sub init } close $conf; - $self->set_replication_conf if $params{hba_permit_replication}; + $self->set_replication_conf if $params{allows_streaming}; $self->enable_archiving if $params{has_archiving}; } @@ -591,9 +582,6 @@ Does not start the node after initializing it. A recovery.conf is not created. -pg_hba.conf is configured to allow replication connections. Pass the keyword -parameter hba_permit_replication => 0 to disable this. - Streaming replication can be enabled on this node by passing the keyword parameter has_streaming => 1. This is disabled by default. @@ -615,8 +603,6 @@ sub init_from_backup my $root_name = $root_node->name; $params{has_streaming} = 0 unless defined $params{has_streaming}; - $params{hba_permit_replication} = 1 - unless defined $params{hba_permit_replication}; $params{has_restoring} = 0 unless defined $params{has_restoring}; print @@ -638,7 +624,6 @@ sub init_from_backup qq( port = $port )); - $self->set_replication_conf if $params{hba_permit_replication}; $self->enable_streaming($root_node) if $params{has_streaming}; $self->enable_restoring($root_node) if $params{has_restoring}; } -- 2.12.0 --------------392F5296BC5B7988B13A769D Content-Type: text/plain Content-Disposition: inline Content-Transfer-Encoding: 8bit MIME-Version: 1.0 -- Sent via pgsql-hackers mailing list ([email protected]) To make changes to your subscription: http://www.postgresql.org/mailpref/pgsql-hackers --------------392F5296BC5B7988B13A769D-- ^ permalink raw reply [nested|flat] 37+ messages in thread
* [PATCH] Enable replication connections by default in pg_hba.conf @ 2017-03-06 19:53 Peter Eisentraut <[email protected]> 0 siblings, 0 replies; 37+ messages in thread From: Peter Eisentraut @ 2017-03-06 19:53 UTC (permalink / raw) --- src/backend/libpq/pg_hba.conf.sample | 6 +++--- src/bin/pg_basebackup/t/010_pg_basebackup.pl | 7 ++----- src/test/perl/PostgresNode.pm | 19 ++----------------- 3 files changed, 7 insertions(+), 25 deletions(-) diff --git a/src/backend/libpq/pg_hba.conf.sample b/src/backend/libpq/pg_hba.conf.sample index e0fbfcb026..b0852c82c0 100644 --- a/src/backend/libpq/pg_hba.conf.sample +++ b/src/backend/libpq/pg_hba.conf.sample @@ -84,6 +84,6 @@ host all all 127.0.0.1/32 @authmethodhost@ host all all ::1/128 @authmethodhost@ # Allow replication connections from localhost, by a user with the # replication privilege. -@remove-line-for-nolocal@#local replication @default_username@ @authmethodlocal@ -#host replication @default_username@ 127.0.0.1/32 @authmethodhost@ -#host replication @default_username@ ::1/128 @authmethodhost@ +@remove-line-for-nolocal@local replication @default_username@ @authmethodlocal@ +host replication @default_username@ 127.0.0.1/32 @authmethodhost@ +host replication @default_username@ ::1/128 @authmethodhost@ diff --git a/src/bin/pg_basebackup/t/010_pg_basebackup.pl b/src/bin/pg_basebackup/t/010_pg_basebackup.pl index aafb138fd5..14bd813896 100644 --- a/src/bin/pg_basebackup/t/010_pg_basebackup.pl +++ b/src/bin/pg_basebackup/t/010_pg_basebackup.pl @@ -4,7 +4,7 @@ use Config; use PostgresNode; use TestLib; -use Test::More tests => 73; +use Test::More tests => 72; program_help_ok('pg_basebackup'); program_version_ok('pg_basebackup'); @@ -15,15 +15,12 @@ my $node = get_new_node('main'); # Initialize node without replication settings -$node->init(hba_permit_replication => 0); +$node->init; $node->start; my $pgdata = $node->data_dir; $node->command_fails(['pg_basebackup'], 'pg_basebackup needs target directory specified'); -$node->command_fails( - [ 'pg_basebackup', '-D', "$tempdir/backup" ], - 'pg_basebackup fails because of hba'); # Some Windows ANSI code pages may reject this filename, in which case we # quietly proceed without this bit of test coverage. diff --git a/src/test/perl/PostgresNode.pm b/src/test/perl/PostgresNode.pm index e5cb348f4c..7e530676b2 100644 --- a/src/test/perl/PostgresNode.pm +++ b/src/test/perl/PostgresNode.pm @@ -349,11 +349,7 @@ sub set_replication_conf open my $hba, ">>$pgdata/pg_hba.conf"; print $hba "\n# Allow replication (set up by PostgresNode.pm)\n"; - if (!$TestLib::windows_os) - { - print $hba "local replication all trust\n"; - } - else + if ($TestLib::windows_os) { print $hba "host replication all $test_localhost/32 sspi include_realm=1 map=regress\n"; @@ -373,9 +369,6 @@ a directory that's only accessible to the current user to ensure that. On Windows, we use SSPI authentication to ensure the same (by pg_regress --config-auth). -pg_hba.conf is configured to allow replication connections. Pass the keyword -parameter hba_permit_replication => 0 to disable this. - WAL archiving can be enabled on this node by passing the keyword parameter has_archiving => 1. This is disabled by default. @@ -396,8 +389,6 @@ sub init my $pgdata = $self->data_dir; my $host = $self->host; - $params{hba_permit_replication} = 1 - unless defined $params{hba_permit_replication}; $params{allows_streaming} = 0 unless defined $params{allows_streaming}; $params{has_archiving} = 0 unless defined $params{has_archiving}; @@ -451,7 +442,7 @@ sub init } close $conf; - $self->set_replication_conf if $params{hba_permit_replication}; + $self->set_replication_conf if $params{allows_streaming}; $self->enable_archiving if $params{has_archiving}; } @@ -591,9 +582,6 @@ Does not start the node after initializing it. A recovery.conf is not created. -pg_hba.conf is configured to allow replication connections. Pass the keyword -parameter hba_permit_replication => 0 to disable this. - Streaming replication can be enabled on this node by passing the keyword parameter has_streaming => 1. This is disabled by default. @@ -615,8 +603,6 @@ sub init_from_backup my $root_name = $root_node->name; $params{has_streaming} = 0 unless defined $params{has_streaming}; - $params{hba_permit_replication} = 1 - unless defined $params{hba_permit_replication}; $params{has_restoring} = 0 unless defined $params{has_restoring}; print @@ -638,7 +624,6 @@ sub init_from_backup qq( port = $port )); - $self->set_replication_conf if $params{hba_permit_replication}; $self->enable_streaming($root_node) if $params{has_streaming}; $self->enable_restoring($root_node) if $params{has_restoring}; } -- 2.12.0 --------------392F5296BC5B7988B13A769D Content-Type: text/plain Content-Disposition: inline Content-Transfer-Encoding: 8bit MIME-Version: 1.0 -- Sent via pgsql-hackers mailing list ([email protected]) To make changes to your subscription: http://www.postgresql.org/mailpref/pgsql-hackers --------------392F5296BC5B7988B13A769D-- ^ permalink raw reply [nested|flat] 37+ messages in thread
* [PATCH] Enable replication connections by default in pg_hba.conf @ 2017-03-06 19:53 Peter Eisentraut <[email protected]> 0 siblings, 0 replies; 37+ messages in thread From: Peter Eisentraut @ 2017-03-06 19:53 UTC (permalink / raw) --- src/backend/libpq/pg_hba.conf.sample | 6 +++--- src/bin/pg_basebackup/t/010_pg_basebackup.pl | 7 ++----- src/test/perl/PostgresNode.pm | 19 ++----------------- 3 files changed, 7 insertions(+), 25 deletions(-) diff --git a/src/backend/libpq/pg_hba.conf.sample b/src/backend/libpq/pg_hba.conf.sample index e0fbfcb026..b0852c82c0 100644 --- a/src/backend/libpq/pg_hba.conf.sample +++ b/src/backend/libpq/pg_hba.conf.sample @@ -84,6 +84,6 @@ host all all 127.0.0.1/32 @authmethodhost@ host all all ::1/128 @authmethodhost@ # Allow replication connections from localhost, by a user with the # replication privilege. -@remove-line-for-nolocal@#local replication @default_username@ @authmethodlocal@ -#host replication @default_username@ 127.0.0.1/32 @authmethodhost@ -#host replication @default_username@ ::1/128 @authmethodhost@ +@remove-line-for-nolocal@local replication @default_username@ @authmethodlocal@ +host replication @default_username@ 127.0.0.1/32 @authmethodhost@ +host replication @default_username@ ::1/128 @authmethodhost@ diff --git a/src/bin/pg_basebackup/t/010_pg_basebackup.pl b/src/bin/pg_basebackup/t/010_pg_basebackup.pl index aafb138fd5..14bd813896 100644 --- a/src/bin/pg_basebackup/t/010_pg_basebackup.pl +++ b/src/bin/pg_basebackup/t/010_pg_basebackup.pl @@ -4,7 +4,7 @@ use Config; use PostgresNode; use TestLib; -use Test::More tests => 73; +use Test::More tests => 72; program_help_ok('pg_basebackup'); program_version_ok('pg_basebackup'); @@ -15,15 +15,12 @@ my $node = get_new_node('main'); # Initialize node without replication settings -$node->init(hba_permit_replication => 0); +$node->init; $node->start; my $pgdata = $node->data_dir; $node->command_fails(['pg_basebackup'], 'pg_basebackup needs target directory specified'); -$node->command_fails( - [ 'pg_basebackup', '-D', "$tempdir/backup" ], - 'pg_basebackup fails because of hba'); # Some Windows ANSI code pages may reject this filename, in which case we # quietly proceed without this bit of test coverage. diff --git a/src/test/perl/PostgresNode.pm b/src/test/perl/PostgresNode.pm index e5cb348f4c..7e530676b2 100644 --- a/src/test/perl/PostgresNode.pm +++ b/src/test/perl/PostgresNode.pm @@ -349,11 +349,7 @@ sub set_replication_conf open my $hba, ">>$pgdata/pg_hba.conf"; print $hba "\n# Allow replication (set up by PostgresNode.pm)\n"; - if (!$TestLib::windows_os) - { - print $hba "local replication all trust\n"; - } - else + if ($TestLib::windows_os) { print $hba "host replication all $test_localhost/32 sspi include_realm=1 map=regress\n"; @@ -373,9 +369,6 @@ a directory that's only accessible to the current user to ensure that. On Windows, we use SSPI authentication to ensure the same (by pg_regress --config-auth). -pg_hba.conf is configured to allow replication connections. Pass the keyword -parameter hba_permit_replication => 0 to disable this. - WAL archiving can be enabled on this node by passing the keyword parameter has_archiving => 1. This is disabled by default. @@ -396,8 +389,6 @@ sub init my $pgdata = $self->data_dir; my $host = $self->host; - $params{hba_permit_replication} = 1 - unless defined $params{hba_permit_replication}; $params{allows_streaming} = 0 unless defined $params{allows_streaming}; $params{has_archiving} = 0 unless defined $params{has_archiving}; @@ -451,7 +442,7 @@ sub init } close $conf; - $self->set_replication_conf if $params{hba_permit_replication}; + $self->set_replication_conf if $params{allows_streaming}; $self->enable_archiving if $params{has_archiving}; } @@ -591,9 +582,6 @@ Does not start the node after initializing it. A recovery.conf is not created. -pg_hba.conf is configured to allow replication connections. Pass the keyword -parameter hba_permit_replication => 0 to disable this. - Streaming replication can be enabled on this node by passing the keyword parameter has_streaming => 1. This is disabled by default. @@ -615,8 +603,6 @@ sub init_from_backup my $root_name = $root_node->name; $params{has_streaming} = 0 unless defined $params{has_streaming}; - $params{hba_permit_replication} = 1 - unless defined $params{hba_permit_replication}; $params{has_restoring} = 0 unless defined $params{has_restoring}; print @@ -638,7 +624,6 @@ sub init_from_backup qq( port = $port )); - $self->set_replication_conf if $params{hba_permit_replication}; $self->enable_streaming($root_node) if $params{has_streaming}; $self->enable_restoring($root_node) if $params{has_restoring}; } -- 2.12.0 --------------392F5296BC5B7988B13A769D Content-Type: text/plain Content-Disposition: inline Content-Transfer-Encoding: 8bit MIME-Version: 1.0 -- Sent via pgsql-hackers mailing list ([email protected]) To make changes to your subscription: http://www.postgresql.org/mailpref/pgsql-hackers --------------392F5296BC5B7988B13A769D-- ^ permalink raw reply [nested|flat] 37+ messages in thread
* [PATCH] Enable replication connections by default in pg_hba.conf @ 2017-03-06 19:53 Peter Eisentraut <[email protected]> 0 siblings, 0 replies; 37+ messages in thread From: Peter Eisentraut @ 2017-03-06 19:53 UTC (permalink / raw) --- src/backend/libpq/pg_hba.conf.sample | 6 +++--- src/bin/pg_basebackup/t/010_pg_basebackup.pl | 7 ++----- src/test/perl/PostgresNode.pm | 19 ++----------------- 3 files changed, 7 insertions(+), 25 deletions(-) diff --git a/src/backend/libpq/pg_hba.conf.sample b/src/backend/libpq/pg_hba.conf.sample index e0fbfcb026..b0852c82c0 100644 --- a/src/backend/libpq/pg_hba.conf.sample +++ b/src/backend/libpq/pg_hba.conf.sample @@ -84,6 +84,6 @@ host all all 127.0.0.1/32 @authmethodhost@ host all all ::1/128 @authmethodhost@ # Allow replication connections from localhost, by a user with the # replication privilege. -@remove-line-for-nolocal@#local replication @default_username@ @authmethodlocal@ -#host replication @default_username@ 127.0.0.1/32 @authmethodhost@ -#host replication @default_username@ ::1/128 @authmethodhost@ +@remove-line-for-nolocal@local replication @default_username@ @authmethodlocal@ +host replication @default_username@ 127.0.0.1/32 @authmethodhost@ +host replication @default_username@ ::1/128 @authmethodhost@ diff --git a/src/bin/pg_basebackup/t/010_pg_basebackup.pl b/src/bin/pg_basebackup/t/010_pg_basebackup.pl index aafb138fd5..14bd813896 100644 --- a/src/bin/pg_basebackup/t/010_pg_basebackup.pl +++ b/src/bin/pg_basebackup/t/010_pg_basebackup.pl @@ -4,7 +4,7 @@ use Config; use PostgresNode; use TestLib; -use Test::More tests => 73; +use Test::More tests => 72; program_help_ok('pg_basebackup'); program_version_ok('pg_basebackup'); @@ -15,15 +15,12 @@ my $node = get_new_node('main'); # Initialize node without replication settings -$node->init(hba_permit_replication => 0); +$node->init; $node->start; my $pgdata = $node->data_dir; $node->command_fails(['pg_basebackup'], 'pg_basebackup needs target directory specified'); -$node->command_fails( - [ 'pg_basebackup', '-D', "$tempdir/backup" ], - 'pg_basebackup fails because of hba'); # Some Windows ANSI code pages may reject this filename, in which case we # quietly proceed without this bit of test coverage. diff --git a/src/test/perl/PostgresNode.pm b/src/test/perl/PostgresNode.pm index e5cb348f4c..7e530676b2 100644 --- a/src/test/perl/PostgresNode.pm +++ b/src/test/perl/PostgresNode.pm @@ -349,11 +349,7 @@ sub set_replication_conf open my $hba, ">>$pgdata/pg_hba.conf"; print $hba "\n# Allow replication (set up by PostgresNode.pm)\n"; - if (!$TestLib::windows_os) - { - print $hba "local replication all trust\n"; - } - else + if ($TestLib::windows_os) { print $hba "host replication all $test_localhost/32 sspi include_realm=1 map=regress\n"; @@ -373,9 +369,6 @@ a directory that's only accessible to the current user to ensure that. On Windows, we use SSPI authentication to ensure the same (by pg_regress --config-auth). -pg_hba.conf is configured to allow replication connections. Pass the keyword -parameter hba_permit_replication => 0 to disable this. - WAL archiving can be enabled on this node by passing the keyword parameter has_archiving => 1. This is disabled by default. @@ -396,8 +389,6 @@ sub init my $pgdata = $self->data_dir; my $host = $self->host; - $params{hba_permit_replication} = 1 - unless defined $params{hba_permit_replication}; $params{allows_streaming} = 0 unless defined $params{allows_streaming}; $params{has_archiving} = 0 unless defined $params{has_archiving}; @@ -451,7 +442,7 @@ sub init } close $conf; - $self->set_replication_conf if $params{hba_permit_replication}; + $self->set_replication_conf if $params{allows_streaming}; $self->enable_archiving if $params{has_archiving}; } @@ -591,9 +582,6 @@ Does not start the node after initializing it. A recovery.conf is not created. -pg_hba.conf is configured to allow replication connections. Pass the keyword -parameter hba_permit_replication => 0 to disable this. - Streaming replication can be enabled on this node by passing the keyword parameter has_streaming => 1. This is disabled by default. @@ -615,8 +603,6 @@ sub init_from_backup my $root_name = $root_node->name; $params{has_streaming} = 0 unless defined $params{has_streaming}; - $params{hba_permit_replication} = 1 - unless defined $params{hba_permit_replication}; $params{has_restoring} = 0 unless defined $params{has_restoring}; print @@ -638,7 +624,6 @@ sub init_from_backup qq( port = $port )); - $self->set_replication_conf if $params{hba_permit_replication}; $self->enable_streaming($root_node) if $params{has_streaming}; $self->enable_restoring($root_node) if $params{has_restoring}; } -- 2.12.0 --------------392F5296BC5B7988B13A769D Content-Type: text/plain Content-Disposition: inline Content-Transfer-Encoding: 8bit MIME-Version: 1.0 -- Sent via pgsql-hackers mailing list ([email protected]) To make changes to your subscription: http://www.postgresql.org/mailpref/pgsql-hackers --------------392F5296BC5B7988B13A769D-- ^ permalink raw reply [nested|flat] 37+ messages in thread
* [PATCH] Enable replication connections by default in pg_hba.conf @ 2017-03-06 19:53 Peter Eisentraut <[email protected]> 0 siblings, 0 replies; 37+ messages in thread From: Peter Eisentraut @ 2017-03-06 19:53 UTC (permalink / raw) --- src/backend/libpq/pg_hba.conf.sample | 6 +++--- src/bin/pg_basebackup/t/010_pg_basebackup.pl | 7 ++----- src/test/perl/PostgresNode.pm | 19 ++----------------- 3 files changed, 7 insertions(+), 25 deletions(-) diff --git a/src/backend/libpq/pg_hba.conf.sample b/src/backend/libpq/pg_hba.conf.sample index e0fbfcb026..b0852c82c0 100644 --- a/src/backend/libpq/pg_hba.conf.sample +++ b/src/backend/libpq/pg_hba.conf.sample @@ -84,6 +84,6 @@ host all all 127.0.0.1/32 @authmethodhost@ host all all ::1/128 @authmethodhost@ # Allow replication connections from localhost, by a user with the # replication privilege. -@remove-line-for-nolocal@#local replication @default_username@ @authmethodlocal@ -#host replication @default_username@ 127.0.0.1/32 @authmethodhost@ -#host replication @default_username@ ::1/128 @authmethodhost@ +@remove-line-for-nolocal@local replication @default_username@ @authmethodlocal@ +host replication @default_username@ 127.0.0.1/32 @authmethodhost@ +host replication @default_username@ ::1/128 @authmethodhost@ diff --git a/src/bin/pg_basebackup/t/010_pg_basebackup.pl b/src/bin/pg_basebackup/t/010_pg_basebackup.pl index aafb138fd5..14bd813896 100644 --- a/src/bin/pg_basebackup/t/010_pg_basebackup.pl +++ b/src/bin/pg_basebackup/t/010_pg_basebackup.pl @@ -4,7 +4,7 @@ use Config; use PostgresNode; use TestLib; -use Test::More tests => 73; +use Test::More tests => 72; program_help_ok('pg_basebackup'); program_version_ok('pg_basebackup'); @@ -15,15 +15,12 @@ my $node = get_new_node('main'); # Initialize node without replication settings -$node->init(hba_permit_replication => 0); +$node->init; $node->start; my $pgdata = $node->data_dir; $node->command_fails(['pg_basebackup'], 'pg_basebackup needs target directory specified'); -$node->command_fails( - [ 'pg_basebackup', '-D', "$tempdir/backup" ], - 'pg_basebackup fails because of hba'); # Some Windows ANSI code pages may reject this filename, in which case we # quietly proceed without this bit of test coverage. diff --git a/src/test/perl/PostgresNode.pm b/src/test/perl/PostgresNode.pm index e5cb348f4c..7e530676b2 100644 --- a/src/test/perl/PostgresNode.pm +++ b/src/test/perl/PostgresNode.pm @@ -349,11 +349,7 @@ sub set_replication_conf open my $hba, ">>$pgdata/pg_hba.conf"; print $hba "\n# Allow replication (set up by PostgresNode.pm)\n"; - if (!$TestLib::windows_os) - { - print $hba "local replication all trust\n"; - } - else + if ($TestLib::windows_os) { print $hba "host replication all $test_localhost/32 sspi include_realm=1 map=regress\n"; @@ -373,9 +369,6 @@ a directory that's only accessible to the current user to ensure that. On Windows, we use SSPI authentication to ensure the same (by pg_regress --config-auth). -pg_hba.conf is configured to allow replication connections. Pass the keyword -parameter hba_permit_replication => 0 to disable this. - WAL archiving can be enabled on this node by passing the keyword parameter has_archiving => 1. This is disabled by default. @@ -396,8 +389,6 @@ sub init my $pgdata = $self->data_dir; my $host = $self->host; - $params{hba_permit_replication} = 1 - unless defined $params{hba_permit_replication}; $params{allows_streaming} = 0 unless defined $params{allows_streaming}; $params{has_archiving} = 0 unless defined $params{has_archiving}; @@ -451,7 +442,7 @@ sub init } close $conf; - $self->set_replication_conf if $params{hba_permit_replication}; + $self->set_replication_conf if $params{allows_streaming}; $self->enable_archiving if $params{has_archiving}; } @@ -591,9 +582,6 @@ Does not start the node after initializing it. A recovery.conf is not created. -pg_hba.conf is configured to allow replication connections. Pass the keyword -parameter hba_permit_replication => 0 to disable this. - Streaming replication can be enabled on this node by passing the keyword parameter has_streaming => 1. This is disabled by default. @@ -615,8 +603,6 @@ sub init_from_backup my $root_name = $root_node->name; $params{has_streaming} = 0 unless defined $params{has_streaming}; - $params{hba_permit_replication} = 1 - unless defined $params{hba_permit_replication}; $params{has_restoring} = 0 unless defined $params{has_restoring}; print @@ -638,7 +624,6 @@ sub init_from_backup qq( port = $port )); - $self->set_replication_conf if $params{hba_permit_replication}; $self->enable_streaming($root_node) if $params{has_streaming}; $self->enable_restoring($root_node) if $params{has_restoring}; } -- 2.12.0 --------------392F5296BC5B7988B13A769D Content-Type: text/plain Content-Disposition: inline Content-Transfer-Encoding: 8bit MIME-Version: 1.0 -- Sent via pgsql-hackers mailing list ([email protected]) To make changes to your subscription: http://www.postgresql.org/mailpref/pgsql-hackers --------------392F5296BC5B7988B13A769D-- ^ permalink raw reply [nested|flat] 37+ messages in thread
* [PATCH] Enable replication connections by default in pg_hba.conf @ 2017-03-06 19:53 Peter Eisentraut <[email protected]> 0 siblings, 0 replies; 37+ messages in thread From: Peter Eisentraut @ 2017-03-06 19:53 UTC (permalink / raw) --- src/backend/libpq/pg_hba.conf.sample | 6 +++--- src/bin/pg_basebackup/t/010_pg_basebackup.pl | 7 ++----- src/test/perl/PostgresNode.pm | 19 ++----------------- 3 files changed, 7 insertions(+), 25 deletions(-) diff --git a/src/backend/libpq/pg_hba.conf.sample b/src/backend/libpq/pg_hba.conf.sample index e0fbfcb026..b0852c82c0 100644 --- a/src/backend/libpq/pg_hba.conf.sample +++ b/src/backend/libpq/pg_hba.conf.sample @@ -84,6 +84,6 @@ host all all 127.0.0.1/32 @authmethodhost@ host all all ::1/128 @authmethodhost@ # Allow replication connections from localhost, by a user with the # replication privilege. -@remove-line-for-nolocal@#local replication @default_username@ @authmethodlocal@ -#host replication @default_username@ 127.0.0.1/32 @authmethodhost@ -#host replication @default_username@ ::1/128 @authmethodhost@ +@remove-line-for-nolocal@local replication @default_username@ @authmethodlocal@ +host replication @default_username@ 127.0.0.1/32 @authmethodhost@ +host replication @default_username@ ::1/128 @authmethodhost@ diff --git a/src/bin/pg_basebackup/t/010_pg_basebackup.pl b/src/bin/pg_basebackup/t/010_pg_basebackup.pl index aafb138fd5..14bd813896 100644 --- a/src/bin/pg_basebackup/t/010_pg_basebackup.pl +++ b/src/bin/pg_basebackup/t/010_pg_basebackup.pl @@ -4,7 +4,7 @@ use Config; use PostgresNode; use TestLib; -use Test::More tests => 73; +use Test::More tests => 72; program_help_ok('pg_basebackup'); program_version_ok('pg_basebackup'); @@ -15,15 +15,12 @@ my $node = get_new_node('main'); # Initialize node without replication settings -$node->init(hba_permit_replication => 0); +$node->init; $node->start; my $pgdata = $node->data_dir; $node->command_fails(['pg_basebackup'], 'pg_basebackup needs target directory specified'); -$node->command_fails( - [ 'pg_basebackup', '-D', "$tempdir/backup" ], - 'pg_basebackup fails because of hba'); # Some Windows ANSI code pages may reject this filename, in which case we # quietly proceed without this bit of test coverage. diff --git a/src/test/perl/PostgresNode.pm b/src/test/perl/PostgresNode.pm index e5cb348f4c..7e530676b2 100644 --- a/src/test/perl/PostgresNode.pm +++ b/src/test/perl/PostgresNode.pm @@ -349,11 +349,7 @@ sub set_replication_conf open my $hba, ">>$pgdata/pg_hba.conf"; print $hba "\n# Allow replication (set up by PostgresNode.pm)\n"; - if (!$TestLib::windows_os) - { - print $hba "local replication all trust\n"; - } - else + if ($TestLib::windows_os) { print $hba "host replication all $test_localhost/32 sspi include_realm=1 map=regress\n"; @@ -373,9 +369,6 @@ a directory that's only accessible to the current user to ensure that. On Windows, we use SSPI authentication to ensure the same (by pg_regress --config-auth). -pg_hba.conf is configured to allow replication connections. Pass the keyword -parameter hba_permit_replication => 0 to disable this. - WAL archiving can be enabled on this node by passing the keyword parameter has_archiving => 1. This is disabled by default. @@ -396,8 +389,6 @@ sub init my $pgdata = $self->data_dir; my $host = $self->host; - $params{hba_permit_replication} = 1 - unless defined $params{hba_permit_replication}; $params{allows_streaming} = 0 unless defined $params{allows_streaming}; $params{has_archiving} = 0 unless defined $params{has_archiving}; @@ -451,7 +442,7 @@ sub init } close $conf; - $self->set_replication_conf if $params{hba_permit_replication}; + $self->set_replication_conf if $params{allows_streaming}; $self->enable_archiving if $params{has_archiving}; } @@ -591,9 +582,6 @@ Does not start the node after initializing it. A recovery.conf is not created. -pg_hba.conf is configured to allow replication connections. Pass the keyword -parameter hba_permit_replication => 0 to disable this. - Streaming replication can be enabled on this node by passing the keyword parameter has_streaming => 1. This is disabled by default. @@ -615,8 +603,6 @@ sub init_from_backup my $root_name = $root_node->name; $params{has_streaming} = 0 unless defined $params{has_streaming}; - $params{hba_permit_replication} = 1 - unless defined $params{hba_permit_replication}; $params{has_restoring} = 0 unless defined $params{has_restoring}; print @@ -638,7 +624,6 @@ sub init_from_backup qq( port = $port )); - $self->set_replication_conf if $params{hba_permit_replication}; $self->enable_streaming($root_node) if $params{has_streaming}; $self->enable_restoring($root_node) if $params{has_restoring}; } -- 2.12.0 --------------392F5296BC5B7988B13A769D Content-Type: text/plain Content-Disposition: inline Content-Transfer-Encoding: 8bit MIME-Version: 1.0 -- Sent via pgsql-hackers mailing list ([email protected]) To make changes to your subscription: http://www.postgresql.org/mailpref/pgsql-hackers --------------392F5296BC5B7988B13A769D-- ^ permalink raw reply [nested|flat] 37+ messages in thread
* [PATCH] Enable replication connections by default in pg_hba.conf @ 2017-03-06 19:53 Peter Eisentraut <[email protected]> 0 siblings, 0 replies; 37+ messages in thread From: Peter Eisentraut @ 2017-03-06 19:53 UTC (permalink / raw) --- src/backend/libpq/pg_hba.conf.sample | 6 +++--- src/bin/pg_basebackup/t/010_pg_basebackup.pl | 7 ++----- src/test/perl/PostgresNode.pm | 19 ++----------------- 3 files changed, 7 insertions(+), 25 deletions(-) diff --git a/src/backend/libpq/pg_hba.conf.sample b/src/backend/libpq/pg_hba.conf.sample index e0fbfcb026..b0852c82c0 100644 --- a/src/backend/libpq/pg_hba.conf.sample +++ b/src/backend/libpq/pg_hba.conf.sample @@ -84,6 +84,6 @@ host all all 127.0.0.1/32 @authmethodhost@ host all all ::1/128 @authmethodhost@ # Allow replication connections from localhost, by a user with the # replication privilege. -@remove-line-for-nolocal@#local replication @default_username@ @authmethodlocal@ -#host replication @default_username@ 127.0.0.1/32 @authmethodhost@ -#host replication @default_username@ ::1/128 @authmethodhost@ +@remove-line-for-nolocal@local replication @default_username@ @authmethodlocal@ +host replication @default_username@ 127.0.0.1/32 @authmethodhost@ +host replication @default_username@ ::1/128 @authmethodhost@ diff --git a/src/bin/pg_basebackup/t/010_pg_basebackup.pl b/src/bin/pg_basebackup/t/010_pg_basebackup.pl index aafb138fd5..14bd813896 100644 --- a/src/bin/pg_basebackup/t/010_pg_basebackup.pl +++ b/src/bin/pg_basebackup/t/010_pg_basebackup.pl @@ -4,7 +4,7 @@ use Config; use PostgresNode; use TestLib; -use Test::More tests => 73; +use Test::More tests => 72; program_help_ok('pg_basebackup'); program_version_ok('pg_basebackup'); @@ -15,15 +15,12 @@ my $node = get_new_node('main'); # Initialize node without replication settings -$node->init(hba_permit_replication => 0); +$node->init; $node->start; my $pgdata = $node->data_dir; $node->command_fails(['pg_basebackup'], 'pg_basebackup needs target directory specified'); -$node->command_fails( - [ 'pg_basebackup', '-D', "$tempdir/backup" ], - 'pg_basebackup fails because of hba'); # Some Windows ANSI code pages may reject this filename, in which case we # quietly proceed without this bit of test coverage. diff --git a/src/test/perl/PostgresNode.pm b/src/test/perl/PostgresNode.pm index e5cb348f4c..7e530676b2 100644 --- a/src/test/perl/PostgresNode.pm +++ b/src/test/perl/PostgresNode.pm @@ -349,11 +349,7 @@ sub set_replication_conf open my $hba, ">>$pgdata/pg_hba.conf"; print $hba "\n# Allow replication (set up by PostgresNode.pm)\n"; - if (!$TestLib::windows_os) - { - print $hba "local replication all trust\n"; - } - else + if ($TestLib::windows_os) { print $hba "host replication all $test_localhost/32 sspi include_realm=1 map=regress\n"; @@ -373,9 +369,6 @@ a directory that's only accessible to the current user to ensure that. On Windows, we use SSPI authentication to ensure the same (by pg_regress --config-auth). -pg_hba.conf is configured to allow replication connections. Pass the keyword -parameter hba_permit_replication => 0 to disable this. - WAL archiving can be enabled on this node by passing the keyword parameter has_archiving => 1. This is disabled by default. @@ -396,8 +389,6 @@ sub init my $pgdata = $self->data_dir; my $host = $self->host; - $params{hba_permit_replication} = 1 - unless defined $params{hba_permit_replication}; $params{allows_streaming} = 0 unless defined $params{allows_streaming}; $params{has_archiving} = 0 unless defined $params{has_archiving}; @@ -451,7 +442,7 @@ sub init } close $conf; - $self->set_replication_conf if $params{hba_permit_replication}; + $self->set_replication_conf if $params{allows_streaming}; $self->enable_archiving if $params{has_archiving}; } @@ -591,9 +582,6 @@ Does not start the node after initializing it. A recovery.conf is not created. -pg_hba.conf is configured to allow replication connections. Pass the keyword -parameter hba_permit_replication => 0 to disable this. - Streaming replication can be enabled on this node by passing the keyword parameter has_streaming => 1. This is disabled by default. @@ -615,8 +603,6 @@ sub init_from_backup my $root_name = $root_node->name; $params{has_streaming} = 0 unless defined $params{has_streaming}; - $params{hba_permit_replication} = 1 - unless defined $params{hba_permit_replication}; $params{has_restoring} = 0 unless defined $params{has_restoring}; print @@ -638,7 +624,6 @@ sub init_from_backup qq( port = $port )); - $self->set_replication_conf if $params{hba_permit_replication}; $self->enable_streaming($root_node) if $params{has_streaming}; $self->enable_restoring($root_node) if $params{has_restoring}; } -- 2.12.0 --------------392F5296BC5B7988B13A769D Content-Type: text/plain Content-Disposition: inline Content-Transfer-Encoding: 8bit MIME-Version: 1.0 -- Sent via pgsql-hackers mailing list ([email protected]) To make changes to your subscription: http://www.postgresql.org/mailpref/pgsql-hackers --------------392F5296BC5B7988B13A769D-- ^ permalink raw reply [nested|flat] 37+ messages in thread
* [PATCH] Enable replication connections by default in pg_hba.conf @ 2017-03-06 19:53 Peter Eisentraut <[email protected]> 0 siblings, 0 replies; 37+ messages in thread From: Peter Eisentraut @ 2017-03-06 19:53 UTC (permalink / raw) --- src/backend/libpq/pg_hba.conf.sample | 6 +++--- src/bin/pg_basebackup/t/010_pg_basebackup.pl | 7 ++----- src/test/perl/PostgresNode.pm | 19 ++----------------- 3 files changed, 7 insertions(+), 25 deletions(-) diff --git a/src/backend/libpq/pg_hba.conf.sample b/src/backend/libpq/pg_hba.conf.sample index e0fbfcb026..b0852c82c0 100644 --- a/src/backend/libpq/pg_hba.conf.sample +++ b/src/backend/libpq/pg_hba.conf.sample @@ -84,6 +84,6 @@ host all all 127.0.0.1/32 @authmethodhost@ host all all ::1/128 @authmethodhost@ # Allow replication connections from localhost, by a user with the # replication privilege. -@remove-line-for-nolocal@#local replication @default_username@ @authmethodlocal@ -#host replication @default_username@ 127.0.0.1/32 @authmethodhost@ -#host replication @default_username@ ::1/128 @authmethodhost@ +@remove-line-for-nolocal@local replication @default_username@ @authmethodlocal@ +host replication @default_username@ 127.0.0.1/32 @authmethodhost@ +host replication @default_username@ ::1/128 @authmethodhost@ diff --git a/src/bin/pg_basebackup/t/010_pg_basebackup.pl b/src/bin/pg_basebackup/t/010_pg_basebackup.pl index aafb138fd5..14bd813896 100644 --- a/src/bin/pg_basebackup/t/010_pg_basebackup.pl +++ b/src/bin/pg_basebackup/t/010_pg_basebackup.pl @@ -4,7 +4,7 @@ use Config; use PostgresNode; use TestLib; -use Test::More tests => 73; +use Test::More tests => 72; program_help_ok('pg_basebackup'); program_version_ok('pg_basebackup'); @@ -15,15 +15,12 @@ my $node = get_new_node('main'); # Initialize node without replication settings -$node->init(hba_permit_replication => 0); +$node->init; $node->start; my $pgdata = $node->data_dir; $node->command_fails(['pg_basebackup'], 'pg_basebackup needs target directory specified'); -$node->command_fails( - [ 'pg_basebackup', '-D', "$tempdir/backup" ], - 'pg_basebackup fails because of hba'); # Some Windows ANSI code pages may reject this filename, in which case we # quietly proceed without this bit of test coverage. diff --git a/src/test/perl/PostgresNode.pm b/src/test/perl/PostgresNode.pm index e5cb348f4c..7e530676b2 100644 --- a/src/test/perl/PostgresNode.pm +++ b/src/test/perl/PostgresNode.pm @@ -349,11 +349,7 @@ sub set_replication_conf open my $hba, ">>$pgdata/pg_hba.conf"; print $hba "\n# Allow replication (set up by PostgresNode.pm)\n"; - if (!$TestLib::windows_os) - { - print $hba "local replication all trust\n"; - } - else + if ($TestLib::windows_os) { print $hba "host replication all $test_localhost/32 sspi include_realm=1 map=regress\n"; @@ -373,9 +369,6 @@ a directory that's only accessible to the current user to ensure that. On Windows, we use SSPI authentication to ensure the same (by pg_regress --config-auth). -pg_hba.conf is configured to allow replication connections. Pass the keyword -parameter hba_permit_replication => 0 to disable this. - WAL archiving can be enabled on this node by passing the keyword parameter has_archiving => 1. This is disabled by default. @@ -396,8 +389,6 @@ sub init my $pgdata = $self->data_dir; my $host = $self->host; - $params{hba_permit_replication} = 1 - unless defined $params{hba_permit_replication}; $params{allows_streaming} = 0 unless defined $params{allows_streaming}; $params{has_archiving} = 0 unless defined $params{has_archiving}; @@ -451,7 +442,7 @@ sub init } close $conf; - $self->set_replication_conf if $params{hba_permit_replication}; + $self->set_replication_conf if $params{allows_streaming}; $self->enable_archiving if $params{has_archiving}; } @@ -591,9 +582,6 @@ Does not start the node after initializing it. A recovery.conf is not created. -pg_hba.conf is configured to allow replication connections. Pass the keyword -parameter hba_permit_replication => 0 to disable this. - Streaming replication can be enabled on this node by passing the keyword parameter has_streaming => 1. This is disabled by default. @@ -615,8 +603,6 @@ sub init_from_backup my $root_name = $root_node->name; $params{has_streaming} = 0 unless defined $params{has_streaming}; - $params{hba_permit_replication} = 1 - unless defined $params{hba_permit_replication}; $params{has_restoring} = 0 unless defined $params{has_restoring}; print @@ -638,7 +624,6 @@ sub init_from_backup qq( port = $port )); - $self->set_replication_conf if $params{hba_permit_replication}; $self->enable_streaming($root_node) if $params{has_streaming}; $self->enable_restoring($root_node) if $params{has_restoring}; } -- 2.12.0 --------------392F5296BC5B7988B13A769D Content-Type: text/plain Content-Disposition: inline Content-Transfer-Encoding: 8bit MIME-Version: 1.0 -- Sent via pgsql-hackers mailing list ([email protected]) To make changes to your subscription: http://www.postgresql.org/mailpref/pgsql-hackers --------------392F5296BC5B7988B13A769D-- ^ permalink raw reply [nested|flat] 37+ messages in thread
* [PATCH] Enable replication connections by default in pg_hba.conf @ 2017-03-06 19:53 Peter Eisentraut <[email protected]> 0 siblings, 0 replies; 37+ messages in thread From: Peter Eisentraut @ 2017-03-06 19:53 UTC (permalink / raw) --- src/backend/libpq/pg_hba.conf.sample | 6 +++--- src/bin/pg_basebackup/t/010_pg_basebackup.pl | 7 ++----- src/test/perl/PostgresNode.pm | 19 ++----------------- 3 files changed, 7 insertions(+), 25 deletions(-) diff --git a/src/backend/libpq/pg_hba.conf.sample b/src/backend/libpq/pg_hba.conf.sample index e0fbfcb026..b0852c82c0 100644 --- a/src/backend/libpq/pg_hba.conf.sample +++ b/src/backend/libpq/pg_hba.conf.sample @@ -84,6 +84,6 @@ host all all 127.0.0.1/32 @authmethodhost@ host all all ::1/128 @authmethodhost@ # Allow replication connections from localhost, by a user with the # replication privilege. -@remove-line-for-nolocal@#local replication @default_username@ @authmethodlocal@ -#host replication @default_username@ 127.0.0.1/32 @authmethodhost@ -#host replication @default_username@ ::1/128 @authmethodhost@ +@remove-line-for-nolocal@local replication @default_username@ @authmethodlocal@ +host replication @default_username@ 127.0.0.1/32 @authmethodhost@ +host replication @default_username@ ::1/128 @authmethodhost@ diff --git a/src/bin/pg_basebackup/t/010_pg_basebackup.pl b/src/bin/pg_basebackup/t/010_pg_basebackup.pl index aafb138fd5..14bd813896 100644 --- a/src/bin/pg_basebackup/t/010_pg_basebackup.pl +++ b/src/bin/pg_basebackup/t/010_pg_basebackup.pl @@ -4,7 +4,7 @@ use Config; use PostgresNode; use TestLib; -use Test::More tests => 73; +use Test::More tests => 72; program_help_ok('pg_basebackup'); program_version_ok('pg_basebackup'); @@ -15,15 +15,12 @@ my $node = get_new_node('main'); # Initialize node without replication settings -$node->init(hba_permit_replication => 0); +$node->init; $node->start; my $pgdata = $node->data_dir; $node->command_fails(['pg_basebackup'], 'pg_basebackup needs target directory specified'); -$node->command_fails( - [ 'pg_basebackup', '-D', "$tempdir/backup" ], - 'pg_basebackup fails because of hba'); # Some Windows ANSI code pages may reject this filename, in which case we # quietly proceed without this bit of test coverage. diff --git a/src/test/perl/PostgresNode.pm b/src/test/perl/PostgresNode.pm index e5cb348f4c..7e530676b2 100644 --- a/src/test/perl/PostgresNode.pm +++ b/src/test/perl/PostgresNode.pm @@ -349,11 +349,7 @@ sub set_replication_conf open my $hba, ">>$pgdata/pg_hba.conf"; print $hba "\n# Allow replication (set up by PostgresNode.pm)\n"; - if (!$TestLib::windows_os) - { - print $hba "local replication all trust\n"; - } - else + if ($TestLib::windows_os) { print $hba "host replication all $test_localhost/32 sspi include_realm=1 map=regress\n"; @@ -373,9 +369,6 @@ a directory that's only accessible to the current user to ensure that. On Windows, we use SSPI authentication to ensure the same (by pg_regress --config-auth). -pg_hba.conf is configured to allow replication connections. Pass the keyword -parameter hba_permit_replication => 0 to disable this. - WAL archiving can be enabled on this node by passing the keyword parameter has_archiving => 1. This is disabled by default. @@ -396,8 +389,6 @@ sub init my $pgdata = $self->data_dir; my $host = $self->host; - $params{hba_permit_replication} = 1 - unless defined $params{hba_permit_replication}; $params{allows_streaming} = 0 unless defined $params{allows_streaming}; $params{has_archiving} = 0 unless defined $params{has_archiving}; @@ -451,7 +442,7 @@ sub init } close $conf; - $self->set_replication_conf if $params{hba_permit_replication}; + $self->set_replication_conf if $params{allows_streaming}; $self->enable_archiving if $params{has_archiving}; } @@ -591,9 +582,6 @@ Does not start the node after initializing it. A recovery.conf is not created. -pg_hba.conf is configured to allow replication connections. Pass the keyword -parameter hba_permit_replication => 0 to disable this. - Streaming replication can be enabled on this node by passing the keyword parameter has_streaming => 1. This is disabled by default. @@ -615,8 +603,6 @@ sub init_from_backup my $root_name = $root_node->name; $params{has_streaming} = 0 unless defined $params{has_streaming}; - $params{hba_permit_replication} = 1 - unless defined $params{hba_permit_replication}; $params{has_restoring} = 0 unless defined $params{has_restoring}; print @@ -638,7 +624,6 @@ sub init_from_backup qq( port = $port )); - $self->set_replication_conf if $params{hba_permit_replication}; $self->enable_streaming($root_node) if $params{has_streaming}; $self->enable_restoring($root_node) if $params{has_restoring}; } -- 2.12.0 --------------392F5296BC5B7988B13A769D Content-Type: text/plain Content-Disposition: inline Content-Transfer-Encoding: 8bit MIME-Version: 1.0 -- Sent via pgsql-hackers mailing list ([email protected]) To make changes to your subscription: http://www.postgresql.org/mailpref/pgsql-hackers --------------392F5296BC5B7988B13A769D-- ^ permalink raw reply [nested|flat] 37+ messages in thread
* [PATCH] Enable replication connections by default in pg_hba.conf @ 2017-03-06 19:53 Peter Eisentraut <[email protected]> 0 siblings, 0 replies; 37+ messages in thread From: Peter Eisentraut @ 2017-03-06 19:53 UTC (permalink / raw) --- src/backend/libpq/pg_hba.conf.sample | 6 +++--- src/bin/pg_basebackup/t/010_pg_basebackup.pl | 7 ++----- src/test/perl/PostgresNode.pm | 19 ++----------------- 3 files changed, 7 insertions(+), 25 deletions(-) diff --git a/src/backend/libpq/pg_hba.conf.sample b/src/backend/libpq/pg_hba.conf.sample index e0fbfcb026..b0852c82c0 100644 --- a/src/backend/libpq/pg_hba.conf.sample +++ b/src/backend/libpq/pg_hba.conf.sample @@ -84,6 +84,6 @@ host all all 127.0.0.1/32 @authmethodhost@ host all all ::1/128 @authmethodhost@ # Allow replication connections from localhost, by a user with the # replication privilege. -@remove-line-for-nolocal@#local replication @default_username@ @authmethodlocal@ -#host replication @default_username@ 127.0.0.1/32 @authmethodhost@ -#host replication @default_username@ ::1/128 @authmethodhost@ +@remove-line-for-nolocal@local replication @default_username@ @authmethodlocal@ +host replication @default_username@ 127.0.0.1/32 @authmethodhost@ +host replication @default_username@ ::1/128 @authmethodhost@ diff --git a/src/bin/pg_basebackup/t/010_pg_basebackup.pl b/src/bin/pg_basebackup/t/010_pg_basebackup.pl index aafb138fd5..14bd813896 100644 --- a/src/bin/pg_basebackup/t/010_pg_basebackup.pl +++ b/src/bin/pg_basebackup/t/010_pg_basebackup.pl @@ -4,7 +4,7 @@ use Config; use PostgresNode; use TestLib; -use Test::More tests => 73; +use Test::More tests => 72; program_help_ok('pg_basebackup'); program_version_ok('pg_basebackup'); @@ -15,15 +15,12 @@ my $node = get_new_node('main'); # Initialize node without replication settings -$node->init(hba_permit_replication => 0); +$node->init; $node->start; my $pgdata = $node->data_dir; $node->command_fails(['pg_basebackup'], 'pg_basebackup needs target directory specified'); -$node->command_fails( - [ 'pg_basebackup', '-D', "$tempdir/backup" ], - 'pg_basebackup fails because of hba'); # Some Windows ANSI code pages may reject this filename, in which case we # quietly proceed without this bit of test coverage. diff --git a/src/test/perl/PostgresNode.pm b/src/test/perl/PostgresNode.pm index e5cb348f4c..7e530676b2 100644 --- a/src/test/perl/PostgresNode.pm +++ b/src/test/perl/PostgresNode.pm @@ -349,11 +349,7 @@ sub set_replication_conf open my $hba, ">>$pgdata/pg_hba.conf"; print $hba "\n# Allow replication (set up by PostgresNode.pm)\n"; - if (!$TestLib::windows_os) - { - print $hba "local replication all trust\n"; - } - else + if ($TestLib::windows_os) { print $hba "host replication all $test_localhost/32 sspi include_realm=1 map=regress\n"; @@ -373,9 +369,6 @@ a directory that's only accessible to the current user to ensure that. On Windows, we use SSPI authentication to ensure the same (by pg_regress --config-auth). -pg_hba.conf is configured to allow replication connections. Pass the keyword -parameter hba_permit_replication => 0 to disable this. - WAL archiving can be enabled on this node by passing the keyword parameter has_archiving => 1. This is disabled by default. @@ -396,8 +389,6 @@ sub init my $pgdata = $self->data_dir; my $host = $self->host; - $params{hba_permit_replication} = 1 - unless defined $params{hba_permit_replication}; $params{allows_streaming} = 0 unless defined $params{allows_streaming}; $params{has_archiving} = 0 unless defined $params{has_archiving}; @@ -451,7 +442,7 @@ sub init } close $conf; - $self->set_replication_conf if $params{hba_permit_replication}; + $self->set_replication_conf if $params{allows_streaming}; $self->enable_archiving if $params{has_archiving}; } @@ -591,9 +582,6 @@ Does not start the node after initializing it. A recovery.conf is not created. -pg_hba.conf is configured to allow replication connections. Pass the keyword -parameter hba_permit_replication => 0 to disable this. - Streaming replication can be enabled on this node by passing the keyword parameter has_streaming => 1. This is disabled by default. @@ -615,8 +603,6 @@ sub init_from_backup my $root_name = $root_node->name; $params{has_streaming} = 0 unless defined $params{has_streaming}; - $params{hba_permit_replication} = 1 - unless defined $params{hba_permit_replication}; $params{has_restoring} = 0 unless defined $params{has_restoring}; print @@ -638,7 +624,6 @@ sub init_from_backup qq( port = $port )); - $self->set_replication_conf if $params{hba_permit_replication}; $self->enable_streaming($root_node) if $params{has_streaming}; $self->enable_restoring($root_node) if $params{has_restoring}; } -- 2.12.0 --------------392F5296BC5B7988B13A769D Content-Type: text/plain Content-Disposition: inline Content-Transfer-Encoding: 8bit MIME-Version: 1.0 -- Sent via pgsql-hackers mailing list ([email protected]) To make changes to your subscription: http://www.postgresql.org/mailpref/pgsql-hackers --------------392F5296BC5B7988B13A769D-- ^ permalink raw reply [nested|flat] 37+ messages in thread
* [PATCH] Enable replication connections by default in pg_hba.conf @ 2017-03-06 19:53 Peter Eisentraut <[email protected]> 0 siblings, 0 replies; 37+ messages in thread From: Peter Eisentraut @ 2017-03-06 19:53 UTC (permalink / raw) --- src/backend/libpq/pg_hba.conf.sample | 6 +++--- src/bin/pg_basebackup/t/010_pg_basebackup.pl | 7 ++----- src/test/perl/PostgresNode.pm | 19 ++----------------- 3 files changed, 7 insertions(+), 25 deletions(-) diff --git a/src/backend/libpq/pg_hba.conf.sample b/src/backend/libpq/pg_hba.conf.sample index e0fbfcb026..b0852c82c0 100644 --- a/src/backend/libpq/pg_hba.conf.sample +++ b/src/backend/libpq/pg_hba.conf.sample @@ -84,6 +84,6 @@ host all all 127.0.0.1/32 @authmethodhost@ host all all ::1/128 @authmethodhost@ # Allow replication connections from localhost, by a user with the # replication privilege. -@remove-line-for-nolocal@#local replication @default_username@ @authmethodlocal@ -#host replication @default_username@ 127.0.0.1/32 @authmethodhost@ -#host replication @default_username@ ::1/128 @authmethodhost@ +@remove-line-for-nolocal@local replication @default_username@ @authmethodlocal@ +host replication @default_username@ 127.0.0.1/32 @authmethodhost@ +host replication @default_username@ ::1/128 @authmethodhost@ diff --git a/src/bin/pg_basebackup/t/010_pg_basebackup.pl b/src/bin/pg_basebackup/t/010_pg_basebackup.pl index aafb138fd5..14bd813896 100644 --- a/src/bin/pg_basebackup/t/010_pg_basebackup.pl +++ b/src/bin/pg_basebackup/t/010_pg_basebackup.pl @@ -4,7 +4,7 @@ use Config; use PostgresNode; use TestLib; -use Test::More tests => 73; +use Test::More tests => 72; program_help_ok('pg_basebackup'); program_version_ok('pg_basebackup'); @@ -15,15 +15,12 @@ my $node = get_new_node('main'); # Initialize node without replication settings -$node->init(hba_permit_replication => 0); +$node->init; $node->start; my $pgdata = $node->data_dir; $node->command_fails(['pg_basebackup'], 'pg_basebackup needs target directory specified'); -$node->command_fails( - [ 'pg_basebackup', '-D', "$tempdir/backup" ], - 'pg_basebackup fails because of hba'); # Some Windows ANSI code pages may reject this filename, in which case we # quietly proceed without this bit of test coverage. diff --git a/src/test/perl/PostgresNode.pm b/src/test/perl/PostgresNode.pm index e5cb348f4c..7e530676b2 100644 --- a/src/test/perl/PostgresNode.pm +++ b/src/test/perl/PostgresNode.pm @@ -349,11 +349,7 @@ sub set_replication_conf open my $hba, ">>$pgdata/pg_hba.conf"; print $hba "\n# Allow replication (set up by PostgresNode.pm)\n"; - if (!$TestLib::windows_os) - { - print $hba "local replication all trust\n"; - } - else + if ($TestLib::windows_os) { print $hba "host replication all $test_localhost/32 sspi include_realm=1 map=regress\n"; @@ -373,9 +369,6 @@ a directory that's only accessible to the current user to ensure that. On Windows, we use SSPI authentication to ensure the same (by pg_regress --config-auth). -pg_hba.conf is configured to allow replication connections. Pass the keyword -parameter hba_permit_replication => 0 to disable this. - WAL archiving can be enabled on this node by passing the keyword parameter has_archiving => 1. This is disabled by default. @@ -396,8 +389,6 @@ sub init my $pgdata = $self->data_dir; my $host = $self->host; - $params{hba_permit_replication} = 1 - unless defined $params{hba_permit_replication}; $params{allows_streaming} = 0 unless defined $params{allows_streaming}; $params{has_archiving} = 0 unless defined $params{has_archiving}; @@ -451,7 +442,7 @@ sub init } close $conf; - $self->set_replication_conf if $params{hba_permit_replication}; + $self->set_replication_conf if $params{allows_streaming}; $self->enable_archiving if $params{has_archiving}; } @@ -591,9 +582,6 @@ Does not start the node after initializing it. A recovery.conf is not created. -pg_hba.conf is configured to allow replication connections. Pass the keyword -parameter hba_permit_replication => 0 to disable this. - Streaming replication can be enabled on this node by passing the keyword parameter has_streaming => 1. This is disabled by default. @@ -615,8 +603,6 @@ sub init_from_backup my $root_name = $root_node->name; $params{has_streaming} = 0 unless defined $params{has_streaming}; - $params{hba_permit_replication} = 1 - unless defined $params{hba_permit_replication}; $params{has_restoring} = 0 unless defined $params{has_restoring}; print @@ -638,7 +624,6 @@ sub init_from_backup qq( port = $port )); - $self->set_replication_conf if $params{hba_permit_replication}; $self->enable_streaming($root_node) if $params{has_streaming}; $self->enable_restoring($root_node) if $params{has_restoring}; } -- 2.12.0 --------------392F5296BC5B7988B13A769D Content-Type: text/plain Content-Disposition: inline Content-Transfer-Encoding: 8bit MIME-Version: 1.0 -- Sent via pgsql-hackers mailing list ([email protected]) To make changes to your subscription: http://www.postgresql.org/mailpref/pgsql-hackers --------------392F5296BC5B7988B13A769D-- ^ permalink raw reply [nested|flat] 37+ messages in thread
* [PATCH] Enable replication connections by default in pg_hba.conf @ 2017-03-06 19:53 Peter Eisentraut <[email protected]> 0 siblings, 0 replies; 37+ messages in thread From: Peter Eisentraut @ 2017-03-06 19:53 UTC (permalink / raw) --- src/backend/libpq/pg_hba.conf.sample | 6 +++--- src/bin/pg_basebackup/t/010_pg_basebackup.pl | 7 ++----- src/test/perl/PostgresNode.pm | 19 ++----------------- 3 files changed, 7 insertions(+), 25 deletions(-) diff --git a/src/backend/libpq/pg_hba.conf.sample b/src/backend/libpq/pg_hba.conf.sample index e0fbfcb026..b0852c82c0 100644 --- a/src/backend/libpq/pg_hba.conf.sample +++ b/src/backend/libpq/pg_hba.conf.sample @@ -84,6 +84,6 @@ host all all 127.0.0.1/32 @authmethodhost@ host all all ::1/128 @authmethodhost@ # Allow replication connections from localhost, by a user with the # replication privilege. -@remove-line-for-nolocal@#local replication @default_username@ @authmethodlocal@ -#host replication @default_username@ 127.0.0.1/32 @authmethodhost@ -#host replication @default_username@ ::1/128 @authmethodhost@ +@remove-line-for-nolocal@local replication @default_username@ @authmethodlocal@ +host replication @default_username@ 127.0.0.1/32 @authmethodhost@ +host replication @default_username@ ::1/128 @authmethodhost@ diff --git a/src/bin/pg_basebackup/t/010_pg_basebackup.pl b/src/bin/pg_basebackup/t/010_pg_basebackup.pl index aafb138fd5..14bd813896 100644 --- a/src/bin/pg_basebackup/t/010_pg_basebackup.pl +++ b/src/bin/pg_basebackup/t/010_pg_basebackup.pl @@ -4,7 +4,7 @@ use Config; use PostgresNode; use TestLib; -use Test::More tests => 73; +use Test::More tests => 72; program_help_ok('pg_basebackup'); program_version_ok('pg_basebackup'); @@ -15,15 +15,12 @@ my $node = get_new_node('main'); # Initialize node without replication settings -$node->init(hba_permit_replication => 0); +$node->init; $node->start; my $pgdata = $node->data_dir; $node->command_fails(['pg_basebackup'], 'pg_basebackup needs target directory specified'); -$node->command_fails( - [ 'pg_basebackup', '-D', "$tempdir/backup" ], - 'pg_basebackup fails because of hba'); # Some Windows ANSI code pages may reject this filename, in which case we # quietly proceed without this bit of test coverage. diff --git a/src/test/perl/PostgresNode.pm b/src/test/perl/PostgresNode.pm index e5cb348f4c..7e530676b2 100644 --- a/src/test/perl/PostgresNode.pm +++ b/src/test/perl/PostgresNode.pm @@ -349,11 +349,7 @@ sub set_replication_conf open my $hba, ">>$pgdata/pg_hba.conf"; print $hba "\n# Allow replication (set up by PostgresNode.pm)\n"; - if (!$TestLib::windows_os) - { - print $hba "local replication all trust\n"; - } - else + if ($TestLib::windows_os) { print $hba "host replication all $test_localhost/32 sspi include_realm=1 map=regress\n"; @@ -373,9 +369,6 @@ a directory that's only accessible to the current user to ensure that. On Windows, we use SSPI authentication to ensure the same (by pg_regress --config-auth). -pg_hba.conf is configured to allow replication connections. Pass the keyword -parameter hba_permit_replication => 0 to disable this. - WAL archiving can be enabled on this node by passing the keyword parameter has_archiving => 1. This is disabled by default. @@ -396,8 +389,6 @@ sub init my $pgdata = $self->data_dir; my $host = $self->host; - $params{hba_permit_replication} = 1 - unless defined $params{hba_permit_replication}; $params{allows_streaming} = 0 unless defined $params{allows_streaming}; $params{has_archiving} = 0 unless defined $params{has_archiving}; @@ -451,7 +442,7 @@ sub init } close $conf; - $self->set_replication_conf if $params{hba_permit_replication}; + $self->set_replication_conf if $params{allows_streaming}; $self->enable_archiving if $params{has_archiving}; } @@ -591,9 +582,6 @@ Does not start the node after initializing it. A recovery.conf is not created. -pg_hba.conf is configured to allow replication connections. Pass the keyword -parameter hba_permit_replication => 0 to disable this. - Streaming replication can be enabled on this node by passing the keyword parameter has_streaming => 1. This is disabled by default. @@ -615,8 +603,6 @@ sub init_from_backup my $root_name = $root_node->name; $params{has_streaming} = 0 unless defined $params{has_streaming}; - $params{hba_permit_replication} = 1 - unless defined $params{hba_permit_replication}; $params{has_restoring} = 0 unless defined $params{has_restoring}; print @@ -638,7 +624,6 @@ sub init_from_backup qq( port = $port )); - $self->set_replication_conf if $params{hba_permit_replication}; $self->enable_streaming($root_node) if $params{has_streaming}; $self->enable_restoring($root_node) if $params{has_restoring}; } -- 2.12.0 --------------392F5296BC5B7988B13A769D Content-Type: text/plain Content-Disposition: inline Content-Transfer-Encoding: 8bit MIME-Version: 1.0 -- Sent via pgsql-hackers mailing list ([email protected]) To make changes to your subscription: http://www.postgresql.org/mailpref/pgsql-hackers --------------392F5296BC5B7988B13A769D-- ^ permalink raw reply [nested|flat] 37+ messages in thread
* [PATCH v2] Enable replication connections by default in pg_hba.conf @ 2017-03-08 02:07 Peter Eisentraut <[email protected]> 0 siblings, 0 replies; 37+ messages in thread From: Peter Eisentraut @ 2017-03-08 02:07 UTC (permalink / raw) --- doc/src/sgml/ref/initdb.sgml | 16 +++++++++++----- src/backend/libpq/pg_hba.conf.sample | 6 +++--- src/bin/initdb/initdb.c | 5 ----- src/bin/pg_basebackup/t/010_pg_basebackup.pl | 7 ++----- src/test/perl/PostgresNode.pm | 19 ++----------------- 5 files changed, 18 insertions(+), 35 deletions(-) diff --git a/doc/src/sgml/ref/initdb.sgml b/doc/src/sgml/ref/initdb.sgml index 1aaa4901af..d9faa96021 100644 --- a/doc/src/sgml/ref/initdb.sgml +++ b/doc/src/sgml/ref/initdb.sgml @@ -120,11 +120,17 @@ <title>Options</title> <term><option>--auth=<replaceable class="parameter">authmethod</replaceable></option></term> <listitem> <para> - This option specifies the authentication method for local users used - in <filename>pg_hba.conf</> (<literal>host</literal> - and <literal>local</literal> lines). Do not use <literal>trust</> - unless you trust all local users on your system. <literal>trust</> is - the default for ease of installation. + This option specifies the default authentication method for local + users used in <filename>pg_hba.conf</> (<literal>host</literal> + and <literal>local</literal> lines). <command>initdb</command> will + prepopulate <filename>pg_hba.conf</filename> entries using the + specified authentication method for non-replication as well as + replication connections. + </para> + + <para> + Do not use <literal>trust</> unless you trust all local users on your + system. <literal>trust</> is the default for ease of installation. </para> </listitem> </varlistentry> diff --git a/src/backend/libpq/pg_hba.conf.sample b/src/backend/libpq/pg_hba.conf.sample index e0fbfcb026..507278b2cc 100644 --- a/src/backend/libpq/pg_hba.conf.sample +++ b/src/backend/libpq/pg_hba.conf.sample @@ -84,6 +84,6 @@ host all all 127.0.0.1/32 @authmethodhost@ host all all ::1/128 @authmethodhost@ # Allow replication connections from localhost, by a user with the # replication privilege. -@remove-line-for-nolocal@#local replication @default_username@ @authmethodlocal@ -#host replication @default_username@ 127.0.0.1/32 @authmethodhost@ -#host replication @default_username@ ::1/128 @authmethodhost@ +@remove-line-for-nolocal@local replication all @authmethodlocal@ +host replication all 127.0.0.1/32 @authmethodhost@ +host replication all ::1/128 @authmethodhost@ diff --git a/src/bin/initdb/initdb.c b/src/bin/initdb/initdb.c index 1ed0d20504..ea7b47e26d 100644 --- a/src/bin/initdb/initdb.c +++ b/src/bin/initdb/initdb.c @@ -1227,11 +1227,6 @@ setup_config(void) "@authcomment@", (strcmp(authmethodlocal, "trust") == 0 || strcmp(authmethodhost, "trust") == 0) ? AUTHTRUST_WARNING : ""); - /* Replace username for replication */ - conflines = replace_token(conflines, - "@default_username@", - username); - snprintf(path, sizeof(path), "%s/pg_hba.conf", pg_data); writefile(path, conflines); diff --git a/src/bin/pg_basebackup/t/010_pg_basebackup.pl b/src/bin/pg_basebackup/t/010_pg_basebackup.pl index aafb138fd5..14bd813896 100644 --- a/src/bin/pg_basebackup/t/010_pg_basebackup.pl +++ b/src/bin/pg_basebackup/t/010_pg_basebackup.pl @@ -4,7 +4,7 @@ use Config; use PostgresNode; use TestLib; -use Test::More tests => 73; +use Test::More tests => 72; program_help_ok('pg_basebackup'); program_version_ok('pg_basebackup'); @@ -15,15 +15,12 @@ my $node = get_new_node('main'); # Initialize node without replication settings -$node->init(hba_permit_replication => 0); +$node->init; $node->start; my $pgdata = $node->data_dir; $node->command_fails(['pg_basebackup'], 'pg_basebackup needs target directory specified'); -$node->command_fails( - [ 'pg_basebackup', '-D', "$tempdir/backup" ], - 'pg_basebackup fails because of hba'); # Some Windows ANSI code pages may reject this filename, in which case we # quietly proceed without this bit of test coverage. diff --git a/src/test/perl/PostgresNode.pm b/src/test/perl/PostgresNode.pm index e5cb348f4c..7e530676b2 100644 --- a/src/test/perl/PostgresNode.pm +++ b/src/test/perl/PostgresNode.pm @@ -349,11 +349,7 @@ sub set_replication_conf open my $hba, ">>$pgdata/pg_hba.conf"; print $hba "\n# Allow replication (set up by PostgresNode.pm)\n"; - if (!$TestLib::windows_os) - { - print $hba "local replication all trust\n"; - } - else + if ($TestLib::windows_os) { print $hba "host replication all $test_localhost/32 sspi include_realm=1 map=regress\n"; @@ -373,9 +369,6 @@ a directory that's only accessible to the current user to ensure that. On Windows, we use SSPI authentication to ensure the same (by pg_regress --config-auth). -pg_hba.conf is configured to allow replication connections. Pass the keyword -parameter hba_permit_replication => 0 to disable this. - WAL archiving can be enabled on this node by passing the keyword parameter has_archiving => 1. This is disabled by default. @@ -396,8 +389,6 @@ sub init my $pgdata = $self->data_dir; my $host = $self->host; - $params{hba_permit_replication} = 1 - unless defined $params{hba_permit_replication}; $params{allows_streaming} = 0 unless defined $params{allows_streaming}; $params{has_archiving} = 0 unless defined $params{has_archiving}; @@ -451,7 +442,7 @@ sub init } close $conf; - $self->set_replication_conf if $params{hba_permit_replication}; + $self->set_replication_conf if $params{allows_streaming}; $self->enable_archiving if $params{has_archiving}; } @@ -591,9 +582,6 @@ Does not start the node after initializing it. A recovery.conf is not created. -pg_hba.conf is configured to allow replication connections. Pass the keyword -parameter hba_permit_replication => 0 to disable this. - Streaming replication can be enabled on this node by passing the keyword parameter has_streaming => 1. This is disabled by default. @@ -615,8 +603,6 @@ sub init_from_backup my $root_name = $root_node->name; $params{has_streaming} = 0 unless defined $params{has_streaming}; - $params{hba_permit_replication} = 1 - unless defined $params{hba_permit_replication}; $params{has_restoring} = 0 unless defined $params{has_restoring}; print @@ -638,7 +624,6 @@ sub init_from_backup qq( port = $port )); - $self->set_replication_conf if $params{hba_permit_replication}; $self->enable_streaming($root_node) if $params{has_streaming}; $self->enable_restoring($root_node) if $params{has_restoring}; } -- 2.12.0 --------------C2D5D3D6DC2196AFF8605F7D Content-Type: text/plain Content-Disposition: inline Content-Transfer-Encoding: 8bit MIME-Version: 1.0 -- Sent via pgsql-hackers mailing list ([email protected]) To make changes to your subscription: http://www.postgresql.org/mailpref/pgsql-hackers --------------C2D5D3D6DC2196AFF8605F7D-- ^ permalink raw reply [nested|flat] 37+ messages in thread
* [PATCH v2] Enable replication connections by default in pg_hba.conf @ 2017-03-08 02:07 Peter Eisentraut <[email protected]> 0 siblings, 0 replies; 37+ messages in thread From: Peter Eisentraut @ 2017-03-08 02:07 UTC (permalink / raw) --- doc/src/sgml/ref/initdb.sgml | 16 +++++++++++----- src/backend/libpq/pg_hba.conf.sample | 6 +++--- src/bin/initdb/initdb.c | 5 ----- src/bin/pg_basebackup/t/010_pg_basebackup.pl | 7 ++----- src/test/perl/PostgresNode.pm | 19 ++----------------- 5 files changed, 18 insertions(+), 35 deletions(-) diff --git a/doc/src/sgml/ref/initdb.sgml b/doc/src/sgml/ref/initdb.sgml index 1aaa4901af..d9faa96021 100644 --- a/doc/src/sgml/ref/initdb.sgml +++ b/doc/src/sgml/ref/initdb.sgml @@ -120,11 +120,17 @@ <title>Options</title> <term><option>--auth=<replaceable class="parameter">authmethod</replaceable></option></term> <listitem> <para> - This option specifies the authentication method for local users used - in <filename>pg_hba.conf</> (<literal>host</literal> - and <literal>local</literal> lines). Do not use <literal>trust</> - unless you trust all local users on your system. <literal>trust</> is - the default for ease of installation. + This option specifies the default authentication method for local + users used in <filename>pg_hba.conf</> (<literal>host</literal> + and <literal>local</literal> lines). <command>initdb</command> will + prepopulate <filename>pg_hba.conf</filename> entries using the + specified authentication method for non-replication as well as + replication connections. + </para> + + <para> + Do not use <literal>trust</> unless you trust all local users on your + system. <literal>trust</> is the default for ease of installation. </para> </listitem> </varlistentry> diff --git a/src/backend/libpq/pg_hba.conf.sample b/src/backend/libpq/pg_hba.conf.sample index e0fbfcb026..507278b2cc 100644 --- a/src/backend/libpq/pg_hba.conf.sample +++ b/src/backend/libpq/pg_hba.conf.sample @@ -84,6 +84,6 @@ host all all 127.0.0.1/32 @authmethodhost@ host all all ::1/128 @authmethodhost@ # Allow replication connections from localhost, by a user with the # replication privilege. -@remove-line-for-nolocal@#local replication @default_username@ @authmethodlocal@ -#host replication @default_username@ 127.0.0.1/32 @authmethodhost@ -#host replication @default_username@ ::1/128 @authmethodhost@ +@remove-line-for-nolocal@local replication all @authmethodlocal@ +host replication all 127.0.0.1/32 @authmethodhost@ +host replication all ::1/128 @authmethodhost@ diff --git a/src/bin/initdb/initdb.c b/src/bin/initdb/initdb.c index 1ed0d20504..ea7b47e26d 100644 --- a/src/bin/initdb/initdb.c +++ b/src/bin/initdb/initdb.c @@ -1227,11 +1227,6 @@ setup_config(void) "@authcomment@", (strcmp(authmethodlocal, "trust") == 0 || strcmp(authmethodhost, "trust") == 0) ? AUTHTRUST_WARNING : ""); - /* Replace username for replication */ - conflines = replace_token(conflines, - "@default_username@", - username); - snprintf(path, sizeof(path), "%s/pg_hba.conf", pg_data); writefile(path, conflines); diff --git a/src/bin/pg_basebackup/t/010_pg_basebackup.pl b/src/bin/pg_basebackup/t/010_pg_basebackup.pl index aafb138fd5..14bd813896 100644 --- a/src/bin/pg_basebackup/t/010_pg_basebackup.pl +++ b/src/bin/pg_basebackup/t/010_pg_basebackup.pl @@ -4,7 +4,7 @@ use Config; use PostgresNode; use TestLib; -use Test::More tests => 73; +use Test::More tests => 72; program_help_ok('pg_basebackup'); program_version_ok('pg_basebackup'); @@ -15,15 +15,12 @@ my $node = get_new_node('main'); # Initialize node without replication settings -$node->init(hba_permit_replication => 0); +$node->init; $node->start; my $pgdata = $node->data_dir; $node->command_fails(['pg_basebackup'], 'pg_basebackup needs target directory specified'); -$node->command_fails( - [ 'pg_basebackup', '-D', "$tempdir/backup" ], - 'pg_basebackup fails because of hba'); # Some Windows ANSI code pages may reject this filename, in which case we # quietly proceed without this bit of test coverage. diff --git a/src/test/perl/PostgresNode.pm b/src/test/perl/PostgresNode.pm index e5cb348f4c..7e530676b2 100644 --- a/src/test/perl/PostgresNode.pm +++ b/src/test/perl/PostgresNode.pm @@ -349,11 +349,7 @@ sub set_replication_conf open my $hba, ">>$pgdata/pg_hba.conf"; print $hba "\n# Allow replication (set up by PostgresNode.pm)\n"; - if (!$TestLib::windows_os) - { - print $hba "local replication all trust\n"; - } - else + if ($TestLib::windows_os) { print $hba "host replication all $test_localhost/32 sspi include_realm=1 map=regress\n"; @@ -373,9 +369,6 @@ a directory that's only accessible to the current user to ensure that. On Windows, we use SSPI authentication to ensure the same (by pg_regress --config-auth). -pg_hba.conf is configured to allow replication connections. Pass the keyword -parameter hba_permit_replication => 0 to disable this. - WAL archiving can be enabled on this node by passing the keyword parameter has_archiving => 1. This is disabled by default. @@ -396,8 +389,6 @@ sub init my $pgdata = $self->data_dir; my $host = $self->host; - $params{hba_permit_replication} = 1 - unless defined $params{hba_permit_replication}; $params{allows_streaming} = 0 unless defined $params{allows_streaming}; $params{has_archiving} = 0 unless defined $params{has_archiving}; @@ -451,7 +442,7 @@ sub init } close $conf; - $self->set_replication_conf if $params{hba_permit_replication}; + $self->set_replication_conf if $params{allows_streaming}; $self->enable_archiving if $params{has_archiving}; } @@ -591,9 +582,6 @@ Does not start the node after initializing it. A recovery.conf is not created. -pg_hba.conf is configured to allow replication connections. Pass the keyword -parameter hba_permit_replication => 0 to disable this. - Streaming replication can be enabled on this node by passing the keyword parameter has_streaming => 1. This is disabled by default. @@ -615,8 +603,6 @@ sub init_from_backup my $root_name = $root_node->name; $params{has_streaming} = 0 unless defined $params{has_streaming}; - $params{hba_permit_replication} = 1 - unless defined $params{hba_permit_replication}; $params{has_restoring} = 0 unless defined $params{has_restoring}; print @@ -638,7 +624,6 @@ sub init_from_backup qq( port = $port )); - $self->set_replication_conf if $params{hba_permit_replication}; $self->enable_streaming($root_node) if $params{has_streaming}; $self->enable_restoring($root_node) if $params{has_restoring}; } -- 2.12.0 --------------C2D5D3D6DC2196AFF8605F7D Content-Type: text/plain Content-Disposition: inline Content-Transfer-Encoding: 8bit MIME-Version: 1.0 -- Sent via pgsql-hackers mailing list ([email protected]) To make changes to your subscription: http://www.postgresql.org/mailpref/pgsql-hackers --------------C2D5D3D6DC2196AFF8605F7D-- ^ permalink raw reply [nested|flat] 37+ messages in thread
* [PATCH v2] Enable replication connections by default in pg_hba.conf @ 2017-03-08 02:07 Peter Eisentraut <[email protected]> 0 siblings, 0 replies; 37+ messages in thread From: Peter Eisentraut @ 2017-03-08 02:07 UTC (permalink / raw) --- doc/src/sgml/ref/initdb.sgml | 16 +++++++++++----- src/backend/libpq/pg_hba.conf.sample | 6 +++--- src/bin/initdb/initdb.c | 5 ----- src/bin/pg_basebackup/t/010_pg_basebackup.pl | 7 ++----- src/test/perl/PostgresNode.pm | 19 ++----------------- 5 files changed, 18 insertions(+), 35 deletions(-) diff --git a/doc/src/sgml/ref/initdb.sgml b/doc/src/sgml/ref/initdb.sgml index 1aaa4901af..d9faa96021 100644 --- a/doc/src/sgml/ref/initdb.sgml +++ b/doc/src/sgml/ref/initdb.sgml @@ -120,11 +120,17 @@ <title>Options</title> <term><option>--auth=<replaceable class="parameter">authmethod</replaceable></option></term> <listitem> <para> - This option specifies the authentication method for local users used - in <filename>pg_hba.conf</> (<literal>host</literal> - and <literal>local</literal> lines). Do not use <literal>trust</> - unless you trust all local users on your system. <literal>trust</> is - the default for ease of installation. + This option specifies the default authentication method for local + users used in <filename>pg_hba.conf</> (<literal>host</literal> + and <literal>local</literal> lines). <command>initdb</command> will + prepopulate <filename>pg_hba.conf</filename> entries using the + specified authentication method for non-replication as well as + replication connections. + </para> + + <para> + Do not use <literal>trust</> unless you trust all local users on your + system. <literal>trust</> is the default for ease of installation. </para> </listitem> </varlistentry> diff --git a/src/backend/libpq/pg_hba.conf.sample b/src/backend/libpq/pg_hba.conf.sample index e0fbfcb026..507278b2cc 100644 --- a/src/backend/libpq/pg_hba.conf.sample +++ b/src/backend/libpq/pg_hba.conf.sample @@ -84,6 +84,6 @@ host all all 127.0.0.1/32 @authmethodhost@ host all all ::1/128 @authmethodhost@ # Allow replication connections from localhost, by a user with the # replication privilege. -@remove-line-for-nolocal@#local replication @default_username@ @authmethodlocal@ -#host replication @default_username@ 127.0.0.1/32 @authmethodhost@ -#host replication @default_username@ ::1/128 @authmethodhost@ +@remove-line-for-nolocal@local replication all @authmethodlocal@ +host replication all 127.0.0.1/32 @authmethodhost@ +host replication all ::1/128 @authmethodhost@ diff --git a/src/bin/initdb/initdb.c b/src/bin/initdb/initdb.c index 1ed0d20504..ea7b47e26d 100644 --- a/src/bin/initdb/initdb.c +++ b/src/bin/initdb/initdb.c @@ -1227,11 +1227,6 @@ setup_config(void) "@authcomment@", (strcmp(authmethodlocal, "trust") == 0 || strcmp(authmethodhost, "trust") == 0) ? AUTHTRUST_WARNING : ""); - /* Replace username for replication */ - conflines = replace_token(conflines, - "@default_username@", - username); - snprintf(path, sizeof(path), "%s/pg_hba.conf", pg_data); writefile(path, conflines); diff --git a/src/bin/pg_basebackup/t/010_pg_basebackup.pl b/src/bin/pg_basebackup/t/010_pg_basebackup.pl index aafb138fd5..14bd813896 100644 --- a/src/bin/pg_basebackup/t/010_pg_basebackup.pl +++ b/src/bin/pg_basebackup/t/010_pg_basebackup.pl @@ -4,7 +4,7 @@ use Config; use PostgresNode; use TestLib; -use Test::More tests => 73; +use Test::More tests => 72; program_help_ok('pg_basebackup'); program_version_ok('pg_basebackup'); @@ -15,15 +15,12 @@ my $node = get_new_node('main'); # Initialize node without replication settings -$node->init(hba_permit_replication => 0); +$node->init; $node->start; my $pgdata = $node->data_dir; $node->command_fails(['pg_basebackup'], 'pg_basebackup needs target directory specified'); -$node->command_fails( - [ 'pg_basebackup', '-D', "$tempdir/backup" ], - 'pg_basebackup fails because of hba'); # Some Windows ANSI code pages may reject this filename, in which case we # quietly proceed without this bit of test coverage. diff --git a/src/test/perl/PostgresNode.pm b/src/test/perl/PostgresNode.pm index e5cb348f4c..7e530676b2 100644 --- a/src/test/perl/PostgresNode.pm +++ b/src/test/perl/PostgresNode.pm @@ -349,11 +349,7 @@ sub set_replication_conf open my $hba, ">>$pgdata/pg_hba.conf"; print $hba "\n# Allow replication (set up by PostgresNode.pm)\n"; - if (!$TestLib::windows_os) - { - print $hba "local replication all trust\n"; - } - else + if ($TestLib::windows_os) { print $hba "host replication all $test_localhost/32 sspi include_realm=1 map=regress\n"; @@ -373,9 +369,6 @@ a directory that's only accessible to the current user to ensure that. On Windows, we use SSPI authentication to ensure the same (by pg_regress --config-auth). -pg_hba.conf is configured to allow replication connections. Pass the keyword -parameter hba_permit_replication => 0 to disable this. - WAL archiving can be enabled on this node by passing the keyword parameter has_archiving => 1. This is disabled by default. @@ -396,8 +389,6 @@ sub init my $pgdata = $self->data_dir; my $host = $self->host; - $params{hba_permit_replication} = 1 - unless defined $params{hba_permit_replication}; $params{allows_streaming} = 0 unless defined $params{allows_streaming}; $params{has_archiving} = 0 unless defined $params{has_archiving}; @@ -451,7 +442,7 @@ sub init } close $conf; - $self->set_replication_conf if $params{hba_permit_replication}; + $self->set_replication_conf if $params{allows_streaming}; $self->enable_archiving if $params{has_archiving}; } @@ -591,9 +582,6 @@ Does not start the node after initializing it. A recovery.conf is not created. -pg_hba.conf is configured to allow replication connections. Pass the keyword -parameter hba_permit_replication => 0 to disable this. - Streaming replication can be enabled on this node by passing the keyword parameter has_streaming => 1. This is disabled by default. @@ -615,8 +603,6 @@ sub init_from_backup my $root_name = $root_node->name; $params{has_streaming} = 0 unless defined $params{has_streaming}; - $params{hba_permit_replication} = 1 - unless defined $params{hba_permit_replication}; $params{has_restoring} = 0 unless defined $params{has_restoring}; print @@ -638,7 +624,6 @@ sub init_from_backup qq( port = $port )); - $self->set_replication_conf if $params{hba_permit_replication}; $self->enable_streaming($root_node) if $params{has_streaming}; $self->enable_restoring($root_node) if $params{has_restoring}; } -- 2.12.0 --------------C2D5D3D6DC2196AFF8605F7D Content-Type: text/plain Content-Disposition: inline Content-Transfer-Encoding: 8bit MIME-Version: 1.0 -- Sent via pgsql-hackers mailing list ([email protected]) To make changes to your subscription: http://www.postgresql.org/mailpref/pgsql-hackers --------------C2D5D3D6DC2196AFF8605F7D-- ^ permalink raw reply [nested|flat] 37+ messages in thread
* [PATCH v2] Enable replication connections by default in pg_hba.conf @ 2017-03-08 02:07 Peter Eisentraut <[email protected]> 0 siblings, 0 replies; 37+ messages in thread From: Peter Eisentraut @ 2017-03-08 02:07 UTC (permalink / raw) --- doc/src/sgml/ref/initdb.sgml | 16 +++++++++++----- src/backend/libpq/pg_hba.conf.sample | 6 +++--- src/bin/initdb/initdb.c | 5 ----- src/bin/pg_basebackup/t/010_pg_basebackup.pl | 7 ++----- src/test/perl/PostgresNode.pm | 19 ++----------------- 5 files changed, 18 insertions(+), 35 deletions(-) diff --git a/doc/src/sgml/ref/initdb.sgml b/doc/src/sgml/ref/initdb.sgml index 1aaa4901af..d9faa96021 100644 --- a/doc/src/sgml/ref/initdb.sgml +++ b/doc/src/sgml/ref/initdb.sgml @@ -120,11 +120,17 @@ <title>Options</title> <term><option>--auth=<replaceable class="parameter">authmethod</replaceable></option></term> <listitem> <para> - This option specifies the authentication method for local users used - in <filename>pg_hba.conf</> (<literal>host</literal> - and <literal>local</literal> lines). Do not use <literal>trust</> - unless you trust all local users on your system. <literal>trust</> is - the default for ease of installation. + This option specifies the default authentication method for local + users used in <filename>pg_hba.conf</> (<literal>host</literal> + and <literal>local</literal> lines). <command>initdb</command> will + prepopulate <filename>pg_hba.conf</filename> entries using the + specified authentication method for non-replication as well as + replication connections. + </para> + + <para> + Do not use <literal>trust</> unless you trust all local users on your + system. <literal>trust</> is the default for ease of installation. </para> </listitem> </varlistentry> diff --git a/src/backend/libpq/pg_hba.conf.sample b/src/backend/libpq/pg_hba.conf.sample index e0fbfcb026..507278b2cc 100644 --- a/src/backend/libpq/pg_hba.conf.sample +++ b/src/backend/libpq/pg_hba.conf.sample @@ -84,6 +84,6 @@ host all all 127.0.0.1/32 @authmethodhost@ host all all ::1/128 @authmethodhost@ # Allow replication connections from localhost, by a user with the # replication privilege. -@remove-line-for-nolocal@#local replication @default_username@ @authmethodlocal@ -#host replication @default_username@ 127.0.0.1/32 @authmethodhost@ -#host replication @default_username@ ::1/128 @authmethodhost@ +@remove-line-for-nolocal@local replication all @authmethodlocal@ +host replication all 127.0.0.1/32 @authmethodhost@ +host replication all ::1/128 @authmethodhost@ diff --git a/src/bin/initdb/initdb.c b/src/bin/initdb/initdb.c index 1ed0d20504..ea7b47e26d 100644 --- a/src/bin/initdb/initdb.c +++ b/src/bin/initdb/initdb.c @@ -1227,11 +1227,6 @@ setup_config(void) "@authcomment@", (strcmp(authmethodlocal, "trust") == 0 || strcmp(authmethodhost, "trust") == 0) ? AUTHTRUST_WARNING : ""); - /* Replace username for replication */ - conflines = replace_token(conflines, - "@default_username@", - username); - snprintf(path, sizeof(path), "%s/pg_hba.conf", pg_data); writefile(path, conflines); diff --git a/src/bin/pg_basebackup/t/010_pg_basebackup.pl b/src/bin/pg_basebackup/t/010_pg_basebackup.pl index aafb138fd5..14bd813896 100644 --- a/src/bin/pg_basebackup/t/010_pg_basebackup.pl +++ b/src/bin/pg_basebackup/t/010_pg_basebackup.pl @@ -4,7 +4,7 @@ use Config; use PostgresNode; use TestLib; -use Test::More tests => 73; +use Test::More tests => 72; program_help_ok('pg_basebackup'); program_version_ok('pg_basebackup'); @@ -15,15 +15,12 @@ my $node = get_new_node('main'); # Initialize node without replication settings -$node->init(hba_permit_replication => 0); +$node->init; $node->start; my $pgdata = $node->data_dir; $node->command_fails(['pg_basebackup'], 'pg_basebackup needs target directory specified'); -$node->command_fails( - [ 'pg_basebackup', '-D', "$tempdir/backup" ], - 'pg_basebackup fails because of hba'); # Some Windows ANSI code pages may reject this filename, in which case we # quietly proceed without this bit of test coverage. diff --git a/src/test/perl/PostgresNode.pm b/src/test/perl/PostgresNode.pm index e5cb348f4c..7e530676b2 100644 --- a/src/test/perl/PostgresNode.pm +++ b/src/test/perl/PostgresNode.pm @@ -349,11 +349,7 @@ sub set_replication_conf open my $hba, ">>$pgdata/pg_hba.conf"; print $hba "\n# Allow replication (set up by PostgresNode.pm)\n"; - if (!$TestLib::windows_os) - { - print $hba "local replication all trust\n"; - } - else + if ($TestLib::windows_os) { print $hba "host replication all $test_localhost/32 sspi include_realm=1 map=regress\n"; @@ -373,9 +369,6 @@ a directory that's only accessible to the current user to ensure that. On Windows, we use SSPI authentication to ensure the same (by pg_regress --config-auth). -pg_hba.conf is configured to allow replication connections. Pass the keyword -parameter hba_permit_replication => 0 to disable this. - WAL archiving can be enabled on this node by passing the keyword parameter has_archiving => 1. This is disabled by default. @@ -396,8 +389,6 @@ sub init my $pgdata = $self->data_dir; my $host = $self->host; - $params{hba_permit_replication} = 1 - unless defined $params{hba_permit_replication}; $params{allows_streaming} = 0 unless defined $params{allows_streaming}; $params{has_archiving} = 0 unless defined $params{has_archiving}; @@ -451,7 +442,7 @@ sub init } close $conf; - $self->set_replication_conf if $params{hba_permit_replication}; + $self->set_replication_conf if $params{allows_streaming}; $self->enable_archiving if $params{has_archiving}; } @@ -591,9 +582,6 @@ Does not start the node after initializing it. A recovery.conf is not created. -pg_hba.conf is configured to allow replication connections. Pass the keyword -parameter hba_permit_replication => 0 to disable this. - Streaming replication can be enabled on this node by passing the keyword parameter has_streaming => 1. This is disabled by default. @@ -615,8 +603,6 @@ sub init_from_backup my $root_name = $root_node->name; $params{has_streaming} = 0 unless defined $params{has_streaming}; - $params{hba_permit_replication} = 1 - unless defined $params{hba_permit_replication}; $params{has_restoring} = 0 unless defined $params{has_restoring}; print @@ -638,7 +624,6 @@ sub init_from_backup qq( port = $port )); - $self->set_replication_conf if $params{hba_permit_replication}; $self->enable_streaming($root_node) if $params{has_streaming}; $self->enable_restoring($root_node) if $params{has_restoring}; } -- 2.12.0 --------------C2D5D3D6DC2196AFF8605F7D Content-Type: text/plain Content-Disposition: inline Content-Transfer-Encoding: 8bit MIME-Version: 1.0 -- Sent via pgsql-hackers mailing list ([email protected]) To make changes to your subscription: http://www.postgresql.org/mailpref/pgsql-hackers --------------C2D5D3D6DC2196AFF8605F7D-- ^ permalink raw reply [nested|flat] 37+ messages in thread
* [PATCH v2] Enable replication connections by default in pg_hba.conf @ 2017-03-08 02:07 Peter Eisentraut <[email protected]> 0 siblings, 0 replies; 37+ messages in thread From: Peter Eisentraut @ 2017-03-08 02:07 UTC (permalink / raw) --- doc/src/sgml/ref/initdb.sgml | 16 +++++++++++----- src/backend/libpq/pg_hba.conf.sample | 6 +++--- src/bin/initdb/initdb.c | 5 ----- src/bin/pg_basebackup/t/010_pg_basebackup.pl | 7 ++----- src/test/perl/PostgresNode.pm | 19 ++----------------- 5 files changed, 18 insertions(+), 35 deletions(-) diff --git a/doc/src/sgml/ref/initdb.sgml b/doc/src/sgml/ref/initdb.sgml index 1aaa4901af..d9faa96021 100644 --- a/doc/src/sgml/ref/initdb.sgml +++ b/doc/src/sgml/ref/initdb.sgml @@ -120,11 +120,17 @@ <title>Options</title> <term><option>--auth=<replaceable class="parameter">authmethod</replaceable></option></term> <listitem> <para> - This option specifies the authentication method for local users used - in <filename>pg_hba.conf</> (<literal>host</literal> - and <literal>local</literal> lines). Do not use <literal>trust</> - unless you trust all local users on your system. <literal>trust</> is - the default for ease of installation. + This option specifies the default authentication method for local + users used in <filename>pg_hba.conf</> (<literal>host</literal> + and <literal>local</literal> lines). <command>initdb</command> will + prepopulate <filename>pg_hba.conf</filename> entries using the + specified authentication method for non-replication as well as + replication connections. + </para> + + <para> + Do not use <literal>trust</> unless you trust all local users on your + system. <literal>trust</> is the default for ease of installation. </para> </listitem> </varlistentry> diff --git a/src/backend/libpq/pg_hba.conf.sample b/src/backend/libpq/pg_hba.conf.sample index e0fbfcb026..507278b2cc 100644 --- a/src/backend/libpq/pg_hba.conf.sample +++ b/src/backend/libpq/pg_hba.conf.sample @@ -84,6 +84,6 @@ host all all 127.0.0.1/32 @authmethodhost@ host all all ::1/128 @authmethodhost@ # Allow replication connections from localhost, by a user with the # replication privilege. -@remove-line-for-nolocal@#local replication @default_username@ @authmethodlocal@ -#host replication @default_username@ 127.0.0.1/32 @authmethodhost@ -#host replication @default_username@ ::1/128 @authmethodhost@ +@remove-line-for-nolocal@local replication all @authmethodlocal@ +host replication all 127.0.0.1/32 @authmethodhost@ +host replication all ::1/128 @authmethodhost@ diff --git a/src/bin/initdb/initdb.c b/src/bin/initdb/initdb.c index 1ed0d20504..ea7b47e26d 100644 --- a/src/bin/initdb/initdb.c +++ b/src/bin/initdb/initdb.c @@ -1227,11 +1227,6 @@ setup_config(void) "@authcomment@", (strcmp(authmethodlocal, "trust") == 0 || strcmp(authmethodhost, "trust") == 0) ? AUTHTRUST_WARNING : ""); - /* Replace username for replication */ - conflines = replace_token(conflines, - "@default_username@", - username); - snprintf(path, sizeof(path), "%s/pg_hba.conf", pg_data); writefile(path, conflines); diff --git a/src/bin/pg_basebackup/t/010_pg_basebackup.pl b/src/bin/pg_basebackup/t/010_pg_basebackup.pl index aafb138fd5..14bd813896 100644 --- a/src/bin/pg_basebackup/t/010_pg_basebackup.pl +++ b/src/bin/pg_basebackup/t/010_pg_basebackup.pl @@ -4,7 +4,7 @@ use Config; use PostgresNode; use TestLib; -use Test::More tests => 73; +use Test::More tests => 72; program_help_ok('pg_basebackup'); program_version_ok('pg_basebackup'); @@ -15,15 +15,12 @@ my $node = get_new_node('main'); # Initialize node without replication settings -$node->init(hba_permit_replication => 0); +$node->init; $node->start; my $pgdata = $node->data_dir; $node->command_fails(['pg_basebackup'], 'pg_basebackup needs target directory specified'); -$node->command_fails( - [ 'pg_basebackup', '-D', "$tempdir/backup" ], - 'pg_basebackup fails because of hba'); # Some Windows ANSI code pages may reject this filename, in which case we # quietly proceed without this bit of test coverage. diff --git a/src/test/perl/PostgresNode.pm b/src/test/perl/PostgresNode.pm index e5cb348f4c..7e530676b2 100644 --- a/src/test/perl/PostgresNode.pm +++ b/src/test/perl/PostgresNode.pm @@ -349,11 +349,7 @@ sub set_replication_conf open my $hba, ">>$pgdata/pg_hba.conf"; print $hba "\n# Allow replication (set up by PostgresNode.pm)\n"; - if (!$TestLib::windows_os) - { - print $hba "local replication all trust\n"; - } - else + if ($TestLib::windows_os) { print $hba "host replication all $test_localhost/32 sspi include_realm=1 map=regress\n"; @@ -373,9 +369,6 @@ a directory that's only accessible to the current user to ensure that. On Windows, we use SSPI authentication to ensure the same (by pg_regress --config-auth). -pg_hba.conf is configured to allow replication connections. Pass the keyword -parameter hba_permit_replication => 0 to disable this. - WAL archiving can be enabled on this node by passing the keyword parameter has_archiving => 1. This is disabled by default. @@ -396,8 +389,6 @@ sub init my $pgdata = $self->data_dir; my $host = $self->host; - $params{hba_permit_replication} = 1 - unless defined $params{hba_permit_replication}; $params{allows_streaming} = 0 unless defined $params{allows_streaming}; $params{has_archiving} = 0 unless defined $params{has_archiving}; @@ -451,7 +442,7 @@ sub init } close $conf; - $self->set_replication_conf if $params{hba_permit_replication}; + $self->set_replication_conf if $params{allows_streaming}; $self->enable_archiving if $params{has_archiving}; } @@ -591,9 +582,6 @@ Does not start the node after initializing it. A recovery.conf is not created. -pg_hba.conf is configured to allow replication connections. Pass the keyword -parameter hba_permit_replication => 0 to disable this. - Streaming replication can be enabled on this node by passing the keyword parameter has_streaming => 1. This is disabled by default. @@ -615,8 +603,6 @@ sub init_from_backup my $root_name = $root_node->name; $params{has_streaming} = 0 unless defined $params{has_streaming}; - $params{hba_permit_replication} = 1 - unless defined $params{hba_permit_replication}; $params{has_restoring} = 0 unless defined $params{has_restoring}; print @@ -638,7 +624,6 @@ sub init_from_backup qq( port = $port )); - $self->set_replication_conf if $params{hba_permit_replication}; $self->enable_streaming($root_node) if $params{has_streaming}; $self->enable_restoring($root_node) if $params{has_restoring}; } -- 2.12.0 --------------C2D5D3D6DC2196AFF8605F7D Content-Type: text/plain Content-Disposition: inline Content-Transfer-Encoding: 8bit MIME-Version: 1.0 -- Sent via pgsql-hackers mailing list ([email protected]) To make changes to your subscription: http://www.postgresql.org/mailpref/pgsql-hackers --------------C2D5D3D6DC2196AFF8605F7D-- ^ permalink raw reply [nested|flat] 37+ messages in thread
* [PATCH v2] Enable replication connections by default in pg_hba.conf @ 2017-03-08 02:07 Peter Eisentraut <[email protected]> 0 siblings, 0 replies; 37+ messages in thread From: Peter Eisentraut @ 2017-03-08 02:07 UTC (permalink / raw) --- doc/src/sgml/ref/initdb.sgml | 16 +++++++++++----- src/backend/libpq/pg_hba.conf.sample | 6 +++--- src/bin/initdb/initdb.c | 5 ----- src/bin/pg_basebackup/t/010_pg_basebackup.pl | 7 ++----- src/test/perl/PostgresNode.pm | 19 ++----------------- 5 files changed, 18 insertions(+), 35 deletions(-) diff --git a/doc/src/sgml/ref/initdb.sgml b/doc/src/sgml/ref/initdb.sgml index 1aaa4901af..d9faa96021 100644 --- a/doc/src/sgml/ref/initdb.sgml +++ b/doc/src/sgml/ref/initdb.sgml @@ -120,11 +120,17 @@ <title>Options</title> <term><option>--auth=<replaceable class="parameter">authmethod</replaceable></option></term> <listitem> <para> - This option specifies the authentication method for local users used - in <filename>pg_hba.conf</> (<literal>host</literal> - and <literal>local</literal> lines). Do not use <literal>trust</> - unless you trust all local users on your system. <literal>trust</> is - the default for ease of installation. + This option specifies the default authentication method for local + users used in <filename>pg_hba.conf</> (<literal>host</literal> + and <literal>local</literal> lines). <command>initdb</command> will + prepopulate <filename>pg_hba.conf</filename> entries using the + specified authentication method for non-replication as well as + replication connections. + </para> + + <para> + Do not use <literal>trust</> unless you trust all local users on your + system. <literal>trust</> is the default for ease of installation. </para> </listitem> </varlistentry> diff --git a/src/backend/libpq/pg_hba.conf.sample b/src/backend/libpq/pg_hba.conf.sample index e0fbfcb026..507278b2cc 100644 --- a/src/backend/libpq/pg_hba.conf.sample +++ b/src/backend/libpq/pg_hba.conf.sample @@ -84,6 +84,6 @@ host all all 127.0.0.1/32 @authmethodhost@ host all all ::1/128 @authmethodhost@ # Allow replication connections from localhost, by a user with the # replication privilege. -@remove-line-for-nolocal@#local replication @default_username@ @authmethodlocal@ -#host replication @default_username@ 127.0.0.1/32 @authmethodhost@ -#host replication @default_username@ ::1/128 @authmethodhost@ +@remove-line-for-nolocal@local replication all @authmethodlocal@ +host replication all 127.0.0.1/32 @authmethodhost@ +host replication all ::1/128 @authmethodhost@ diff --git a/src/bin/initdb/initdb.c b/src/bin/initdb/initdb.c index 1ed0d20504..ea7b47e26d 100644 --- a/src/bin/initdb/initdb.c +++ b/src/bin/initdb/initdb.c @@ -1227,11 +1227,6 @@ setup_config(void) "@authcomment@", (strcmp(authmethodlocal, "trust") == 0 || strcmp(authmethodhost, "trust") == 0) ? AUTHTRUST_WARNING : ""); - /* Replace username for replication */ - conflines = replace_token(conflines, - "@default_username@", - username); - snprintf(path, sizeof(path), "%s/pg_hba.conf", pg_data); writefile(path, conflines); diff --git a/src/bin/pg_basebackup/t/010_pg_basebackup.pl b/src/bin/pg_basebackup/t/010_pg_basebackup.pl index aafb138fd5..14bd813896 100644 --- a/src/bin/pg_basebackup/t/010_pg_basebackup.pl +++ b/src/bin/pg_basebackup/t/010_pg_basebackup.pl @@ -4,7 +4,7 @@ use Config; use PostgresNode; use TestLib; -use Test::More tests => 73; +use Test::More tests => 72; program_help_ok('pg_basebackup'); program_version_ok('pg_basebackup'); @@ -15,15 +15,12 @@ my $node = get_new_node('main'); # Initialize node without replication settings -$node->init(hba_permit_replication => 0); +$node->init; $node->start; my $pgdata = $node->data_dir; $node->command_fails(['pg_basebackup'], 'pg_basebackup needs target directory specified'); -$node->command_fails( - [ 'pg_basebackup', '-D', "$tempdir/backup" ], - 'pg_basebackup fails because of hba'); # Some Windows ANSI code pages may reject this filename, in which case we # quietly proceed without this bit of test coverage. diff --git a/src/test/perl/PostgresNode.pm b/src/test/perl/PostgresNode.pm index e5cb348f4c..7e530676b2 100644 --- a/src/test/perl/PostgresNode.pm +++ b/src/test/perl/PostgresNode.pm @@ -349,11 +349,7 @@ sub set_replication_conf open my $hba, ">>$pgdata/pg_hba.conf"; print $hba "\n# Allow replication (set up by PostgresNode.pm)\n"; - if (!$TestLib::windows_os) - { - print $hba "local replication all trust\n"; - } - else + if ($TestLib::windows_os) { print $hba "host replication all $test_localhost/32 sspi include_realm=1 map=regress\n"; @@ -373,9 +369,6 @@ a directory that's only accessible to the current user to ensure that. On Windows, we use SSPI authentication to ensure the same (by pg_regress --config-auth). -pg_hba.conf is configured to allow replication connections. Pass the keyword -parameter hba_permit_replication => 0 to disable this. - WAL archiving can be enabled on this node by passing the keyword parameter has_archiving => 1. This is disabled by default. @@ -396,8 +389,6 @@ sub init my $pgdata = $self->data_dir; my $host = $self->host; - $params{hba_permit_replication} = 1 - unless defined $params{hba_permit_replication}; $params{allows_streaming} = 0 unless defined $params{allows_streaming}; $params{has_archiving} = 0 unless defined $params{has_archiving}; @@ -451,7 +442,7 @@ sub init } close $conf; - $self->set_replication_conf if $params{hba_permit_replication}; + $self->set_replication_conf if $params{allows_streaming}; $self->enable_archiving if $params{has_archiving}; } @@ -591,9 +582,6 @@ Does not start the node after initializing it. A recovery.conf is not created. -pg_hba.conf is configured to allow replication connections. Pass the keyword -parameter hba_permit_replication => 0 to disable this. - Streaming replication can be enabled on this node by passing the keyword parameter has_streaming => 1. This is disabled by default. @@ -615,8 +603,6 @@ sub init_from_backup my $root_name = $root_node->name; $params{has_streaming} = 0 unless defined $params{has_streaming}; - $params{hba_permit_replication} = 1 - unless defined $params{hba_permit_replication}; $params{has_restoring} = 0 unless defined $params{has_restoring}; print @@ -638,7 +624,6 @@ sub init_from_backup qq( port = $port )); - $self->set_replication_conf if $params{hba_permit_replication}; $self->enable_streaming($root_node) if $params{has_streaming}; $self->enable_restoring($root_node) if $params{has_restoring}; } -- 2.12.0 --------------C2D5D3D6DC2196AFF8605F7D Content-Type: text/plain Content-Disposition: inline Content-Transfer-Encoding: 8bit MIME-Version: 1.0 -- Sent via pgsql-hackers mailing list ([email protected]) To make changes to your subscription: http://www.postgresql.org/mailpref/pgsql-hackers --------------C2D5D3D6DC2196AFF8605F7D-- ^ permalink raw reply [nested|flat] 37+ messages in thread
* [PATCH v2] Enable replication connections by default in pg_hba.conf @ 2017-03-08 02:07 Peter Eisentraut <[email protected]> 0 siblings, 0 replies; 37+ messages in thread From: Peter Eisentraut @ 2017-03-08 02:07 UTC (permalink / raw) --- doc/src/sgml/ref/initdb.sgml | 16 +++++++++++----- src/backend/libpq/pg_hba.conf.sample | 6 +++--- src/bin/initdb/initdb.c | 5 ----- src/bin/pg_basebackup/t/010_pg_basebackup.pl | 7 ++----- src/test/perl/PostgresNode.pm | 19 ++----------------- 5 files changed, 18 insertions(+), 35 deletions(-) diff --git a/doc/src/sgml/ref/initdb.sgml b/doc/src/sgml/ref/initdb.sgml index 1aaa4901af..d9faa96021 100644 --- a/doc/src/sgml/ref/initdb.sgml +++ b/doc/src/sgml/ref/initdb.sgml @@ -120,11 +120,17 @@ <title>Options</title> <term><option>--auth=<replaceable class="parameter">authmethod</replaceable></option></term> <listitem> <para> - This option specifies the authentication method for local users used - in <filename>pg_hba.conf</> (<literal>host</literal> - and <literal>local</literal> lines). Do not use <literal>trust</> - unless you trust all local users on your system. <literal>trust</> is - the default for ease of installation. + This option specifies the default authentication method for local + users used in <filename>pg_hba.conf</> (<literal>host</literal> + and <literal>local</literal> lines). <command>initdb</command> will + prepopulate <filename>pg_hba.conf</filename> entries using the + specified authentication method for non-replication as well as + replication connections. + </para> + + <para> + Do not use <literal>trust</> unless you trust all local users on your + system. <literal>trust</> is the default for ease of installation. </para> </listitem> </varlistentry> diff --git a/src/backend/libpq/pg_hba.conf.sample b/src/backend/libpq/pg_hba.conf.sample index e0fbfcb026..507278b2cc 100644 --- a/src/backend/libpq/pg_hba.conf.sample +++ b/src/backend/libpq/pg_hba.conf.sample @@ -84,6 +84,6 @@ host all all 127.0.0.1/32 @authmethodhost@ host all all ::1/128 @authmethodhost@ # Allow replication connections from localhost, by a user with the # replication privilege. -@remove-line-for-nolocal@#local replication @default_username@ @authmethodlocal@ -#host replication @default_username@ 127.0.0.1/32 @authmethodhost@ -#host replication @default_username@ ::1/128 @authmethodhost@ +@remove-line-for-nolocal@local replication all @authmethodlocal@ +host replication all 127.0.0.1/32 @authmethodhost@ +host replication all ::1/128 @authmethodhost@ diff --git a/src/bin/initdb/initdb.c b/src/bin/initdb/initdb.c index 1ed0d20504..ea7b47e26d 100644 --- a/src/bin/initdb/initdb.c +++ b/src/bin/initdb/initdb.c @@ -1227,11 +1227,6 @@ setup_config(void) "@authcomment@", (strcmp(authmethodlocal, "trust") == 0 || strcmp(authmethodhost, "trust") == 0) ? AUTHTRUST_WARNING : ""); - /* Replace username for replication */ - conflines = replace_token(conflines, - "@default_username@", - username); - snprintf(path, sizeof(path), "%s/pg_hba.conf", pg_data); writefile(path, conflines); diff --git a/src/bin/pg_basebackup/t/010_pg_basebackup.pl b/src/bin/pg_basebackup/t/010_pg_basebackup.pl index aafb138fd5..14bd813896 100644 --- a/src/bin/pg_basebackup/t/010_pg_basebackup.pl +++ b/src/bin/pg_basebackup/t/010_pg_basebackup.pl @@ -4,7 +4,7 @@ use Config; use PostgresNode; use TestLib; -use Test::More tests => 73; +use Test::More tests => 72; program_help_ok('pg_basebackup'); program_version_ok('pg_basebackup'); @@ -15,15 +15,12 @@ my $node = get_new_node('main'); # Initialize node without replication settings -$node->init(hba_permit_replication => 0); +$node->init; $node->start; my $pgdata = $node->data_dir; $node->command_fails(['pg_basebackup'], 'pg_basebackup needs target directory specified'); -$node->command_fails( - [ 'pg_basebackup', '-D', "$tempdir/backup" ], - 'pg_basebackup fails because of hba'); # Some Windows ANSI code pages may reject this filename, in which case we # quietly proceed without this bit of test coverage. diff --git a/src/test/perl/PostgresNode.pm b/src/test/perl/PostgresNode.pm index e5cb348f4c..7e530676b2 100644 --- a/src/test/perl/PostgresNode.pm +++ b/src/test/perl/PostgresNode.pm @@ -349,11 +349,7 @@ sub set_replication_conf open my $hba, ">>$pgdata/pg_hba.conf"; print $hba "\n# Allow replication (set up by PostgresNode.pm)\n"; - if (!$TestLib::windows_os) - { - print $hba "local replication all trust\n"; - } - else + if ($TestLib::windows_os) { print $hba "host replication all $test_localhost/32 sspi include_realm=1 map=regress\n"; @@ -373,9 +369,6 @@ a directory that's only accessible to the current user to ensure that. On Windows, we use SSPI authentication to ensure the same (by pg_regress --config-auth). -pg_hba.conf is configured to allow replication connections. Pass the keyword -parameter hba_permit_replication => 0 to disable this. - WAL archiving can be enabled on this node by passing the keyword parameter has_archiving => 1. This is disabled by default. @@ -396,8 +389,6 @@ sub init my $pgdata = $self->data_dir; my $host = $self->host; - $params{hba_permit_replication} = 1 - unless defined $params{hba_permit_replication}; $params{allows_streaming} = 0 unless defined $params{allows_streaming}; $params{has_archiving} = 0 unless defined $params{has_archiving}; @@ -451,7 +442,7 @@ sub init } close $conf; - $self->set_replication_conf if $params{hba_permit_replication}; + $self->set_replication_conf if $params{allows_streaming}; $self->enable_archiving if $params{has_archiving}; } @@ -591,9 +582,6 @@ Does not start the node after initializing it. A recovery.conf is not created. -pg_hba.conf is configured to allow replication connections. Pass the keyword -parameter hba_permit_replication => 0 to disable this. - Streaming replication can be enabled on this node by passing the keyword parameter has_streaming => 1. This is disabled by default. @@ -615,8 +603,6 @@ sub init_from_backup my $root_name = $root_node->name; $params{has_streaming} = 0 unless defined $params{has_streaming}; - $params{hba_permit_replication} = 1 - unless defined $params{hba_permit_replication}; $params{has_restoring} = 0 unless defined $params{has_restoring}; print @@ -638,7 +624,6 @@ sub init_from_backup qq( port = $port )); - $self->set_replication_conf if $params{hba_permit_replication}; $self->enable_streaming($root_node) if $params{has_streaming}; $self->enable_restoring($root_node) if $params{has_restoring}; } -- 2.12.0 --------------C2D5D3D6DC2196AFF8605F7D Content-Type: text/plain Content-Disposition: inline Content-Transfer-Encoding: 8bit MIME-Version: 1.0 -- Sent via pgsql-hackers mailing list ([email protected]) To make changes to your subscription: http://www.postgresql.org/mailpref/pgsql-hackers --------------C2D5D3D6DC2196AFF8605F7D-- ^ permalink raw reply [nested|flat] 37+ messages in thread
* [PATCH v2] Enable replication connections by default in pg_hba.conf @ 2017-03-08 02:07 Peter Eisentraut <[email protected]> 0 siblings, 0 replies; 37+ messages in thread From: Peter Eisentraut @ 2017-03-08 02:07 UTC (permalink / raw) --- doc/src/sgml/ref/initdb.sgml | 16 +++++++++++----- src/backend/libpq/pg_hba.conf.sample | 6 +++--- src/bin/initdb/initdb.c | 5 ----- src/bin/pg_basebackup/t/010_pg_basebackup.pl | 7 ++----- src/test/perl/PostgresNode.pm | 19 ++----------------- 5 files changed, 18 insertions(+), 35 deletions(-) diff --git a/doc/src/sgml/ref/initdb.sgml b/doc/src/sgml/ref/initdb.sgml index 1aaa4901af..d9faa96021 100644 --- a/doc/src/sgml/ref/initdb.sgml +++ b/doc/src/sgml/ref/initdb.sgml @@ -120,11 +120,17 @@ <title>Options</title> <term><option>--auth=<replaceable class="parameter">authmethod</replaceable></option></term> <listitem> <para> - This option specifies the authentication method for local users used - in <filename>pg_hba.conf</> (<literal>host</literal> - and <literal>local</literal> lines). Do not use <literal>trust</> - unless you trust all local users on your system. <literal>trust</> is - the default for ease of installation. + This option specifies the default authentication method for local + users used in <filename>pg_hba.conf</> (<literal>host</literal> + and <literal>local</literal> lines). <command>initdb</command> will + prepopulate <filename>pg_hba.conf</filename> entries using the + specified authentication method for non-replication as well as + replication connections. + </para> + + <para> + Do not use <literal>trust</> unless you trust all local users on your + system. <literal>trust</> is the default for ease of installation. </para> </listitem> </varlistentry> diff --git a/src/backend/libpq/pg_hba.conf.sample b/src/backend/libpq/pg_hba.conf.sample index e0fbfcb026..507278b2cc 100644 --- a/src/backend/libpq/pg_hba.conf.sample +++ b/src/backend/libpq/pg_hba.conf.sample @@ -84,6 +84,6 @@ host all all 127.0.0.1/32 @authmethodhost@ host all all ::1/128 @authmethodhost@ # Allow replication connections from localhost, by a user with the # replication privilege. -@remove-line-for-nolocal@#local replication @default_username@ @authmethodlocal@ -#host replication @default_username@ 127.0.0.1/32 @authmethodhost@ -#host replication @default_username@ ::1/128 @authmethodhost@ +@remove-line-for-nolocal@local replication all @authmethodlocal@ +host replication all 127.0.0.1/32 @authmethodhost@ +host replication all ::1/128 @authmethodhost@ diff --git a/src/bin/initdb/initdb.c b/src/bin/initdb/initdb.c index 1ed0d20504..ea7b47e26d 100644 --- a/src/bin/initdb/initdb.c +++ b/src/bin/initdb/initdb.c @@ -1227,11 +1227,6 @@ setup_config(void) "@authcomment@", (strcmp(authmethodlocal, "trust") == 0 || strcmp(authmethodhost, "trust") == 0) ? AUTHTRUST_WARNING : ""); - /* Replace username for replication */ - conflines = replace_token(conflines, - "@default_username@", - username); - snprintf(path, sizeof(path), "%s/pg_hba.conf", pg_data); writefile(path, conflines); diff --git a/src/bin/pg_basebackup/t/010_pg_basebackup.pl b/src/bin/pg_basebackup/t/010_pg_basebackup.pl index aafb138fd5..14bd813896 100644 --- a/src/bin/pg_basebackup/t/010_pg_basebackup.pl +++ b/src/bin/pg_basebackup/t/010_pg_basebackup.pl @@ -4,7 +4,7 @@ use Config; use PostgresNode; use TestLib; -use Test::More tests => 73; +use Test::More tests => 72; program_help_ok('pg_basebackup'); program_version_ok('pg_basebackup'); @@ -15,15 +15,12 @@ my $node = get_new_node('main'); # Initialize node without replication settings -$node->init(hba_permit_replication => 0); +$node->init; $node->start; my $pgdata = $node->data_dir; $node->command_fails(['pg_basebackup'], 'pg_basebackup needs target directory specified'); -$node->command_fails( - [ 'pg_basebackup', '-D', "$tempdir/backup" ], - 'pg_basebackup fails because of hba'); # Some Windows ANSI code pages may reject this filename, in which case we # quietly proceed without this bit of test coverage. diff --git a/src/test/perl/PostgresNode.pm b/src/test/perl/PostgresNode.pm index e5cb348f4c..7e530676b2 100644 --- a/src/test/perl/PostgresNode.pm +++ b/src/test/perl/PostgresNode.pm @@ -349,11 +349,7 @@ sub set_replication_conf open my $hba, ">>$pgdata/pg_hba.conf"; print $hba "\n# Allow replication (set up by PostgresNode.pm)\n"; - if (!$TestLib::windows_os) - { - print $hba "local replication all trust\n"; - } - else + if ($TestLib::windows_os) { print $hba "host replication all $test_localhost/32 sspi include_realm=1 map=regress\n"; @@ -373,9 +369,6 @@ a directory that's only accessible to the current user to ensure that. On Windows, we use SSPI authentication to ensure the same (by pg_regress --config-auth). -pg_hba.conf is configured to allow replication connections. Pass the keyword -parameter hba_permit_replication => 0 to disable this. - WAL archiving can be enabled on this node by passing the keyword parameter has_archiving => 1. This is disabled by default. @@ -396,8 +389,6 @@ sub init my $pgdata = $self->data_dir; my $host = $self->host; - $params{hba_permit_replication} = 1 - unless defined $params{hba_permit_replication}; $params{allows_streaming} = 0 unless defined $params{allows_streaming}; $params{has_archiving} = 0 unless defined $params{has_archiving}; @@ -451,7 +442,7 @@ sub init } close $conf; - $self->set_replication_conf if $params{hba_permit_replication}; + $self->set_replication_conf if $params{allows_streaming}; $self->enable_archiving if $params{has_archiving}; } @@ -591,9 +582,6 @@ Does not start the node after initializing it. A recovery.conf is not created. -pg_hba.conf is configured to allow replication connections. Pass the keyword -parameter hba_permit_replication => 0 to disable this. - Streaming replication can be enabled on this node by passing the keyword parameter has_streaming => 1. This is disabled by default. @@ -615,8 +603,6 @@ sub init_from_backup my $root_name = $root_node->name; $params{has_streaming} = 0 unless defined $params{has_streaming}; - $params{hba_permit_replication} = 1 - unless defined $params{hba_permit_replication}; $params{has_restoring} = 0 unless defined $params{has_restoring}; print @@ -638,7 +624,6 @@ sub init_from_backup qq( port = $port )); - $self->set_replication_conf if $params{hba_permit_replication}; $self->enable_streaming($root_node) if $params{has_streaming}; $self->enable_restoring($root_node) if $params{has_restoring}; } -- 2.12.0 --------------C2D5D3D6DC2196AFF8605F7D Content-Type: text/plain Content-Disposition: inline Content-Transfer-Encoding: 8bit MIME-Version: 1.0 -- Sent via pgsql-hackers mailing list ([email protected]) To make changes to your subscription: http://www.postgresql.org/mailpref/pgsql-hackers --------------C2D5D3D6DC2196AFF8605F7D-- ^ permalink raw reply [nested|flat] 37+ messages in thread
* [PATCH v2] Enable replication connections by default in pg_hba.conf @ 2017-03-08 02:07 Peter Eisentraut <[email protected]> 0 siblings, 0 replies; 37+ messages in thread From: Peter Eisentraut @ 2017-03-08 02:07 UTC (permalink / raw) --- doc/src/sgml/ref/initdb.sgml | 16 +++++++++++----- src/backend/libpq/pg_hba.conf.sample | 6 +++--- src/bin/initdb/initdb.c | 5 ----- src/bin/pg_basebackup/t/010_pg_basebackup.pl | 7 ++----- src/test/perl/PostgresNode.pm | 19 ++----------------- 5 files changed, 18 insertions(+), 35 deletions(-) diff --git a/doc/src/sgml/ref/initdb.sgml b/doc/src/sgml/ref/initdb.sgml index 1aaa4901af..d9faa96021 100644 --- a/doc/src/sgml/ref/initdb.sgml +++ b/doc/src/sgml/ref/initdb.sgml @@ -120,11 +120,17 @@ <title>Options</title> <term><option>--auth=<replaceable class="parameter">authmethod</replaceable></option></term> <listitem> <para> - This option specifies the authentication method for local users used - in <filename>pg_hba.conf</> (<literal>host</literal> - and <literal>local</literal> lines). Do not use <literal>trust</> - unless you trust all local users on your system. <literal>trust</> is - the default for ease of installation. + This option specifies the default authentication method for local + users used in <filename>pg_hba.conf</> (<literal>host</literal> + and <literal>local</literal> lines). <command>initdb</command> will + prepopulate <filename>pg_hba.conf</filename> entries using the + specified authentication method for non-replication as well as + replication connections. + </para> + + <para> + Do not use <literal>trust</> unless you trust all local users on your + system. <literal>trust</> is the default for ease of installation. </para> </listitem> </varlistentry> diff --git a/src/backend/libpq/pg_hba.conf.sample b/src/backend/libpq/pg_hba.conf.sample index e0fbfcb026..507278b2cc 100644 --- a/src/backend/libpq/pg_hba.conf.sample +++ b/src/backend/libpq/pg_hba.conf.sample @@ -84,6 +84,6 @@ host all all 127.0.0.1/32 @authmethodhost@ host all all ::1/128 @authmethodhost@ # Allow replication connections from localhost, by a user with the # replication privilege. -@remove-line-for-nolocal@#local replication @default_username@ @authmethodlocal@ -#host replication @default_username@ 127.0.0.1/32 @authmethodhost@ -#host replication @default_username@ ::1/128 @authmethodhost@ +@remove-line-for-nolocal@local replication all @authmethodlocal@ +host replication all 127.0.0.1/32 @authmethodhost@ +host replication all ::1/128 @authmethodhost@ diff --git a/src/bin/initdb/initdb.c b/src/bin/initdb/initdb.c index 1ed0d20504..ea7b47e26d 100644 --- a/src/bin/initdb/initdb.c +++ b/src/bin/initdb/initdb.c @@ -1227,11 +1227,6 @@ setup_config(void) "@authcomment@", (strcmp(authmethodlocal, "trust") == 0 || strcmp(authmethodhost, "trust") == 0) ? AUTHTRUST_WARNING : ""); - /* Replace username for replication */ - conflines = replace_token(conflines, - "@default_username@", - username); - snprintf(path, sizeof(path), "%s/pg_hba.conf", pg_data); writefile(path, conflines); diff --git a/src/bin/pg_basebackup/t/010_pg_basebackup.pl b/src/bin/pg_basebackup/t/010_pg_basebackup.pl index aafb138fd5..14bd813896 100644 --- a/src/bin/pg_basebackup/t/010_pg_basebackup.pl +++ b/src/bin/pg_basebackup/t/010_pg_basebackup.pl @@ -4,7 +4,7 @@ use Config; use PostgresNode; use TestLib; -use Test::More tests => 73; +use Test::More tests => 72; program_help_ok('pg_basebackup'); program_version_ok('pg_basebackup'); @@ -15,15 +15,12 @@ my $node = get_new_node('main'); # Initialize node without replication settings -$node->init(hba_permit_replication => 0); +$node->init; $node->start; my $pgdata = $node->data_dir; $node->command_fails(['pg_basebackup'], 'pg_basebackup needs target directory specified'); -$node->command_fails( - [ 'pg_basebackup', '-D', "$tempdir/backup" ], - 'pg_basebackup fails because of hba'); # Some Windows ANSI code pages may reject this filename, in which case we # quietly proceed without this bit of test coverage. diff --git a/src/test/perl/PostgresNode.pm b/src/test/perl/PostgresNode.pm index e5cb348f4c..7e530676b2 100644 --- a/src/test/perl/PostgresNode.pm +++ b/src/test/perl/PostgresNode.pm @@ -349,11 +349,7 @@ sub set_replication_conf open my $hba, ">>$pgdata/pg_hba.conf"; print $hba "\n# Allow replication (set up by PostgresNode.pm)\n"; - if (!$TestLib::windows_os) - { - print $hba "local replication all trust\n"; - } - else + if ($TestLib::windows_os) { print $hba "host replication all $test_localhost/32 sspi include_realm=1 map=regress\n"; @@ -373,9 +369,6 @@ a directory that's only accessible to the current user to ensure that. On Windows, we use SSPI authentication to ensure the same (by pg_regress --config-auth). -pg_hba.conf is configured to allow replication connections. Pass the keyword -parameter hba_permit_replication => 0 to disable this. - WAL archiving can be enabled on this node by passing the keyword parameter has_archiving => 1. This is disabled by default. @@ -396,8 +389,6 @@ sub init my $pgdata = $self->data_dir; my $host = $self->host; - $params{hba_permit_replication} = 1 - unless defined $params{hba_permit_replication}; $params{allows_streaming} = 0 unless defined $params{allows_streaming}; $params{has_archiving} = 0 unless defined $params{has_archiving}; @@ -451,7 +442,7 @@ sub init } close $conf; - $self->set_replication_conf if $params{hba_permit_replication}; + $self->set_replication_conf if $params{allows_streaming}; $self->enable_archiving if $params{has_archiving}; } @@ -591,9 +582,6 @@ Does not start the node after initializing it. A recovery.conf is not created. -pg_hba.conf is configured to allow replication connections. Pass the keyword -parameter hba_permit_replication => 0 to disable this. - Streaming replication can be enabled on this node by passing the keyword parameter has_streaming => 1. This is disabled by default. @@ -615,8 +603,6 @@ sub init_from_backup my $root_name = $root_node->name; $params{has_streaming} = 0 unless defined $params{has_streaming}; - $params{hba_permit_replication} = 1 - unless defined $params{hba_permit_replication}; $params{has_restoring} = 0 unless defined $params{has_restoring}; print @@ -638,7 +624,6 @@ sub init_from_backup qq( port = $port )); - $self->set_replication_conf if $params{hba_permit_replication}; $self->enable_streaming($root_node) if $params{has_streaming}; $self->enable_restoring($root_node) if $params{has_restoring}; } -- 2.12.0 --------------C2D5D3D6DC2196AFF8605F7D Content-Type: text/plain Content-Disposition: inline Content-Transfer-Encoding: 8bit MIME-Version: 1.0 -- Sent via pgsql-hackers mailing list ([email protected]) To make changes to your subscription: http://www.postgresql.org/mailpref/pgsql-hackers --------------C2D5D3D6DC2196AFF8605F7D-- ^ permalink raw reply [nested|flat] 37+ messages in thread
* [PATCH v2] Enable replication connections by default in pg_hba.conf @ 2017-03-08 02:07 Peter Eisentraut <[email protected]> 0 siblings, 0 replies; 37+ messages in thread From: Peter Eisentraut @ 2017-03-08 02:07 UTC (permalink / raw) --- doc/src/sgml/ref/initdb.sgml | 16 +++++++++++----- src/backend/libpq/pg_hba.conf.sample | 6 +++--- src/bin/initdb/initdb.c | 5 ----- src/bin/pg_basebackup/t/010_pg_basebackup.pl | 7 ++----- src/test/perl/PostgresNode.pm | 19 ++----------------- 5 files changed, 18 insertions(+), 35 deletions(-) diff --git a/doc/src/sgml/ref/initdb.sgml b/doc/src/sgml/ref/initdb.sgml index 1aaa4901af..d9faa96021 100644 --- a/doc/src/sgml/ref/initdb.sgml +++ b/doc/src/sgml/ref/initdb.sgml @@ -120,11 +120,17 @@ <title>Options</title> <term><option>--auth=<replaceable class="parameter">authmethod</replaceable></option></term> <listitem> <para> - This option specifies the authentication method for local users used - in <filename>pg_hba.conf</> (<literal>host</literal> - and <literal>local</literal> lines). Do not use <literal>trust</> - unless you trust all local users on your system. <literal>trust</> is - the default for ease of installation. + This option specifies the default authentication method for local + users used in <filename>pg_hba.conf</> (<literal>host</literal> + and <literal>local</literal> lines). <command>initdb</command> will + prepopulate <filename>pg_hba.conf</filename> entries using the + specified authentication method for non-replication as well as + replication connections. + </para> + + <para> + Do not use <literal>trust</> unless you trust all local users on your + system. <literal>trust</> is the default for ease of installation. </para> </listitem> </varlistentry> diff --git a/src/backend/libpq/pg_hba.conf.sample b/src/backend/libpq/pg_hba.conf.sample index e0fbfcb026..507278b2cc 100644 --- a/src/backend/libpq/pg_hba.conf.sample +++ b/src/backend/libpq/pg_hba.conf.sample @@ -84,6 +84,6 @@ host all all 127.0.0.1/32 @authmethodhost@ host all all ::1/128 @authmethodhost@ # Allow replication connections from localhost, by a user with the # replication privilege. -@remove-line-for-nolocal@#local replication @default_username@ @authmethodlocal@ -#host replication @default_username@ 127.0.0.1/32 @authmethodhost@ -#host replication @default_username@ ::1/128 @authmethodhost@ +@remove-line-for-nolocal@local replication all @authmethodlocal@ +host replication all 127.0.0.1/32 @authmethodhost@ +host replication all ::1/128 @authmethodhost@ diff --git a/src/bin/initdb/initdb.c b/src/bin/initdb/initdb.c index 1ed0d20504..ea7b47e26d 100644 --- a/src/bin/initdb/initdb.c +++ b/src/bin/initdb/initdb.c @@ -1227,11 +1227,6 @@ setup_config(void) "@authcomment@", (strcmp(authmethodlocal, "trust") == 0 || strcmp(authmethodhost, "trust") == 0) ? AUTHTRUST_WARNING : ""); - /* Replace username for replication */ - conflines = replace_token(conflines, - "@default_username@", - username); - snprintf(path, sizeof(path), "%s/pg_hba.conf", pg_data); writefile(path, conflines); diff --git a/src/bin/pg_basebackup/t/010_pg_basebackup.pl b/src/bin/pg_basebackup/t/010_pg_basebackup.pl index aafb138fd5..14bd813896 100644 --- a/src/bin/pg_basebackup/t/010_pg_basebackup.pl +++ b/src/bin/pg_basebackup/t/010_pg_basebackup.pl @@ -4,7 +4,7 @@ use Config; use PostgresNode; use TestLib; -use Test::More tests => 73; +use Test::More tests => 72; program_help_ok('pg_basebackup'); program_version_ok('pg_basebackup'); @@ -15,15 +15,12 @@ my $node = get_new_node('main'); # Initialize node without replication settings -$node->init(hba_permit_replication => 0); +$node->init; $node->start; my $pgdata = $node->data_dir; $node->command_fails(['pg_basebackup'], 'pg_basebackup needs target directory specified'); -$node->command_fails( - [ 'pg_basebackup', '-D', "$tempdir/backup" ], - 'pg_basebackup fails because of hba'); # Some Windows ANSI code pages may reject this filename, in which case we # quietly proceed without this bit of test coverage. diff --git a/src/test/perl/PostgresNode.pm b/src/test/perl/PostgresNode.pm index e5cb348f4c..7e530676b2 100644 --- a/src/test/perl/PostgresNode.pm +++ b/src/test/perl/PostgresNode.pm @@ -349,11 +349,7 @@ sub set_replication_conf open my $hba, ">>$pgdata/pg_hba.conf"; print $hba "\n# Allow replication (set up by PostgresNode.pm)\n"; - if (!$TestLib::windows_os) - { - print $hba "local replication all trust\n"; - } - else + if ($TestLib::windows_os) { print $hba "host replication all $test_localhost/32 sspi include_realm=1 map=regress\n"; @@ -373,9 +369,6 @@ a directory that's only accessible to the current user to ensure that. On Windows, we use SSPI authentication to ensure the same (by pg_regress --config-auth). -pg_hba.conf is configured to allow replication connections. Pass the keyword -parameter hba_permit_replication => 0 to disable this. - WAL archiving can be enabled on this node by passing the keyword parameter has_archiving => 1. This is disabled by default. @@ -396,8 +389,6 @@ sub init my $pgdata = $self->data_dir; my $host = $self->host; - $params{hba_permit_replication} = 1 - unless defined $params{hba_permit_replication}; $params{allows_streaming} = 0 unless defined $params{allows_streaming}; $params{has_archiving} = 0 unless defined $params{has_archiving}; @@ -451,7 +442,7 @@ sub init } close $conf; - $self->set_replication_conf if $params{hba_permit_replication}; + $self->set_replication_conf if $params{allows_streaming}; $self->enable_archiving if $params{has_archiving}; } @@ -591,9 +582,6 @@ Does not start the node after initializing it. A recovery.conf is not created. -pg_hba.conf is configured to allow replication connections. Pass the keyword -parameter hba_permit_replication => 0 to disable this. - Streaming replication can be enabled on this node by passing the keyword parameter has_streaming => 1. This is disabled by default. @@ -615,8 +603,6 @@ sub init_from_backup my $root_name = $root_node->name; $params{has_streaming} = 0 unless defined $params{has_streaming}; - $params{hba_permit_replication} = 1 - unless defined $params{hba_permit_replication}; $params{has_restoring} = 0 unless defined $params{has_restoring}; print @@ -638,7 +624,6 @@ sub init_from_backup qq( port = $port )); - $self->set_replication_conf if $params{hba_permit_replication}; $self->enable_streaming($root_node) if $params{has_streaming}; $self->enable_restoring($root_node) if $params{has_restoring}; } -- 2.12.0 --------------C2D5D3D6DC2196AFF8605F7D Content-Type: text/plain Content-Disposition: inline Content-Transfer-Encoding: 8bit MIME-Version: 1.0 -- Sent via pgsql-hackers mailing list ([email protected]) To make changes to your subscription: http://www.postgresql.org/mailpref/pgsql-hackers --------------C2D5D3D6DC2196AFF8605F7D-- ^ permalink raw reply [nested|flat] 37+ messages in thread
* [PATCH v2] Enable replication connections by default in pg_hba.conf @ 2017-03-08 02:07 Peter Eisentraut <[email protected]> 0 siblings, 0 replies; 37+ messages in thread From: Peter Eisentraut @ 2017-03-08 02:07 UTC (permalink / raw) --- doc/src/sgml/ref/initdb.sgml | 16 +++++++++++----- src/backend/libpq/pg_hba.conf.sample | 6 +++--- src/bin/initdb/initdb.c | 5 ----- src/bin/pg_basebackup/t/010_pg_basebackup.pl | 7 ++----- src/test/perl/PostgresNode.pm | 19 ++----------------- 5 files changed, 18 insertions(+), 35 deletions(-) diff --git a/doc/src/sgml/ref/initdb.sgml b/doc/src/sgml/ref/initdb.sgml index 1aaa4901af..d9faa96021 100644 --- a/doc/src/sgml/ref/initdb.sgml +++ b/doc/src/sgml/ref/initdb.sgml @@ -120,11 +120,17 @@ <title>Options</title> <term><option>--auth=<replaceable class="parameter">authmethod</replaceable></option></term> <listitem> <para> - This option specifies the authentication method for local users used - in <filename>pg_hba.conf</> (<literal>host</literal> - and <literal>local</literal> lines). Do not use <literal>trust</> - unless you trust all local users on your system. <literal>trust</> is - the default for ease of installation. + This option specifies the default authentication method for local + users used in <filename>pg_hba.conf</> (<literal>host</literal> + and <literal>local</literal> lines). <command>initdb</command> will + prepopulate <filename>pg_hba.conf</filename> entries using the + specified authentication method for non-replication as well as + replication connections. + </para> + + <para> + Do not use <literal>trust</> unless you trust all local users on your + system. <literal>trust</> is the default for ease of installation. </para> </listitem> </varlistentry> diff --git a/src/backend/libpq/pg_hba.conf.sample b/src/backend/libpq/pg_hba.conf.sample index e0fbfcb026..507278b2cc 100644 --- a/src/backend/libpq/pg_hba.conf.sample +++ b/src/backend/libpq/pg_hba.conf.sample @@ -84,6 +84,6 @@ host all all 127.0.0.1/32 @authmethodhost@ host all all ::1/128 @authmethodhost@ # Allow replication connections from localhost, by a user with the # replication privilege. -@remove-line-for-nolocal@#local replication @default_username@ @authmethodlocal@ -#host replication @default_username@ 127.0.0.1/32 @authmethodhost@ -#host replication @default_username@ ::1/128 @authmethodhost@ +@remove-line-for-nolocal@local replication all @authmethodlocal@ +host replication all 127.0.0.1/32 @authmethodhost@ +host replication all ::1/128 @authmethodhost@ diff --git a/src/bin/initdb/initdb.c b/src/bin/initdb/initdb.c index 1ed0d20504..ea7b47e26d 100644 --- a/src/bin/initdb/initdb.c +++ b/src/bin/initdb/initdb.c @@ -1227,11 +1227,6 @@ setup_config(void) "@authcomment@", (strcmp(authmethodlocal, "trust") == 0 || strcmp(authmethodhost, "trust") == 0) ? AUTHTRUST_WARNING : ""); - /* Replace username for replication */ - conflines = replace_token(conflines, - "@default_username@", - username); - snprintf(path, sizeof(path), "%s/pg_hba.conf", pg_data); writefile(path, conflines); diff --git a/src/bin/pg_basebackup/t/010_pg_basebackup.pl b/src/bin/pg_basebackup/t/010_pg_basebackup.pl index aafb138fd5..14bd813896 100644 --- a/src/bin/pg_basebackup/t/010_pg_basebackup.pl +++ b/src/bin/pg_basebackup/t/010_pg_basebackup.pl @@ -4,7 +4,7 @@ use Config; use PostgresNode; use TestLib; -use Test::More tests => 73; +use Test::More tests => 72; program_help_ok('pg_basebackup'); program_version_ok('pg_basebackup'); @@ -15,15 +15,12 @@ my $node = get_new_node('main'); # Initialize node without replication settings -$node->init(hba_permit_replication => 0); +$node->init; $node->start; my $pgdata = $node->data_dir; $node->command_fails(['pg_basebackup'], 'pg_basebackup needs target directory specified'); -$node->command_fails( - [ 'pg_basebackup', '-D', "$tempdir/backup" ], - 'pg_basebackup fails because of hba'); # Some Windows ANSI code pages may reject this filename, in which case we # quietly proceed without this bit of test coverage. diff --git a/src/test/perl/PostgresNode.pm b/src/test/perl/PostgresNode.pm index e5cb348f4c..7e530676b2 100644 --- a/src/test/perl/PostgresNode.pm +++ b/src/test/perl/PostgresNode.pm @@ -349,11 +349,7 @@ sub set_replication_conf open my $hba, ">>$pgdata/pg_hba.conf"; print $hba "\n# Allow replication (set up by PostgresNode.pm)\n"; - if (!$TestLib::windows_os) - { - print $hba "local replication all trust\n"; - } - else + if ($TestLib::windows_os) { print $hba "host replication all $test_localhost/32 sspi include_realm=1 map=regress\n"; @@ -373,9 +369,6 @@ a directory that's only accessible to the current user to ensure that. On Windows, we use SSPI authentication to ensure the same (by pg_regress --config-auth). -pg_hba.conf is configured to allow replication connections. Pass the keyword -parameter hba_permit_replication => 0 to disable this. - WAL archiving can be enabled on this node by passing the keyword parameter has_archiving => 1. This is disabled by default. @@ -396,8 +389,6 @@ sub init my $pgdata = $self->data_dir; my $host = $self->host; - $params{hba_permit_replication} = 1 - unless defined $params{hba_permit_replication}; $params{allows_streaming} = 0 unless defined $params{allows_streaming}; $params{has_archiving} = 0 unless defined $params{has_archiving}; @@ -451,7 +442,7 @@ sub init } close $conf; - $self->set_replication_conf if $params{hba_permit_replication}; + $self->set_replication_conf if $params{allows_streaming}; $self->enable_archiving if $params{has_archiving}; } @@ -591,9 +582,6 @@ Does not start the node after initializing it. A recovery.conf is not created. -pg_hba.conf is configured to allow replication connections. Pass the keyword -parameter hba_permit_replication => 0 to disable this. - Streaming replication can be enabled on this node by passing the keyword parameter has_streaming => 1. This is disabled by default. @@ -615,8 +603,6 @@ sub init_from_backup my $root_name = $root_node->name; $params{has_streaming} = 0 unless defined $params{has_streaming}; - $params{hba_permit_replication} = 1 - unless defined $params{hba_permit_replication}; $params{has_restoring} = 0 unless defined $params{has_restoring}; print @@ -638,7 +624,6 @@ sub init_from_backup qq( port = $port )); - $self->set_replication_conf if $params{hba_permit_replication}; $self->enable_streaming($root_node) if $params{has_streaming}; $self->enable_restoring($root_node) if $params{has_restoring}; } -- 2.12.0 --------------C2D5D3D6DC2196AFF8605F7D Content-Type: text/plain Content-Disposition: inline Content-Transfer-Encoding: 8bit MIME-Version: 1.0 -- Sent via pgsql-hackers mailing list ([email protected]) To make changes to your subscription: http://www.postgresql.org/mailpref/pgsql-hackers --------------C2D5D3D6DC2196AFF8605F7D-- ^ permalink raw reply [nested|flat] 37+ messages in thread
* [PATCH v2] Enable replication connections by default in pg_hba.conf @ 2017-03-08 02:07 Peter Eisentraut <[email protected]> 0 siblings, 0 replies; 37+ messages in thread From: Peter Eisentraut @ 2017-03-08 02:07 UTC (permalink / raw) --- doc/src/sgml/ref/initdb.sgml | 16 +++++++++++----- src/backend/libpq/pg_hba.conf.sample | 6 +++--- src/bin/initdb/initdb.c | 5 ----- src/bin/pg_basebackup/t/010_pg_basebackup.pl | 7 ++----- src/test/perl/PostgresNode.pm | 19 ++----------------- 5 files changed, 18 insertions(+), 35 deletions(-) diff --git a/doc/src/sgml/ref/initdb.sgml b/doc/src/sgml/ref/initdb.sgml index 1aaa4901af..d9faa96021 100644 --- a/doc/src/sgml/ref/initdb.sgml +++ b/doc/src/sgml/ref/initdb.sgml @@ -120,11 +120,17 @@ <title>Options</title> <term><option>--auth=<replaceable class="parameter">authmethod</replaceable></option></term> <listitem> <para> - This option specifies the authentication method for local users used - in <filename>pg_hba.conf</> (<literal>host</literal> - and <literal>local</literal> lines). Do not use <literal>trust</> - unless you trust all local users on your system. <literal>trust</> is - the default for ease of installation. + This option specifies the default authentication method for local + users used in <filename>pg_hba.conf</> (<literal>host</literal> + and <literal>local</literal> lines). <command>initdb</command> will + prepopulate <filename>pg_hba.conf</filename> entries using the + specified authentication method for non-replication as well as + replication connections. + </para> + + <para> + Do not use <literal>trust</> unless you trust all local users on your + system. <literal>trust</> is the default for ease of installation. </para> </listitem> </varlistentry> diff --git a/src/backend/libpq/pg_hba.conf.sample b/src/backend/libpq/pg_hba.conf.sample index e0fbfcb026..507278b2cc 100644 --- a/src/backend/libpq/pg_hba.conf.sample +++ b/src/backend/libpq/pg_hba.conf.sample @@ -84,6 +84,6 @@ host all all 127.0.0.1/32 @authmethodhost@ host all all ::1/128 @authmethodhost@ # Allow replication connections from localhost, by a user with the # replication privilege. -@remove-line-for-nolocal@#local replication @default_username@ @authmethodlocal@ -#host replication @default_username@ 127.0.0.1/32 @authmethodhost@ -#host replication @default_username@ ::1/128 @authmethodhost@ +@remove-line-for-nolocal@local replication all @authmethodlocal@ +host replication all 127.0.0.1/32 @authmethodhost@ +host replication all ::1/128 @authmethodhost@ diff --git a/src/bin/initdb/initdb.c b/src/bin/initdb/initdb.c index 1ed0d20504..ea7b47e26d 100644 --- a/src/bin/initdb/initdb.c +++ b/src/bin/initdb/initdb.c @@ -1227,11 +1227,6 @@ setup_config(void) "@authcomment@", (strcmp(authmethodlocal, "trust") == 0 || strcmp(authmethodhost, "trust") == 0) ? AUTHTRUST_WARNING : ""); - /* Replace username for replication */ - conflines = replace_token(conflines, - "@default_username@", - username); - snprintf(path, sizeof(path), "%s/pg_hba.conf", pg_data); writefile(path, conflines); diff --git a/src/bin/pg_basebackup/t/010_pg_basebackup.pl b/src/bin/pg_basebackup/t/010_pg_basebackup.pl index aafb138fd5..14bd813896 100644 --- a/src/bin/pg_basebackup/t/010_pg_basebackup.pl +++ b/src/bin/pg_basebackup/t/010_pg_basebackup.pl @@ -4,7 +4,7 @@ use Config; use PostgresNode; use TestLib; -use Test::More tests => 73; +use Test::More tests => 72; program_help_ok('pg_basebackup'); program_version_ok('pg_basebackup'); @@ -15,15 +15,12 @@ my $node = get_new_node('main'); # Initialize node without replication settings -$node->init(hba_permit_replication => 0); +$node->init; $node->start; my $pgdata = $node->data_dir; $node->command_fails(['pg_basebackup'], 'pg_basebackup needs target directory specified'); -$node->command_fails( - [ 'pg_basebackup', '-D', "$tempdir/backup" ], - 'pg_basebackup fails because of hba'); # Some Windows ANSI code pages may reject this filename, in which case we # quietly proceed without this bit of test coverage. diff --git a/src/test/perl/PostgresNode.pm b/src/test/perl/PostgresNode.pm index e5cb348f4c..7e530676b2 100644 --- a/src/test/perl/PostgresNode.pm +++ b/src/test/perl/PostgresNode.pm @@ -349,11 +349,7 @@ sub set_replication_conf open my $hba, ">>$pgdata/pg_hba.conf"; print $hba "\n# Allow replication (set up by PostgresNode.pm)\n"; - if (!$TestLib::windows_os) - { - print $hba "local replication all trust\n"; - } - else + if ($TestLib::windows_os) { print $hba "host replication all $test_localhost/32 sspi include_realm=1 map=regress\n"; @@ -373,9 +369,6 @@ a directory that's only accessible to the current user to ensure that. On Windows, we use SSPI authentication to ensure the same (by pg_regress --config-auth). -pg_hba.conf is configured to allow replication connections. Pass the keyword -parameter hba_permit_replication => 0 to disable this. - WAL archiving can be enabled on this node by passing the keyword parameter has_archiving => 1. This is disabled by default. @@ -396,8 +389,6 @@ sub init my $pgdata = $self->data_dir; my $host = $self->host; - $params{hba_permit_replication} = 1 - unless defined $params{hba_permit_replication}; $params{allows_streaming} = 0 unless defined $params{allows_streaming}; $params{has_archiving} = 0 unless defined $params{has_archiving}; @@ -451,7 +442,7 @@ sub init } close $conf; - $self->set_replication_conf if $params{hba_permit_replication}; + $self->set_replication_conf if $params{allows_streaming}; $self->enable_archiving if $params{has_archiving}; } @@ -591,9 +582,6 @@ Does not start the node after initializing it. A recovery.conf is not created. -pg_hba.conf is configured to allow replication connections. Pass the keyword -parameter hba_permit_replication => 0 to disable this. - Streaming replication can be enabled on this node by passing the keyword parameter has_streaming => 1. This is disabled by default. @@ -615,8 +603,6 @@ sub init_from_backup my $root_name = $root_node->name; $params{has_streaming} = 0 unless defined $params{has_streaming}; - $params{hba_permit_replication} = 1 - unless defined $params{hba_permit_replication}; $params{has_restoring} = 0 unless defined $params{has_restoring}; print @@ -638,7 +624,6 @@ sub init_from_backup qq( port = $port )); - $self->set_replication_conf if $params{hba_permit_replication}; $self->enable_streaming($root_node) if $params{has_streaming}; $self->enable_restoring($root_node) if $params{has_restoring}; } -- 2.12.0 --------------C2D5D3D6DC2196AFF8605F7D Content-Type: text/plain Content-Disposition: inline Content-Transfer-Encoding: 8bit MIME-Version: 1.0 -- Sent via pgsql-hackers mailing list ([email protected]) To make changes to your subscription: http://www.postgresql.org/mailpref/pgsql-hackers --------------C2D5D3D6DC2196AFF8605F7D-- ^ permalink raw reply [nested|flat] 37+ messages in thread
* [PATCH v2] Enable replication connections by default in pg_hba.conf @ 2017-03-08 02:07 Peter Eisentraut <[email protected]> 0 siblings, 0 replies; 37+ messages in thread From: Peter Eisentraut @ 2017-03-08 02:07 UTC (permalink / raw) --- doc/src/sgml/ref/initdb.sgml | 16 +++++++++++----- src/backend/libpq/pg_hba.conf.sample | 6 +++--- src/bin/initdb/initdb.c | 5 ----- src/bin/pg_basebackup/t/010_pg_basebackup.pl | 7 ++----- src/test/perl/PostgresNode.pm | 19 ++----------------- 5 files changed, 18 insertions(+), 35 deletions(-) diff --git a/doc/src/sgml/ref/initdb.sgml b/doc/src/sgml/ref/initdb.sgml index 1aaa4901af..d9faa96021 100644 --- a/doc/src/sgml/ref/initdb.sgml +++ b/doc/src/sgml/ref/initdb.sgml @@ -120,11 +120,17 @@ <title>Options</title> <term><option>--auth=<replaceable class="parameter">authmethod</replaceable></option></term> <listitem> <para> - This option specifies the authentication method for local users used - in <filename>pg_hba.conf</> (<literal>host</literal> - and <literal>local</literal> lines). Do not use <literal>trust</> - unless you trust all local users on your system. <literal>trust</> is - the default for ease of installation. + This option specifies the default authentication method for local + users used in <filename>pg_hba.conf</> (<literal>host</literal> + and <literal>local</literal> lines). <command>initdb</command> will + prepopulate <filename>pg_hba.conf</filename> entries using the + specified authentication method for non-replication as well as + replication connections. + </para> + + <para> + Do not use <literal>trust</> unless you trust all local users on your + system. <literal>trust</> is the default for ease of installation. </para> </listitem> </varlistentry> diff --git a/src/backend/libpq/pg_hba.conf.sample b/src/backend/libpq/pg_hba.conf.sample index e0fbfcb026..507278b2cc 100644 --- a/src/backend/libpq/pg_hba.conf.sample +++ b/src/backend/libpq/pg_hba.conf.sample @@ -84,6 +84,6 @@ host all all 127.0.0.1/32 @authmethodhost@ host all all ::1/128 @authmethodhost@ # Allow replication connections from localhost, by a user with the # replication privilege. -@remove-line-for-nolocal@#local replication @default_username@ @authmethodlocal@ -#host replication @default_username@ 127.0.0.1/32 @authmethodhost@ -#host replication @default_username@ ::1/128 @authmethodhost@ +@remove-line-for-nolocal@local replication all @authmethodlocal@ +host replication all 127.0.0.1/32 @authmethodhost@ +host replication all ::1/128 @authmethodhost@ diff --git a/src/bin/initdb/initdb.c b/src/bin/initdb/initdb.c index 1ed0d20504..ea7b47e26d 100644 --- a/src/bin/initdb/initdb.c +++ b/src/bin/initdb/initdb.c @@ -1227,11 +1227,6 @@ setup_config(void) "@authcomment@", (strcmp(authmethodlocal, "trust") == 0 || strcmp(authmethodhost, "trust") == 0) ? AUTHTRUST_WARNING : ""); - /* Replace username for replication */ - conflines = replace_token(conflines, - "@default_username@", - username); - snprintf(path, sizeof(path), "%s/pg_hba.conf", pg_data); writefile(path, conflines); diff --git a/src/bin/pg_basebackup/t/010_pg_basebackup.pl b/src/bin/pg_basebackup/t/010_pg_basebackup.pl index aafb138fd5..14bd813896 100644 --- a/src/bin/pg_basebackup/t/010_pg_basebackup.pl +++ b/src/bin/pg_basebackup/t/010_pg_basebackup.pl @@ -4,7 +4,7 @@ use Config; use PostgresNode; use TestLib; -use Test::More tests => 73; +use Test::More tests => 72; program_help_ok('pg_basebackup'); program_version_ok('pg_basebackup'); @@ -15,15 +15,12 @@ my $node = get_new_node('main'); # Initialize node without replication settings -$node->init(hba_permit_replication => 0); +$node->init; $node->start; my $pgdata = $node->data_dir; $node->command_fails(['pg_basebackup'], 'pg_basebackup needs target directory specified'); -$node->command_fails( - [ 'pg_basebackup', '-D', "$tempdir/backup" ], - 'pg_basebackup fails because of hba'); # Some Windows ANSI code pages may reject this filename, in which case we # quietly proceed without this bit of test coverage. diff --git a/src/test/perl/PostgresNode.pm b/src/test/perl/PostgresNode.pm index e5cb348f4c..7e530676b2 100644 --- a/src/test/perl/PostgresNode.pm +++ b/src/test/perl/PostgresNode.pm @@ -349,11 +349,7 @@ sub set_replication_conf open my $hba, ">>$pgdata/pg_hba.conf"; print $hba "\n# Allow replication (set up by PostgresNode.pm)\n"; - if (!$TestLib::windows_os) - { - print $hba "local replication all trust\n"; - } - else + if ($TestLib::windows_os) { print $hba "host replication all $test_localhost/32 sspi include_realm=1 map=regress\n"; @@ -373,9 +369,6 @@ a directory that's only accessible to the current user to ensure that. On Windows, we use SSPI authentication to ensure the same (by pg_regress --config-auth). -pg_hba.conf is configured to allow replication connections. Pass the keyword -parameter hba_permit_replication => 0 to disable this. - WAL archiving can be enabled on this node by passing the keyword parameter has_archiving => 1. This is disabled by default. @@ -396,8 +389,6 @@ sub init my $pgdata = $self->data_dir; my $host = $self->host; - $params{hba_permit_replication} = 1 - unless defined $params{hba_permit_replication}; $params{allows_streaming} = 0 unless defined $params{allows_streaming}; $params{has_archiving} = 0 unless defined $params{has_archiving}; @@ -451,7 +442,7 @@ sub init } close $conf; - $self->set_replication_conf if $params{hba_permit_replication}; + $self->set_replication_conf if $params{allows_streaming}; $self->enable_archiving if $params{has_archiving}; } @@ -591,9 +582,6 @@ Does not start the node after initializing it. A recovery.conf is not created. -pg_hba.conf is configured to allow replication connections. Pass the keyword -parameter hba_permit_replication => 0 to disable this. - Streaming replication can be enabled on this node by passing the keyword parameter has_streaming => 1. This is disabled by default. @@ -615,8 +603,6 @@ sub init_from_backup my $root_name = $root_node->name; $params{has_streaming} = 0 unless defined $params{has_streaming}; - $params{hba_permit_replication} = 1 - unless defined $params{hba_permit_replication}; $params{has_restoring} = 0 unless defined $params{has_restoring}; print @@ -638,7 +624,6 @@ sub init_from_backup qq( port = $port )); - $self->set_replication_conf if $params{hba_permit_replication}; $self->enable_streaming($root_node) if $params{has_streaming}; $self->enable_restoring($root_node) if $params{has_restoring}; } -- 2.12.0 --------------C2D5D3D6DC2196AFF8605F7D Content-Type: text/plain Content-Disposition: inline Content-Transfer-Encoding: 8bit MIME-Version: 1.0 -- Sent via pgsql-hackers mailing list ([email protected]) To make changes to your subscription: http://www.postgresql.org/mailpref/pgsql-hackers --------------C2D5D3D6DC2196AFF8605F7D-- ^ permalink raw reply [nested|flat] 37+ messages in thread
* [PATCH v2] Enable replication connections by default in pg_hba.conf @ 2017-03-08 02:07 Peter Eisentraut <[email protected]> 0 siblings, 0 replies; 37+ messages in thread From: Peter Eisentraut @ 2017-03-08 02:07 UTC (permalink / raw) --- doc/src/sgml/ref/initdb.sgml | 16 +++++++++++----- src/backend/libpq/pg_hba.conf.sample | 6 +++--- src/bin/initdb/initdb.c | 5 ----- src/bin/pg_basebackup/t/010_pg_basebackup.pl | 7 ++----- src/test/perl/PostgresNode.pm | 19 ++----------------- 5 files changed, 18 insertions(+), 35 deletions(-) diff --git a/doc/src/sgml/ref/initdb.sgml b/doc/src/sgml/ref/initdb.sgml index 1aaa4901af..d9faa96021 100644 --- a/doc/src/sgml/ref/initdb.sgml +++ b/doc/src/sgml/ref/initdb.sgml @@ -120,11 +120,17 @@ <title>Options</title> <term><option>--auth=<replaceable class="parameter">authmethod</replaceable></option></term> <listitem> <para> - This option specifies the authentication method for local users used - in <filename>pg_hba.conf</> (<literal>host</literal> - and <literal>local</literal> lines). Do not use <literal>trust</> - unless you trust all local users on your system. <literal>trust</> is - the default for ease of installation. + This option specifies the default authentication method for local + users used in <filename>pg_hba.conf</> (<literal>host</literal> + and <literal>local</literal> lines). <command>initdb</command> will + prepopulate <filename>pg_hba.conf</filename> entries using the + specified authentication method for non-replication as well as + replication connections. + </para> + + <para> + Do not use <literal>trust</> unless you trust all local users on your + system. <literal>trust</> is the default for ease of installation. </para> </listitem> </varlistentry> diff --git a/src/backend/libpq/pg_hba.conf.sample b/src/backend/libpq/pg_hba.conf.sample index e0fbfcb026..507278b2cc 100644 --- a/src/backend/libpq/pg_hba.conf.sample +++ b/src/backend/libpq/pg_hba.conf.sample @@ -84,6 +84,6 @@ host all all 127.0.0.1/32 @authmethodhost@ host all all ::1/128 @authmethodhost@ # Allow replication connections from localhost, by a user with the # replication privilege. -@remove-line-for-nolocal@#local replication @default_username@ @authmethodlocal@ -#host replication @default_username@ 127.0.0.1/32 @authmethodhost@ -#host replication @default_username@ ::1/128 @authmethodhost@ +@remove-line-for-nolocal@local replication all @authmethodlocal@ +host replication all 127.0.0.1/32 @authmethodhost@ +host replication all ::1/128 @authmethodhost@ diff --git a/src/bin/initdb/initdb.c b/src/bin/initdb/initdb.c index 1ed0d20504..ea7b47e26d 100644 --- a/src/bin/initdb/initdb.c +++ b/src/bin/initdb/initdb.c @@ -1227,11 +1227,6 @@ setup_config(void) "@authcomment@", (strcmp(authmethodlocal, "trust") == 0 || strcmp(authmethodhost, "trust") == 0) ? AUTHTRUST_WARNING : ""); - /* Replace username for replication */ - conflines = replace_token(conflines, - "@default_username@", - username); - snprintf(path, sizeof(path), "%s/pg_hba.conf", pg_data); writefile(path, conflines); diff --git a/src/bin/pg_basebackup/t/010_pg_basebackup.pl b/src/bin/pg_basebackup/t/010_pg_basebackup.pl index aafb138fd5..14bd813896 100644 --- a/src/bin/pg_basebackup/t/010_pg_basebackup.pl +++ b/src/bin/pg_basebackup/t/010_pg_basebackup.pl @@ -4,7 +4,7 @@ use Config; use PostgresNode; use TestLib; -use Test::More tests => 73; +use Test::More tests => 72; program_help_ok('pg_basebackup'); program_version_ok('pg_basebackup'); @@ -15,15 +15,12 @@ my $node = get_new_node('main'); # Initialize node without replication settings -$node->init(hba_permit_replication => 0); +$node->init; $node->start; my $pgdata = $node->data_dir; $node->command_fails(['pg_basebackup'], 'pg_basebackup needs target directory specified'); -$node->command_fails( - [ 'pg_basebackup', '-D', "$tempdir/backup" ], - 'pg_basebackup fails because of hba'); # Some Windows ANSI code pages may reject this filename, in which case we # quietly proceed without this bit of test coverage. diff --git a/src/test/perl/PostgresNode.pm b/src/test/perl/PostgresNode.pm index e5cb348f4c..7e530676b2 100644 --- a/src/test/perl/PostgresNode.pm +++ b/src/test/perl/PostgresNode.pm @@ -349,11 +349,7 @@ sub set_replication_conf open my $hba, ">>$pgdata/pg_hba.conf"; print $hba "\n# Allow replication (set up by PostgresNode.pm)\n"; - if (!$TestLib::windows_os) - { - print $hba "local replication all trust\n"; - } - else + if ($TestLib::windows_os) { print $hba "host replication all $test_localhost/32 sspi include_realm=1 map=regress\n"; @@ -373,9 +369,6 @@ a directory that's only accessible to the current user to ensure that. On Windows, we use SSPI authentication to ensure the same (by pg_regress --config-auth). -pg_hba.conf is configured to allow replication connections. Pass the keyword -parameter hba_permit_replication => 0 to disable this. - WAL archiving can be enabled on this node by passing the keyword parameter has_archiving => 1. This is disabled by default. @@ -396,8 +389,6 @@ sub init my $pgdata = $self->data_dir; my $host = $self->host; - $params{hba_permit_replication} = 1 - unless defined $params{hba_permit_replication}; $params{allows_streaming} = 0 unless defined $params{allows_streaming}; $params{has_archiving} = 0 unless defined $params{has_archiving}; @@ -451,7 +442,7 @@ sub init } close $conf; - $self->set_replication_conf if $params{hba_permit_replication}; + $self->set_replication_conf if $params{allows_streaming}; $self->enable_archiving if $params{has_archiving}; } @@ -591,9 +582,6 @@ Does not start the node after initializing it. A recovery.conf is not created. -pg_hba.conf is configured to allow replication connections. Pass the keyword -parameter hba_permit_replication => 0 to disable this. - Streaming replication can be enabled on this node by passing the keyword parameter has_streaming => 1. This is disabled by default. @@ -615,8 +603,6 @@ sub init_from_backup my $root_name = $root_node->name; $params{has_streaming} = 0 unless defined $params{has_streaming}; - $params{hba_permit_replication} = 1 - unless defined $params{hba_permit_replication}; $params{has_restoring} = 0 unless defined $params{has_restoring}; print @@ -638,7 +624,6 @@ sub init_from_backup qq( port = $port )); - $self->set_replication_conf if $params{hba_permit_replication}; $self->enable_streaming($root_node) if $params{has_streaming}; $self->enable_restoring($root_node) if $params{has_restoring}; } -- 2.12.0 --------------C2D5D3D6DC2196AFF8605F7D Content-Type: text/plain Content-Disposition: inline Content-Transfer-Encoding: 8bit MIME-Version: 1.0 -- Sent via pgsql-hackers mailing list ([email protected]) To make changes to your subscription: http://www.postgresql.org/mailpref/pgsql-hackers --------------C2D5D3D6DC2196AFF8605F7D-- ^ permalink raw reply [nested|flat] 37+ messages in thread
* [PATCH v2] Enable replication connections by default in pg_hba.conf @ 2017-03-08 02:07 Peter Eisentraut <[email protected]> 0 siblings, 0 replies; 37+ messages in thread From: Peter Eisentraut @ 2017-03-08 02:07 UTC (permalink / raw) --- doc/src/sgml/ref/initdb.sgml | 16 +++++++++++----- src/backend/libpq/pg_hba.conf.sample | 6 +++--- src/bin/initdb/initdb.c | 5 ----- src/bin/pg_basebackup/t/010_pg_basebackup.pl | 7 ++----- src/test/perl/PostgresNode.pm | 19 ++----------------- 5 files changed, 18 insertions(+), 35 deletions(-) diff --git a/doc/src/sgml/ref/initdb.sgml b/doc/src/sgml/ref/initdb.sgml index 1aaa4901af..d9faa96021 100644 --- a/doc/src/sgml/ref/initdb.sgml +++ b/doc/src/sgml/ref/initdb.sgml @@ -120,11 +120,17 @@ <title>Options</title> <term><option>--auth=<replaceable class="parameter">authmethod</replaceable></option></term> <listitem> <para> - This option specifies the authentication method for local users used - in <filename>pg_hba.conf</> (<literal>host</literal> - and <literal>local</literal> lines). Do not use <literal>trust</> - unless you trust all local users on your system. <literal>trust</> is - the default for ease of installation. + This option specifies the default authentication method for local + users used in <filename>pg_hba.conf</> (<literal>host</literal> + and <literal>local</literal> lines). <command>initdb</command> will + prepopulate <filename>pg_hba.conf</filename> entries using the + specified authentication method for non-replication as well as + replication connections. + </para> + + <para> + Do not use <literal>trust</> unless you trust all local users on your + system. <literal>trust</> is the default for ease of installation. </para> </listitem> </varlistentry> diff --git a/src/backend/libpq/pg_hba.conf.sample b/src/backend/libpq/pg_hba.conf.sample index e0fbfcb026..507278b2cc 100644 --- a/src/backend/libpq/pg_hba.conf.sample +++ b/src/backend/libpq/pg_hba.conf.sample @@ -84,6 +84,6 @@ host all all 127.0.0.1/32 @authmethodhost@ host all all ::1/128 @authmethodhost@ # Allow replication connections from localhost, by a user with the # replication privilege. -@remove-line-for-nolocal@#local replication @default_username@ @authmethodlocal@ -#host replication @default_username@ 127.0.0.1/32 @authmethodhost@ -#host replication @default_username@ ::1/128 @authmethodhost@ +@remove-line-for-nolocal@local replication all @authmethodlocal@ +host replication all 127.0.0.1/32 @authmethodhost@ +host replication all ::1/128 @authmethodhost@ diff --git a/src/bin/initdb/initdb.c b/src/bin/initdb/initdb.c index 1ed0d20504..ea7b47e26d 100644 --- a/src/bin/initdb/initdb.c +++ b/src/bin/initdb/initdb.c @@ -1227,11 +1227,6 @@ setup_config(void) "@authcomment@", (strcmp(authmethodlocal, "trust") == 0 || strcmp(authmethodhost, "trust") == 0) ? AUTHTRUST_WARNING : ""); - /* Replace username for replication */ - conflines = replace_token(conflines, - "@default_username@", - username); - snprintf(path, sizeof(path), "%s/pg_hba.conf", pg_data); writefile(path, conflines); diff --git a/src/bin/pg_basebackup/t/010_pg_basebackup.pl b/src/bin/pg_basebackup/t/010_pg_basebackup.pl index aafb138fd5..14bd813896 100644 --- a/src/bin/pg_basebackup/t/010_pg_basebackup.pl +++ b/src/bin/pg_basebackup/t/010_pg_basebackup.pl @@ -4,7 +4,7 @@ use Config; use PostgresNode; use TestLib; -use Test::More tests => 73; +use Test::More tests => 72; program_help_ok('pg_basebackup'); program_version_ok('pg_basebackup'); @@ -15,15 +15,12 @@ my $node = get_new_node('main'); # Initialize node without replication settings -$node->init(hba_permit_replication => 0); +$node->init; $node->start; my $pgdata = $node->data_dir; $node->command_fails(['pg_basebackup'], 'pg_basebackup needs target directory specified'); -$node->command_fails( - [ 'pg_basebackup', '-D', "$tempdir/backup" ], - 'pg_basebackup fails because of hba'); # Some Windows ANSI code pages may reject this filename, in which case we # quietly proceed without this bit of test coverage. diff --git a/src/test/perl/PostgresNode.pm b/src/test/perl/PostgresNode.pm index e5cb348f4c..7e530676b2 100644 --- a/src/test/perl/PostgresNode.pm +++ b/src/test/perl/PostgresNode.pm @@ -349,11 +349,7 @@ sub set_replication_conf open my $hba, ">>$pgdata/pg_hba.conf"; print $hba "\n# Allow replication (set up by PostgresNode.pm)\n"; - if (!$TestLib::windows_os) - { - print $hba "local replication all trust\n"; - } - else + if ($TestLib::windows_os) { print $hba "host replication all $test_localhost/32 sspi include_realm=1 map=regress\n"; @@ -373,9 +369,6 @@ a directory that's only accessible to the current user to ensure that. On Windows, we use SSPI authentication to ensure the same (by pg_regress --config-auth). -pg_hba.conf is configured to allow replication connections. Pass the keyword -parameter hba_permit_replication => 0 to disable this. - WAL archiving can be enabled on this node by passing the keyword parameter has_archiving => 1. This is disabled by default. @@ -396,8 +389,6 @@ sub init my $pgdata = $self->data_dir; my $host = $self->host; - $params{hba_permit_replication} = 1 - unless defined $params{hba_permit_replication}; $params{allows_streaming} = 0 unless defined $params{allows_streaming}; $params{has_archiving} = 0 unless defined $params{has_archiving}; @@ -451,7 +442,7 @@ sub init } close $conf; - $self->set_replication_conf if $params{hba_permit_replication}; + $self->set_replication_conf if $params{allows_streaming}; $self->enable_archiving if $params{has_archiving}; } @@ -591,9 +582,6 @@ Does not start the node after initializing it. A recovery.conf is not created. -pg_hba.conf is configured to allow replication connections. Pass the keyword -parameter hba_permit_replication => 0 to disable this. - Streaming replication can be enabled on this node by passing the keyword parameter has_streaming => 1. This is disabled by default. @@ -615,8 +603,6 @@ sub init_from_backup my $root_name = $root_node->name; $params{has_streaming} = 0 unless defined $params{has_streaming}; - $params{hba_permit_replication} = 1 - unless defined $params{hba_permit_replication}; $params{has_restoring} = 0 unless defined $params{has_restoring}; print @@ -638,7 +624,6 @@ sub init_from_backup qq( port = $port )); - $self->set_replication_conf if $params{hba_permit_replication}; $self->enable_streaming($root_node) if $params{has_streaming}; $self->enable_restoring($root_node) if $params{has_restoring}; } -- 2.12.0 --------------C2D5D3D6DC2196AFF8605F7D Content-Type: text/plain Content-Disposition: inline Content-Transfer-Encoding: 8bit MIME-Version: 1.0 -- Sent via pgsql-hackers mailing list ([email protected]) To make changes to your subscription: http://www.postgresql.org/mailpref/pgsql-hackers --------------C2D5D3D6DC2196AFF8605F7D-- ^ permalink raw reply [nested|flat] 37+ messages in thread
* [PATCH v2] Enable replication connections by default in pg_hba.conf @ 2017-03-08 02:07 Peter Eisentraut <[email protected]> 0 siblings, 0 replies; 37+ messages in thread From: Peter Eisentraut @ 2017-03-08 02:07 UTC (permalink / raw) --- doc/src/sgml/ref/initdb.sgml | 16 +++++++++++----- src/backend/libpq/pg_hba.conf.sample | 6 +++--- src/bin/initdb/initdb.c | 5 ----- src/bin/pg_basebackup/t/010_pg_basebackup.pl | 7 ++----- src/test/perl/PostgresNode.pm | 19 ++----------------- 5 files changed, 18 insertions(+), 35 deletions(-) diff --git a/doc/src/sgml/ref/initdb.sgml b/doc/src/sgml/ref/initdb.sgml index 1aaa4901af..d9faa96021 100644 --- a/doc/src/sgml/ref/initdb.sgml +++ b/doc/src/sgml/ref/initdb.sgml @@ -120,11 +120,17 @@ <title>Options</title> <term><option>--auth=<replaceable class="parameter">authmethod</replaceable></option></term> <listitem> <para> - This option specifies the authentication method for local users used - in <filename>pg_hba.conf</> (<literal>host</literal> - and <literal>local</literal> lines). Do not use <literal>trust</> - unless you trust all local users on your system. <literal>trust</> is - the default for ease of installation. + This option specifies the default authentication method for local + users used in <filename>pg_hba.conf</> (<literal>host</literal> + and <literal>local</literal> lines). <command>initdb</command> will + prepopulate <filename>pg_hba.conf</filename> entries using the + specified authentication method for non-replication as well as + replication connections. + </para> + + <para> + Do not use <literal>trust</> unless you trust all local users on your + system. <literal>trust</> is the default for ease of installation. </para> </listitem> </varlistentry> diff --git a/src/backend/libpq/pg_hba.conf.sample b/src/backend/libpq/pg_hba.conf.sample index e0fbfcb026..507278b2cc 100644 --- a/src/backend/libpq/pg_hba.conf.sample +++ b/src/backend/libpq/pg_hba.conf.sample @@ -84,6 +84,6 @@ host all all 127.0.0.1/32 @authmethodhost@ host all all ::1/128 @authmethodhost@ # Allow replication connections from localhost, by a user with the # replication privilege. -@remove-line-for-nolocal@#local replication @default_username@ @authmethodlocal@ -#host replication @default_username@ 127.0.0.1/32 @authmethodhost@ -#host replication @default_username@ ::1/128 @authmethodhost@ +@remove-line-for-nolocal@local replication all @authmethodlocal@ +host replication all 127.0.0.1/32 @authmethodhost@ +host replication all ::1/128 @authmethodhost@ diff --git a/src/bin/initdb/initdb.c b/src/bin/initdb/initdb.c index 1ed0d20504..ea7b47e26d 100644 --- a/src/bin/initdb/initdb.c +++ b/src/bin/initdb/initdb.c @@ -1227,11 +1227,6 @@ setup_config(void) "@authcomment@", (strcmp(authmethodlocal, "trust") == 0 || strcmp(authmethodhost, "trust") == 0) ? AUTHTRUST_WARNING : ""); - /* Replace username for replication */ - conflines = replace_token(conflines, - "@default_username@", - username); - snprintf(path, sizeof(path), "%s/pg_hba.conf", pg_data); writefile(path, conflines); diff --git a/src/bin/pg_basebackup/t/010_pg_basebackup.pl b/src/bin/pg_basebackup/t/010_pg_basebackup.pl index aafb138fd5..14bd813896 100644 --- a/src/bin/pg_basebackup/t/010_pg_basebackup.pl +++ b/src/bin/pg_basebackup/t/010_pg_basebackup.pl @@ -4,7 +4,7 @@ use Config; use PostgresNode; use TestLib; -use Test::More tests => 73; +use Test::More tests => 72; program_help_ok('pg_basebackup'); program_version_ok('pg_basebackup'); @@ -15,15 +15,12 @@ my $node = get_new_node('main'); # Initialize node without replication settings -$node->init(hba_permit_replication => 0); +$node->init; $node->start; my $pgdata = $node->data_dir; $node->command_fails(['pg_basebackup'], 'pg_basebackup needs target directory specified'); -$node->command_fails( - [ 'pg_basebackup', '-D', "$tempdir/backup" ], - 'pg_basebackup fails because of hba'); # Some Windows ANSI code pages may reject this filename, in which case we # quietly proceed without this bit of test coverage. diff --git a/src/test/perl/PostgresNode.pm b/src/test/perl/PostgresNode.pm index e5cb348f4c..7e530676b2 100644 --- a/src/test/perl/PostgresNode.pm +++ b/src/test/perl/PostgresNode.pm @@ -349,11 +349,7 @@ sub set_replication_conf open my $hba, ">>$pgdata/pg_hba.conf"; print $hba "\n# Allow replication (set up by PostgresNode.pm)\n"; - if (!$TestLib::windows_os) - { - print $hba "local replication all trust\n"; - } - else + if ($TestLib::windows_os) { print $hba "host replication all $test_localhost/32 sspi include_realm=1 map=regress\n"; @@ -373,9 +369,6 @@ a directory that's only accessible to the current user to ensure that. On Windows, we use SSPI authentication to ensure the same (by pg_regress --config-auth). -pg_hba.conf is configured to allow replication connections. Pass the keyword -parameter hba_permit_replication => 0 to disable this. - WAL archiving can be enabled on this node by passing the keyword parameter has_archiving => 1. This is disabled by default. @@ -396,8 +389,6 @@ sub init my $pgdata = $self->data_dir; my $host = $self->host; - $params{hba_permit_replication} = 1 - unless defined $params{hba_permit_replication}; $params{allows_streaming} = 0 unless defined $params{allows_streaming}; $params{has_archiving} = 0 unless defined $params{has_archiving}; @@ -451,7 +442,7 @@ sub init } close $conf; - $self->set_replication_conf if $params{hba_permit_replication}; + $self->set_replication_conf if $params{allows_streaming}; $self->enable_archiving if $params{has_archiving}; } @@ -591,9 +582,6 @@ Does not start the node after initializing it. A recovery.conf is not created. -pg_hba.conf is configured to allow replication connections. Pass the keyword -parameter hba_permit_replication => 0 to disable this. - Streaming replication can be enabled on this node by passing the keyword parameter has_streaming => 1. This is disabled by default. @@ -615,8 +603,6 @@ sub init_from_backup my $root_name = $root_node->name; $params{has_streaming} = 0 unless defined $params{has_streaming}; - $params{hba_permit_replication} = 1 - unless defined $params{hba_permit_replication}; $params{has_restoring} = 0 unless defined $params{has_restoring}; print @@ -638,7 +624,6 @@ sub init_from_backup qq( port = $port )); - $self->set_replication_conf if $params{hba_permit_replication}; $self->enable_streaming($root_node) if $params{has_streaming}; $self->enable_restoring($root_node) if $params{has_restoring}; } -- 2.12.0 --------------C2D5D3D6DC2196AFF8605F7D Content-Type: text/plain Content-Disposition: inline Content-Transfer-Encoding: 8bit MIME-Version: 1.0 -- Sent via pgsql-hackers mailing list ([email protected]) To make changes to your subscription: http://www.postgresql.org/mailpref/pgsql-hackers --------------C2D5D3D6DC2196AFF8605F7D-- ^ permalink raw reply [nested|flat] 37+ messages in thread
* [PATCH v2] Enable replication connections by default in pg_hba.conf @ 2017-03-08 02:07 Peter Eisentraut <[email protected]> 0 siblings, 0 replies; 37+ messages in thread From: Peter Eisentraut @ 2017-03-08 02:07 UTC (permalink / raw) --- doc/src/sgml/ref/initdb.sgml | 16 +++++++++++----- src/backend/libpq/pg_hba.conf.sample | 6 +++--- src/bin/initdb/initdb.c | 5 ----- src/bin/pg_basebackup/t/010_pg_basebackup.pl | 7 ++----- src/test/perl/PostgresNode.pm | 19 ++----------------- 5 files changed, 18 insertions(+), 35 deletions(-) diff --git a/doc/src/sgml/ref/initdb.sgml b/doc/src/sgml/ref/initdb.sgml index 1aaa4901af..d9faa96021 100644 --- a/doc/src/sgml/ref/initdb.sgml +++ b/doc/src/sgml/ref/initdb.sgml @@ -120,11 +120,17 @@ <title>Options</title> <term><option>--auth=<replaceable class="parameter">authmethod</replaceable></option></term> <listitem> <para> - This option specifies the authentication method for local users used - in <filename>pg_hba.conf</> (<literal>host</literal> - and <literal>local</literal> lines). Do not use <literal>trust</> - unless you trust all local users on your system. <literal>trust</> is - the default for ease of installation. + This option specifies the default authentication method for local + users used in <filename>pg_hba.conf</> (<literal>host</literal> + and <literal>local</literal> lines). <command>initdb</command> will + prepopulate <filename>pg_hba.conf</filename> entries using the + specified authentication method for non-replication as well as + replication connections. + </para> + + <para> + Do not use <literal>trust</> unless you trust all local users on your + system. <literal>trust</> is the default for ease of installation. </para> </listitem> </varlistentry> diff --git a/src/backend/libpq/pg_hba.conf.sample b/src/backend/libpq/pg_hba.conf.sample index e0fbfcb026..507278b2cc 100644 --- a/src/backend/libpq/pg_hba.conf.sample +++ b/src/backend/libpq/pg_hba.conf.sample @@ -84,6 +84,6 @@ host all all 127.0.0.1/32 @authmethodhost@ host all all ::1/128 @authmethodhost@ # Allow replication connections from localhost, by a user with the # replication privilege. -@remove-line-for-nolocal@#local replication @default_username@ @authmethodlocal@ -#host replication @default_username@ 127.0.0.1/32 @authmethodhost@ -#host replication @default_username@ ::1/128 @authmethodhost@ +@remove-line-for-nolocal@local replication all @authmethodlocal@ +host replication all 127.0.0.1/32 @authmethodhost@ +host replication all ::1/128 @authmethodhost@ diff --git a/src/bin/initdb/initdb.c b/src/bin/initdb/initdb.c index 1ed0d20504..ea7b47e26d 100644 --- a/src/bin/initdb/initdb.c +++ b/src/bin/initdb/initdb.c @@ -1227,11 +1227,6 @@ setup_config(void) "@authcomment@", (strcmp(authmethodlocal, "trust") == 0 || strcmp(authmethodhost, "trust") == 0) ? AUTHTRUST_WARNING : ""); - /* Replace username for replication */ - conflines = replace_token(conflines, - "@default_username@", - username); - snprintf(path, sizeof(path), "%s/pg_hba.conf", pg_data); writefile(path, conflines); diff --git a/src/bin/pg_basebackup/t/010_pg_basebackup.pl b/src/bin/pg_basebackup/t/010_pg_basebackup.pl index aafb138fd5..14bd813896 100644 --- a/src/bin/pg_basebackup/t/010_pg_basebackup.pl +++ b/src/bin/pg_basebackup/t/010_pg_basebackup.pl @@ -4,7 +4,7 @@ use Config; use PostgresNode; use TestLib; -use Test::More tests => 73; +use Test::More tests => 72; program_help_ok('pg_basebackup'); program_version_ok('pg_basebackup'); @@ -15,15 +15,12 @@ my $node = get_new_node('main'); # Initialize node without replication settings -$node->init(hba_permit_replication => 0); +$node->init; $node->start; my $pgdata = $node->data_dir; $node->command_fails(['pg_basebackup'], 'pg_basebackup needs target directory specified'); -$node->command_fails( - [ 'pg_basebackup', '-D', "$tempdir/backup" ], - 'pg_basebackup fails because of hba'); # Some Windows ANSI code pages may reject this filename, in which case we # quietly proceed without this bit of test coverage. diff --git a/src/test/perl/PostgresNode.pm b/src/test/perl/PostgresNode.pm index e5cb348f4c..7e530676b2 100644 --- a/src/test/perl/PostgresNode.pm +++ b/src/test/perl/PostgresNode.pm @@ -349,11 +349,7 @@ sub set_replication_conf open my $hba, ">>$pgdata/pg_hba.conf"; print $hba "\n# Allow replication (set up by PostgresNode.pm)\n"; - if (!$TestLib::windows_os) - { - print $hba "local replication all trust\n"; - } - else + if ($TestLib::windows_os) { print $hba "host replication all $test_localhost/32 sspi include_realm=1 map=regress\n"; @@ -373,9 +369,6 @@ a directory that's only accessible to the current user to ensure that. On Windows, we use SSPI authentication to ensure the same (by pg_regress --config-auth). -pg_hba.conf is configured to allow replication connections. Pass the keyword -parameter hba_permit_replication => 0 to disable this. - WAL archiving can be enabled on this node by passing the keyword parameter has_archiving => 1. This is disabled by default. @@ -396,8 +389,6 @@ sub init my $pgdata = $self->data_dir; my $host = $self->host; - $params{hba_permit_replication} = 1 - unless defined $params{hba_permit_replication}; $params{allows_streaming} = 0 unless defined $params{allows_streaming}; $params{has_archiving} = 0 unless defined $params{has_archiving}; @@ -451,7 +442,7 @@ sub init } close $conf; - $self->set_replication_conf if $params{hba_permit_replication}; + $self->set_replication_conf if $params{allows_streaming}; $self->enable_archiving if $params{has_archiving}; } @@ -591,9 +582,6 @@ Does not start the node after initializing it. A recovery.conf is not created. -pg_hba.conf is configured to allow replication connections. Pass the keyword -parameter hba_permit_replication => 0 to disable this. - Streaming replication can be enabled on this node by passing the keyword parameter has_streaming => 1. This is disabled by default. @@ -615,8 +603,6 @@ sub init_from_backup my $root_name = $root_node->name; $params{has_streaming} = 0 unless defined $params{has_streaming}; - $params{hba_permit_replication} = 1 - unless defined $params{hba_permit_replication}; $params{has_restoring} = 0 unless defined $params{has_restoring}; print @@ -638,7 +624,6 @@ sub init_from_backup qq( port = $port )); - $self->set_replication_conf if $params{hba_permit_replication}; $self->enable_streaming($root_node) if $params{has_streaming}; $self->enable_restoring($root_node) if $params{has_restoring}; } -- 2.12.0 --------------C2D5D3D6DC2196AFF8605F7D Content-Type: text/plain Content-Disposition: inline Content-Transfer-Encoding: 8bit MIME-Version: 1.0 -- Sent via pgsql-hackers mailing list ([email protected]) To make changes to your subscription: http://www.postgresql.org/mailpref/pgsql-hackers --------------C2D5D3D6DC2196AFF8605F7D-- ^ permalink raw reply [nested|flat] 37+ messages in thread
* [PATCH v2] Enable replication connections by default in pg_hba.conf @ 2017-03-08 02:07 Peter Eisentraut <[email protected]> 0 siblings, 0 replies; 37+ messages in thread From: Peter Eisentraut @ 2017-03-08 02:07 UTC (permalink / raw) --- doc/src/sgml/ref/initdb.sgml | 16 +++++++++++----- src/backend/libpq/pg_hba.conf.sample | 6 +++--- src/bin/initdb/initdb.c | 5 ----- src/bin/pg_basebackup/t/010_pg_basebackup.pl | 7 ++----- src/test/perl/PostgresNode.pm | 19 ++----------------- 5 files changed, 18 insertions(+), 35 deletions(-) diff --git a/doc/src/sgml/ref/initdb.sgml b/doc/src/sgml/ref/initdb.sgml index 1aaa4901af..d9faa96021 100644 --- a/doc/src/sgml/ref/initdb.sgml +++ b/doc/src/sgml/ref/initdb.sgml @@ -120,11 +120,17 @@ <title>Options</title> <term><option>--auth=<replaceable class="parameter">authmethod</replaceable></option></term> <listitem> <para> - This option specifies the authentication method for local users used - in <filename>pg_hba.conf</> (<literal>host</literal> - and <literal>local</literal> lines). Do not use <literal>trust</> - unless you trust all local users on your system. <literal>trust</> is - the default for ease of installation. + This option specifies the default authentication method for local + users used in <filename>pg_hba.conf</> (<literal>host</literal> + and <literal>local</literal> lines). <command>initdb</command> will + prepopulate <filename>pg_hba.conf</filename> entries using the + specified authentication method for non-replication as well as + replication connections. + </para> + + <para> + Do not use <literal>trust</> unless you trust all local users on your + system. <literal>trust</> is the default for ease of installation. </para> </listitem> </varlistentry> diff --git a/src/backend/libpq/pg_hba.conf.sample b/src/backend/libpq/pg_hba.conf.sample index e0fbfcb026..507278b2cc 100644 --- a/src/backend/libpq/pg_hba.conf.sample +++ b/src/backend/libpq/pg_hba.conf.sample @@ -84,6 +84,6 @@ host all all 127.0.0.1/32 @authmethodhost@ host all all ::1/128 @authmethodhost@ # Allow replication connections from localhost, by a user with the # replication privilege. -@remove-line-for-nolocal@#local replication @default_username@ @authmethodlocal@ -#host replication @default_username@ 127.0.0.1/32 @authmethodhost@ -#host replication @default_username@ ::1/128 @authmethodhost@ +@remove-line-for-nolocal@local replication all @authmethodlocal@ +host replication all 127.0.0.1/32 @authmethodhost@ +host replication all ::1/128 @authmethodhost@ diff --git a/src/bin/initdb/initdb.c b/src/bin/initdb/initdb.c index 1ed0d20504..ea7b47e26d 100644 --- a/src/bin/initdb/initdb.c +++ b/src/bin/initdb/initdb.c @@ -1227,11 +1227,6 @@ setup_config(void) "@authcomment@", (strcmp(authmethodlocal, "trust") == 0 || strcmp(authmethodhost, "trust") == 0) ? AUTHTRUST_WARNING : ""); - /* Replace username for replication */ - conflines = replace_token(conflines, - "@default_username@", - username); - snprintf(path, sizeof(path), "%s/pg_hba.conf", pg_data); writefile(path, conflines); diff --git a/src/bin/pg_basebackup/t/010_pg_basebackup.pl b/src/bin/pg_basebackup/t/010_pg_basebackup.pl index aafb138fd5..14bd813896 100644 --- a/src/bin/pg_basebackup/t/010_pg_basebackup.pl +++ b/src/bin/pg_basebackup/t/010_pg_basebackup.pl @@ -4,7 +4,7 @@ use Config; use PostgresNode; use TestLib; -use Test::More tests => 73; +use Test::More tests => 72; program_help_ok('pg_basebackup'); program_version_ok('pg_basebackup'); @@ -15,15 +15,12 @@ my $node = get_new_node('main'); # Initialize node without replication settings -$node->init(hba_permit_replication => 0); +$node->init; $node->start; my $pgdata = $node->data_dir; $node->command_fails(['pg_basebackup'], 'pg_basebackup needs target directory specified'); -$node->command_fails( - [ 'pg_basebackup', '-D', "$tempdir/backup" ], - 'pg_basebackup fails because of hba'); # Some Windows ANSI code pages may reject this filename, in which case we # quietly proceed without this bit of test coverage. diff --git a/src/test/perl/PostgresNode.pm b/src/test/perl/PostgresNode.pm index e5cb348f4c..7e530676b2 100644 --- a/src/test/perl/PostgresNode.pm +++ b/src/test/perl/PostgresNode.pm @@ -349,11 +349,7 @@ sub set_replication_conf open my $hba, ">>$pgdata/pg_hba.conf"; print $hba "\n# Allow replication (set up by PostgresNode.pm)\n"; - if (!$TestLib::windows_os) - { - print $hba "local replication all trust\n"; - } - else + if ($TestLib::windows_os) { print $hba "host replication all $test_localhost/32 sspi include_realm=1 map=regress\n"; @@ -373,9 +369,6 @@ a directory that's only accessible to the current user to ensure that. On Windows, we use SSPI authentication to ensure the same (by pg_regress --config-auth). -pg_hba.conf is configured to allow replication connections. Pass the keyword -parameter hba_permit_replication => 0 to disable this. - WAL archiving can be enabled on this node by passing the keyword parameter has_archiving => 1. This is disabled by default. @@ -396,8 +389,6 @@ sub init my $pgdata = $self->data_dir; my $host = $self->host; - $params{hba_permit_replication} = 1 - unless defined $params{hba_permit_replication}; $params{allows_streaming} = 0 unless defined $params{allows_streaming}; $params{has_archiving} = 0 unless defined $params{has_archiving}; @@ -451,7 +442,7 @@ sub init } close $conf; - $self->set_replication_conf if $params{hba_permit_replication}; + $self->set_replication_conf if $params{allows_streaming}; $self->enable_archiving if $params{has_archiving}; } @@ -591,9 +582,6 @@ Does not start the node after initializing it. A recovery.conf is not created. -pg_hba.conf is configured to allow replication connections. Pass the keyword -parameter hba_permit_replication => 0 to disable this. - Streaming replication can be enabled on this node by passing the keyword parameter has_streaming => 1. This is disabled by default. @@ -615,8 +603,6 @@ sub init_from_backup my $root_name = $root_node->name; $params{has_streaming} = 0 unless defined $params{has_streaming}; - $params{hba_permit_replication} = 1 - unless defined $params{hba_permit_replication}; $params{has_restoring} = 0 unless defined $params{has_restoring}; print @@ -638,7 +624,6 @@ sub init_from_backup qq( port = $port )); - $self->set_replication_conf if $params{hba_permit_replication}; $self->enable_streaming($root_node) if $params{has_streaming}; $self->enable_restoring($root_node) if $params{has_restoring}; } -- 2.12.0 --------------C2D5D3D6DC2196AFF8605F7D Content-Type: text/plain Content-Disposition: inline Content-Transfer-Encoding: 8bit MIME-Version: 1.0 -- Sent via pgsql-hackers mailing list ([email protected]) To make changes to your subscription: http://www.postgresql.org/mailpref/pgsql-hackers --------------C2D5D3D6DC2196AFF8605F7D-- ^ permalink raw reply [nested|flat] 37+ messages in thread
* [PATCH v21 3/8] Row pattern recognition patch (rewriter). @ 2024-08-26 04:32 Tatsuo Ishii <[email protected]> 0 siblings, 0 replies; 37+ messages in thread From: Tatsuo Ishii @ 2024-08-26 04:32 UTC (permalink / raw) --- src/backend/utils/adt/ruleutils.c | 103 ++++++++++++++++++++++++++++++ 1 file changed, 103 insertions(+) diff --git a/src/backend/utils/adt/ruleutils.c b/src/backend/utils/adt/ruleutils.c index 00eda1b34c..dff7e169e7 100644 --- a/src/backend/utils/adt/ruleutils.c +++ b/src/backend/utils/adt/ruleutils.c @@ -426,6 +426,10 @@ static void get_rule_groupingset(GroupingSet *gset, List *targetlist, bool omit_parens, deparse_context *context); static void get_rule_orderby(List *orderList, List *targetList, bool force_colno, deparse_context *context); +static void get_rule_pattern(List *patternVariable, List *patternRegexp, + bool force_colno, deparse_context *context); +static void get_rule_define(List *defineClause, List *patternVariables, + bool force_colno, deparse_context *context); static void get_rule_windowclause(Query *query, deparse_context *context); static void get_rule_windowspec(WindowClause *wc, List *targetList, deparse_context *context); @@ -6460,6 +6464,67 @@ get_rule_orderby(List *orderList, List *targetList, } } +/* + * Display a PATTERN clause. + */ +static void +get_rule_pattern(List *patternVariable, List *patternRegexp, + bool force_colno, deparse_context *context) +{ + StringInfo buf = context->buf; + const char *sep; + ListCell *lc_var, + *lc_reg = list_head(patternRegexp); + + sep = ""; + appendStringInfoChar(buf, '('); + foreach(lc_var, patternVariable) + { + char *variable = strVal((String *) lfirst(lc_var)); + char *regexp = NULL; + + if (lc_reg != NULL) + { + regexp = strVal((String *) lfirst(lc_reg)); + + lc_reg = lnext(patternRegexp, lc_reg); + } + + appendStringInfo(buf, "%s%s", sep, variable); + if (regexp !=NULL) + appendStringInfoString(buf, regexp); + + sep = " "; + } + appendStringInfoChar(buf, ')'); +} + +/* + * Display a DEFINE clause. + */ +static void +get_rule_define(List *defineClause, List *patternVariables, + bool force_colno, deparse_context *context) +{ + StringInfo buf = context->buf; + const char *sep; + ListCell *lc_var, + *lc_def; + + sep = " "; + Assert(list_length(patternVariables) == list_length(defineClause)); + + forboth(lc_var, patternVariables, lc_def, defineClause) + { + char *varName = strVal(lfirst(lc_var)); + TargetEntry *te = (TargetEntry *) lfirst(lc_def); + + appendStringInfo(buf, "%s%s AS ", sep, varName); + get_rule_expr((Node *) te->expr, context, false); + sep = ",\n "; + } +} + /* * Display a WINDOW clause. * @@ -6597,6 +6662,44 @@ get_rule_windowspec(WindowClause *wc, List *targetList, appendStringInfoString(buf, "EXCLUDE GROUP "); else if (wc->frameOptions & FRAMEOPTION_EXCLUDE_TIES) appendStringInfoString(buf, "EXCLUDE TIES "); + /* RPR */ + if (wc->rpSkipTo == ST_NEXT_ROW) + appendStringInfoString(buf, + "\n AFTER MATCH SKIP TO NEXT ROW "); + else if (wc->rpSkipTo == ST_PAST_LAST_ROW) + appendStringInfoString(buf, + "\n AFTER MATCH SKIP PAST LAST ROW "); + else if (wc->rpSkipTo == ST_FIRST_VARIABLE) + appendStringInfo(buf, + "\n AFTER MATCH SKIP TO FIRST %s ", + wc->rpSkipVariable); + else if (wc->rpSkipTo == ST_LAST_VARIABLE) + appendStringInfo(buf, + "\n AFTER MATCH SKIP TO LAST %s ", + wc->rpSkipVariable); + else if (wc->rpSkipTo == ST_VARIABLE) + appendStringInfo(buf, + "\n AFTER MATCH SKIP TO %s ", + wc->rpSkipVariable); + + if (wc->initial) + appendStringInfoString(buf, "\n INITIAL"); + + if (wc->patternVariable) + { + appendStringInfoString(buf, "\n PATTERN "); + get_rule_pattern(wc->patternVariable, wc->patternRegexp, + false, context); + } + + if (wc->defineClause) + { + appendStringInfoString(buf, "\n DEFINE\n"); + get_rule_define(wc->defineClause, wc->patternVariable, + false, context); + appendStringInfoChar(buf, ' '); + } + /* we will now have a trailing space; remove it */ buf->len--; } -- 2.25.1 ----Next_Part(Mon_Aug_26_13_39_47_2024_878)-- Content-Type: Text/X-Patch; charset=us-ascii Content-Transfer-Encoding: 7bit Content-Disposition: inline; filename="v21-0004-Row-pattern-recognition-patch-planner.patch" ^ permalink raw reply [nested|flat] 37+ messages in thread
end of thread, other threads:[~2024-08-26 04:32 UTC | newest] Thread overview: 37+ messages (download: mbox mbox.gz follow: Atom feed) -- links below jump to the message on this page -- 2017-03-06 19:53 [PATCH] Enable replication connections by default in pg_hba.conf Peter Eisentraut <[email protected]> 2017-03-06 19:53 [PATCH] Enable replication connections by default in pg_hba.conf Peter Eisentraut <[email protected]> 2017-03-06 19:53 [PATCH] Enable replication connections by default in pg_hba.conf Peter Eisentraut <[email protected]> 2017-03-06 19:53 [PATCH] Enable replication connections by default in pg_hba.conf Peter Eisentraut <[email protected]> 2017-03-06 19:53 [PATCH] Enable replication connections by default in pg_hba.conf Peter Eisentraut <[email protected]> 2017-03-06 19:53 [PATCH] Enable replication connections by default in pg_hba.conf Peter Eisentraut <[email protected]> 2017-03-06 19:53 [PATCH] Enable replication connections by default in pg_hba.conf Peter Eisentraut <[email protected]> 2017-03-06 19:53 [PATCH] Enable replication connections by default in pg_hba.conf Peter Eisentraut <[email protected]> 2017-03-06 19:53 [PATCH] Enable replication connections by default in pg_hba.conf Peter Eisentraut <[email protected]> 2017-03-06 19:53 [PATCH] Enable replication connections by default in pg_hba.conf Peter Eisentraut <[email protected]> 2017-03-06 19:53 [PATCH] Enable replication connections by default in pg_hba.conf Peter Eisentraut <[email protected]> 2017-03-06 19:53 [PATCH] Enable replication connections by default in pg_hba.conf Peter Eisentraut <[email protected]> 2017-03-06 19:53 [PATCH] Enable replication connections by default in pg_hba.conf Peter Eisentraut <[email protected]> 2017-03-06 19:53 [PATCH] Enable replication connections by default in pg_hba.conf Peter Eisentraut <[email protected]> 2017-03-06 19:53 [PATCH] Enable replication connections by default in pg_hba.conf Peter Eisentraut <[email protected]> 2017-03-06 19:53 [PATCH] Enable replication connections by default in pg_hba.conf Peter Eisentraut <[email protected]> 2017-03-06 19:53 [PATCH] Enable replication connections by default in pg_hba.conf Peter Eisentraut <[email protected]> 2017-03-06 19:53 [PATCH] Enable replication connections by default in pg_hba.conf Peter Eisentraut <[email protected]> 2017-03-08 02:07 [PATCH v2] Enable replication connections by default in pg_hba.conf Peter Eisentraut <[email protected]> 2017-03-08 02:07 [PATCH v2] Enable replication connections by default in pg_hba.conf Peter Eisentraut <[email protected]> 2017-03-08 02:07 [PATCH v2] Enable replication connections by default in pg_hba.conf Peter Eisentraut <[email protected]> 2017-03-08 02:07 [PATCH v2] Enable replication connections by default in pg_hba.conf Peter Eisentraut <[email protected]> 2017-03-08 02:07 [PATCH v2] Enable replication connections by default in pg_hba.conf Peter Eisentraut <[email protected]> 2017-03-08 02:07 [PATCH v2] Enable replication connections by default in pg_hba.conf Peter Eisentraut <[email protected]> 2017-03-08 02:07 [PATCH v2] Enable replication connections by default in pg_hba.conf Peter Eisentraut <[email protected]> 2017-03-08 02:07 [PATCH v2] Enable replication connections by default in pg_hba.conf Peter Eisentraut <[email protected]> 2017-03-08 02:07 [PATCH v2] Enable replication connections by default in pg_hba.conf Peter Eisentraut <[email protected]> 2017-03-08 02:07 [PATCH v2] Enable replication connections by default in pg_hba.conf Peter Eisentraut <[email protected]> 2017-03-08 02:07 [PATCH v2] Enable replication connections by default in pg_hba.conf Peter Eisentraut <[email protected]> 2017-03-08 02:07 [PATCH v2] Enable replication connections by default in pg_hba.conf Peter Eisentraut <[email protected]> 2017-03-08 02:07 [PATCH v2] Enable replication connections by default in pg_hba.conf Peter Eisentraut <[email protected]> 2017-03-08 02:07 [PATCH v2] Enable replication connections by default in pg_hba.conf Peter Eisentraut <[email protected]> 2017-03-08 02:07 [PATCH v2] Enable replication connections by default in pg_hba.conf Peter Eisentraut <[email protected]> 2017-03-08 02:07 [PATCH v2] Enable replication connections by default in pg_hba.conf Peter Eisentraut <[email protected]> 2017-03-08 02:07 [PATCH v2] Enable replication connections by default in pg_hba.conf Peter Eisentraut <[email protected]> 2017-03-08 02:07 [PATCH v2] Enable replication connections by default in pg_hba.conf Peter Eisentraut <[email protected]> 2024-08-26 04:32 [PATCH v21 3/8] Row pattern recognition patch (rewriter). Tatsuo Ishii <[email protected]>
This inbox is served by agora; see mirroring instructions for how to clone and mirror all data and code used for this inbox