我想知道如何验证一个角色(用户只是一种特定类型的角色)是否在PostgreSQL 9.1中设置了密码.

我try 了命令\dg+\du+,但它们没有显示任何与密码相关的内容.我还使用了以下查询,但也没有帮助,因为它无关紧要(我很确定postgresql用户在这种情况下没有设置密码):

SELECT * FROM pg_user;

 usename  | usesysid | usecreatedb | usesuper | usecatupd | userepl |  passwd  | valuntil | useconfig 
----------+----------+-------------+----------+-----------+---------+----------+----------+-----------
 postgres |       10 | t           | t        | t         | t       | ******** |          | 
 aef      |    16201 | t           | t        | t         | t       | ******** |          | 

推荐答案

密码存储在pg_shadow

在文件中:

密码(可能加密);如果没有,则为空.有关详细信息,请参见pg_authid

所以你应该select * from pg_shadow;

你还应该判断pg_authid张桌子.

Postgresql相关问答推荐

将几个左连接合并为一个

环境变量在Bash应用程序中没有出现

无法在timscaleDb中创建Hypertable

从数据集中提取彼此喜欢的用户(&Q;)

EF Core添加迁移目标postgreeSQL返回无法加载类型'Microsoft.EntityFrameworkCore.Storage.IRelationalValueBufferFactoryFactory

PostgreSQL 函数按名称传递参数

Postgres内部如何计算月份间隔

转换数组类型

获取 OperationalError: FATAL: sorry, too many clients already using psycopg2

PostgreSQL 中的 DATEADD 等效项

如何使用 ActiveRecord json 字段类型

knex: Select 特定日期范围内的行

整数除法返回 0

如何让 Rails 使用 SSL 连接到 PostgreSQL?

在远程机器上Restore dump

PostgreSQL 获取过go 12 小时的元素

在 postgresql 中获取上个月的数据

使用 PostgreSQL 的 Linq To Sql

由于不支持身份验证类型 10,无法连接到 Postgres DB

基于秒的 Postgresql 日期差异