TEXT 列中的数据屏蔽

Posted

技术标签:

【中文标题】TEXT 列中的数据屏蔽【英文标题】:Data Masking in TEXT Column 【发布时间】:2020-12-15 15:59:41 【问题描述】:

我的 TEXT 字段中有 PII 元素,需要在我的雪花数据库中进行屏蔽/清理。我可以使用 javascript 来实现这一点,但需要使用 SQL UDF 函数来实现。

例如: 我是约翰,这是我的 SSN 111-11-1111

输出:

我是XXXX,这是我的XXX XXX-XX-XXXX

【问题讨论】:

你在说什么语言、数据库等?屏蔽数据有多种方式,我可以根据每个字段自行确定。 在雪花中使用标量 SQL UDF 函数。 您是否已经对此进行了审核? Using Dynamic Data Masking BTW,UDF 代表用户定义的函数,所以在 UDF 之后说“函数”是多余的。 :P 嗨@Andrew,是的,我经历过。我分享了有关屏蔽政策的信息。就我而言,我需要按照预期的方式屏蔽数据 还在吗,@Naveenraj?你试过我的答案了吗? 【参考方案1】:

如果您想用* 替换任何字母或数字,我认为您可以使用以下内容:

case
  when current_role() in ('ADMIN') then val
  else regexp_replace(val, '[A-Za-z\d]', '*')
end;

本文中的更多信息:

https://docs.snowflake.com/en/user-guide/security-column-ddm-use.html

【讨论】:

以上是关于TEXT 列中的数据屏蔽的主要内容,如果未能解决你的问题,请参考以下文章

在 Hive 视图中屏蔽子字符串

PrimeFaces 数据表中的屏蔽数字

在雪花中检索帐户的所有可用屏蔽策略

如何使用 jQuery 创建屏蔽输入?

markdown Symfony:屏蔽日志文件中的敏感数据

雪花动态屏蔽屏蔽底层表:派生表未屏蔽,视图为空?