如何将密码存储在 Redshift 的表中?
Posted
技术标签:
【中文标题】如何将密码存储在 Redshift 的表中?【英文标题】:How to store password in a table on Redshift? 【发布时间】:2014-10-06 11:59:59 【问题描述】:有什么方法可以将用户的密码以加密格式存储在 Redshift 数据库表中?
【问题讨论】:
【参考方案1】:您将通过以下查询找到现有用户及其密码的列表(不是密码 - 始终读取为 ******** )
select * from PG_USER
pg_shadow 表存储了实际的密码。如果你是超级用户,那么你可以访问这个表。 它已通过列。
如果密码已加密,此列将以字符串 md5 开头,后跟 32 个字符的十六进制 MD5 哈希。 MD5 散列将用户的密码与用户名连接起来。例如,如果用户 joe 有密码 xyzzy,PostgreSQL 将存储 xyzzyjoe 的 md5 哈希。不遵循该格式的密码被假定为未加密。
【讨论】:
感谢您的回复。我们可以解密吗? .有什么选择吗? 请注意,在 redshift 中,您实际上无法查看 pg_shadow 表,因为 AWS 不授予您的根用户访问该表的权限。只有在独立的 postgres 中才能查看此表 我想我错过了一些理解。您能否说明如何构建一个用户表(不是 redshift 用户,而是一个应用程序用户),我想在其中加密密码列,就像 PG_USER 表一样。以上是关于如何将密码存储在 Redshift 的表中?的主要内容,如果未能解决你的问题,请参考以下文章
REDSHIFT:如何生成一系列数字而不在 redshift (Postgres 8.0.2) 中创建名为“数字”的表?