如何在Redshift中基于pg_user_info创建视图查询用户详情?
从Redshift的pg_user_info导出完整用户账户信息
核心查询语句
直接查询pg_user_info系统视图就能获取所需的全量用户详情(包括活跃状态),执行以下SQL:
SELECT usename AS 用户名, usesysid AS 用户ID, usecreatedb AS 允许创建数据库, usesuper AS 超级用户权限, usecatupd AS 允许修改系统目录, valuntil AS 密码过期时间, is_active AS 账户是否活跃, created AS 账户创建时间 FROM pg_user_info ORDER BY usename;
关键字段说明
is_active:返回布尔值,true代表活跃账户,false代表已禁用账户- 该视图包含比
pg_user更完整的账户属性,比如密码有效期、账户创建时间等
权限问题解决(针对自定义角色失败的情况)
如果当前用户无法访问pg_user_info,无需创建自定义角色,用超级用户(如默认的awsuser)执行以下语句授予权限即可:
GRANT SELECT ON pg_user_info TO 你的用户名;
切换回你的账户后就能正常查询。
内容的提问来源于stack exchange,提问作者performwanty
相关产品推荐
相关产品推荐

