【发布时间】:2019-04-29 08:59:38
【问题描述】:
我需要保留一个用户表,以授予对必须屏蔽密码字段的应用程序的访问权限。
怎么办?
示例:如果您在 Redshift 中查询 select * from PG_USER;,您会看到密码列值显示为 *****。如何为我的自定义表格做到这一点?
【问题讨论】:
-
将其存储在不同的表中或在列中加密。不要在任何地方存储明文密码。并且只将它们放在用户无权访问的地方。
-
如何在列级别加密?
-
您没有直接在表中加密密码。这应该由将数据插入表的脚本来处理。完成身份验证后,您将表中的加密数据与提供的加密密码进行比较。如果加密算法(或者很可能是密码的哈希)相同,那么就会匹配。
-
@GordonLinoff “将其存储在不同的表中”是什么意思?您的意思是创建一个在列出用户及其其他详细信息时不显示密码列的视图?
-
@EdgarsT。我正在考虑做完全相同的事情,但将其保留在我的优先级列表的第二位,首先是一个简单的掩蔽。所以与此同时,我想到了这个查询,即 Redshift 如何为我在问题中提到的表执行此操作,当 select * 完成时他们如何屏蔽它?我不允许看到它的 SQL 源代码,这可以帮助我弄清楚屏蔽逻辑。有什么帮助吗?
标签: sql amazon-web-services amazon-redshift data-masking