在PostgreSQL中,证书认证和基本认证(username/password认证)可以同时存在吗?
In PostgreSQL , can certificate authentication and basic authentication(username/password authentication) co-exist at one time?
是否可以为同一个客户端IP同时配置PostgreSQL的Basic认证和Certificate认证。
我认为不能,因为它们是两种不同的身份验证机制,不能同时共存...因为如果我们配置证书身份验证,那么它不能使用用户名密码进行身份验证,而只能使用证书进行身份验证。
请帮忙。
是的,没错 - 对于给定的连接,您只能使用一种身份验证方法。
是的,您可以指定 clientcert
与任何身份验证方法结合使用。所以 md5 clientcert=verify-full
需要证书和密码。
verify-full 仅在 v12 中引入。在此之前,您只能让它检查证书是否已有效签名,而不是证书上的 CN 是否与所声明的用户名匹配。
我试过自己。
在pg_hba.conf文件中,我们可以为一组IP地址设置MD5认证,为另一组IP地址范围设置cert。
所以 1 个 Postgres 服务器可以针对 2 个不同的 IP 地址进行 2 个不同的身份验证
是否可以为同一个客户端IP同时配置PostgreSQL的Basic认证和Certificate认证。 我认为不能,因为它们是两种不同的身份验证机制,不能同时共存...因为如果我们配置证书身份验证,那么它不能使用用户名密码进行身份验证,而只能使用证书进行身份验证。
请帮忙。
是的,没错 - 对于给定的连接,您只能使用一种身份验证方法。
是的,您可以指定 clientcert
与任何身份验证方法结合使用。所以 md5 clientcert=verify-full
需要证书和密码。
verify-full 仅在 v12 中引入。在此之前,您只能让它检查证书是否已有效签名,而不是证书上的 CN 是否与所声明的用户名匹配。
我试过自己。 在pg_hba.conf文件中,我们可以为一组IP地址设置MD5认证,为另一组IP地址范围设置cert。 所以 1 个 Postgres 服务器可以针对 2 个不同的 IP 地址进行 2 个不同的身份验证