Skip to content

Commit

Permalink
Merge pull request #941 from f3nry/master
Browse files Browse the repository at this point in the history
MODULES-6194 - Add scram-sha-256 as a valid pg_hba_rule auth method
  • Loading branch information
eputnam committed Dec 7, 2017
2 parents bf1cbf0 + 9ca61e1 commit 0aff30d
Show file tree
Hide file tree
Showing 2 changed files with 32 additions and 1 deletion.
3 changes: 2 additions & 1 deletion manifests/server/pg_hba_rule.pp
Expand Up @@ -33,6 +33,7 @@
}

$allowed_auth_methods = $postgresql_version ? {
'10' => ['trust', 'reject', 'scram-sha-256', 'md5', 'password', 'gss', 'sspi', 'ident', 'peer', 'ldap', 'radius', 'cert', 'pam', 'bsd'],
'9.6' => ['trust', 'reject', 'md5', 'password', 'gss', 'sspi', 'ident', 'peer', 'ldap', 'radius', 'cert', 'pam', 'bsd'],
'9.5' => ['trust', 'reject', 'md5', 'password', 'gss', 'sspi', 'ident', 'peer', 'ldap', 'radius', 'cert', 'pam'],
'9.4' => ['trust', 'reject', 'md5', 'password', 'gss', 'sspi', 'ident', 'peer', 'ldap', 'radius', 'cert', 'pam'],
Expand All @@ -44,7 +45,7 @@
'8.3' => ['trust', 'reject', 'md5', 'crypt', 'password', 'gss', 'sspi', 'krb5', 'ident', 'ldap', 'pam'],
'8.2' => ['trust', 'reject', 'md5', 'crypt', 'password', 'krb5', 'ident', 'ldap', 'pam'],
'8.1' => ['trust', 'reject', 'md5', 'crypt', 'password', 'krb5', 'ident', 'pam'],
default => ['trust', 'reject', 'md5', 'password', 'gss', 'sspi', 'krb5', 'ident', 'peer', 'ldap', 'radius', 'cert', 'pam', 'crypt', 'bsd']
default => ['trust', 'reject', 'scram-sha-256', 'md5', 'password', 'gss', 'sspi', 'krb5', 'ident', 'peer', 'ldap', 'radius', 'cert', 'pam', 'crypt', 'bsd']
}

assert_type(Enum[$allowed_auth_methods], $auth_method)
Expand Down
30 changes: 30 additions & 0 deletions spec/unit/defines/server/pg_hba_rule_spec.rb
Expand Up @@ -122,5 +122,35 @@ class { 'postgresql::server': }
end
end

context 'allows scram-sha-256 on postgres 10' do
let :pre_condition do
<<-EOS
class { 'postgresql::globals':
version => '10',
}
class { 'postgresql::server': }
EOS
end

let :params do
{
:type => 'local',
:database => 'all',
:user => 'all',
:address => '0.0.0.0/0',
:auth_method => 'scram-sha-256',
:target => target,
}
end

it do
is_expected.to contain_concat__fragment('pg_hba_rule_test').with(
{
:content => /local\s+all\s+all\s+0\.0\.0\.0\/0\s+scram-sha-256/
}
)
end
end

end
end

0 comments on commit 0aff30d

Please sign in to comment.