如何实现特定列脱敏?这两种方法你都要会
摘要:有些情况下,有些表的特定列含有敏感数据,如何让特定的人看到特定的数据呢?
1 需求
有些情况下,有些表的特定列含有敏感数据(如用户信息表中,用户手机号),自然,我们只想让“管理员”用户看到这些敏感数据,其他用户我们希望其看到“处理后的”—— 脱敏的数据。
2 实现方案介绍
方案1: 使用pg匿名化插件postgresql_anonymizer;
方案2: 使用视图进行脱敏;
2.1 方案1: 使用pg匿名化插件postgresql_anonymizer
(示例来自插件官方文档)
2.2 方案2:使用视图进行脱敏
(示例来自本地开发环境)
结果如下:
3 优缺点比较
总的来看,喜欢“偷懒”、喜欢尝鲜的话,可以使用 postgresql_anonymizer 插件;但如果追求稳定,建议使用视图来实现。
4 参考
1. PostgreSQL: 匿名化(Anonymizer)工具 官网:https://labs.dalibo.com/postgresql_anonymizer
2. PostgreSQL: 匿名化(Anonymizer)工具 官方文档: https://postgresql-anonymizer.readthedocs.io/en/stable/
版权声明: 本文为 InfoQ 作者【华为云开发者社区】的原创文章。
原文链接:【http://xie.infoq.cn/article/a6c8b34a5d3fe8a38bdea8a7f】。文章转载请联系作者。
评论