您的位置:寻梦网首页编程乐园数据库PostgreSQL 7.2 Documentation

pg_passwd

Name

pg_passwd -- 修改从 PostgreSQL 口令文件

Synopsis

pg_passwd filename

描述

pg_passwd 是一个操作平面口令文件的工具,这些文件可以控制 PostgreSQL 服务器的客户认证. 有关这种认证机制的更多细节请参阅 管理员手册

每个文本口令文件的格式是每条记录一行; 每条记录的字段用冒号分隔.第一个字段是用户名, 第二个字段是加密的口令.其它字段被忽略 (这样就便于在使用相似格式的口令文件的应用之间共享). pg_passwd 的作用就是 让用户可以交互地往这样的文件里增加记录,修改现有记录的口令, 以及加密口令等.

把口令文件当做 pg_passwd 命令的参数提供给它. 如果想被 PostgreSQL 使用, 那么该文件需要放在服务器的数据目录中,而且该文件的本名 应该在 pg_hba.conf 的访问控制文件中声明.


$
 

pg_passwd /usr/local/pgsql/data/passwords



File "/usr/local/pgsql/data/passwords" does not exist.  Create? (y/n):
 

y



Username:
 

guest



Password:


Re-enter password:

这里的 Password: Re-enter password: 提示符要求输入一样的口令, 而且它们不会在终端上回显. 还要注意口令局限在八个有效的字符,这是标准 crypt(3) 库过程的 限制.

原来的口令文件该名为 passwords.bk

要使用这个口令文件,把类似下面这行放在 pg_hba.conf

host  mydb     133.65.96.250   255.255.255.255 password passwords

上面这一行允许从 133.65.96.250 来的用户使用在 passwords (而且只有在里面的用户可以访问.) 里列出来的口令访问。

注意: 在口令文件里有空口令域的记录存在也很有用. (这和没有口令是两码事.) 这些记录允许你限制那些可以访问系统的用户. 这些记录不能用 pg_passwd 管理, 但总是可能手工编辑口令文件.

又见

PostgreSQL 管理员手册