Postgres 基于主机的身份验证如何工作?
How does Postgres host based authentication work?
我正在安装需要 PostgresSQL 的 DSPACE。
请看这个link:DSPACE INSTALL
它说:
Then tighten up security a bit by editing pg_hba.conf and adding this line:
host dspace dspace 127.0.0.1 255.255.255.255 md5.
我已经在互联网上阅读了上述行的工作原理。它需要一个连接类型,后跟数据库 name/user 名称,后跟 IP 地址和身份验证方案。
我的问题是:这不应该是本地(代替主机)连接,因为 dspace 用户是 运行 本地的吗?
谁能一步一步地告诉我收到请求时会发生什么?
dspace 用户将使用 md5 提交请求的说明在哪里?
首先,pg_hba.conf
行末尾有一个 .
。那是语法错误。
使用local
还是host
取决于
此 DSPACE 使用的 API(JDBC,例如,不允许 UNIX 套接字连接)
DSPACE 使用的是什么连接字符串
如果您可以指定一个套接字目录作为主机名,您可能可以使用 UNIX 套接字,这样效率会更高。
如果DSPACE使用支持md5
认证的驱动程序,流程如下:
客户端向服务器发送一个包含用户和数据库的连接数据包
服务器请求md5
身份验证并发送随机"salt"字符串
客户端使用来自服务器的盐计算密码的 MD5 散列并将结果发送到服务器
服务器验证哈希值是否正确
DSpace 使用 JDBC,因此 local
对它不起作用。这里的local
表示一种完全不同的与IP无关,只能寻址本地进程的进程间连接:Unix sockets。 JDBC 仅使用 IP,因此 DSpace 需要一个 host
描述符。
该行末尾的那个句点不应该是其中的一部分。那里的文档不清楚 -- 我已经修复了它。
正如 Laurenz Albe 所指出的,DSpace 并未指定使用 MD5 密码哈希。 PostgreSQL 服务器根据您在 pg_hba.conf
.
中指定的内容控制将尝试哪些方法
我正在安装需要 PostgresSQL 的 DSPACE。
请看这个link:DSPACE INSTALL
它说:
Then tighten up security a bit by editing pg_hba.conf and adding this line:
host dspace dspace 127.0.0.1 255.255.255.255 md5.
我已经在互联网上阅读了上述行的工作原理。它需要一个连接类型,后跟数据库 name/user 名称,后跟 IP 地址和身份验证方案。
我的问题是:这不应该是本地(代替主机)连接,因为 dspace 用户是 运行 本地的吗?
谁能一步一步地告诉我收到请求时会发生什么? dspace 用户将使用 md5 提交请求的说明在哪里?
首先,pg_hba.conf
行末尾有一个 .
。那是语法错误。
使用local
还是host
取决于
此 DSPACE 使用的 API(JDBC,例如,不允许 UNIX 套接字连接)
DSPACE 使用的是什么连接字符串
如果您可以指定一个套接字目录作为主机名,您可能可以使用 UNIX 套接字,这样效率会更高。
如果DSPACE使用支持md5
认证的驱动程序,流程如下:
客户端向服务器发送一个包含用户和数据库的连接数据包
服务器请求
md5
身份验证并发送随机"salt"字符串客户端使用来自服务器的盐计算密码的 MD5 散列并将结果发送到服务器
服务器验证哈希值是否正确
DSpace 使用 JDBC,因此 local
对它不起作用。这里的local
表示一种完全不同的与IP无关,只能寻址本地进程的进程间连接:Unix sockets。 JDBC 仅使用 IP,因此 DSpace 需要一个 host
描述符。
该行末尾的那个句点不应该是其中的一部分。那里的文档不清楚 -- 我已经修复了它。
正如 Laurenz Albe 所指出的,DSpace 并未指定使用 MD5 密码哈希。 PostgreSQL 服务器根据您在 pg_hba.conf
.