问题标签 [snowflake-data-masking]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
snowflake-cloud-data-platform - 如何对具有多个层和/或数组的 Json 对象使用动态数据屏蔽
我能够使用以下内容为顶级键的 json 列创建数据屏蔽策略,但无法找到更深层的 json。有人做过吗?
Ifobject_insert
是在 json 字段上创建屏蔽策略的唯一方法,看起来它仅限于顶级键。
我正在使用On Variant Data的示例
同样作为副作用,当原始字段中不存在键时,此策略会将键插入 json 字段。能够消除这一点将是可取的。
编辑:
我在上面的例子中使用了这个 json
{"regular_field": "regular data", "pii_field": "pii data"}
我试图在 json 中屏蔽 LastNames,如下所示
snowflake-cloud-data-platform - 雪花 object_construct 卸载键顺序应保持不变。如何保持不按字母顺序排列?
我使用下面的雪花复制命令返回一个内容为 json 的文件
复制到@elasticsearch/product/sf_index from (select object_construct( 'id',id, alpha,'alpha' )from table limit 1) file_format = (type = json, COMPRESSION=NONE), overwrite=TRUE, single = TRUE,最大文件大小=5368709120;
json文件中的输出是
我希望在这里保留订单,而不是按字母顺序?像这样
有什么解决办法??提前致谢
snowflake-cloud-data-platform - 雪花动态屏蔽屏蔽底层表:派生表未屏蔽,视图为空?
我有一个原始表,其中包含 json 数据的变体列。有一些普通视图(不是物化视图)和表是使用原始表中的 json 事件创建的。
当角色为 时,在原始表的变量列上使用 UDF 应用屏蔽策略后bi_analyst
,我发现了两个问题:
- 从基础表派生的表不被
bi_analyst
角色屏蔽; - 使用基础表派生的视图因
bi_analyst
角色变为空;
有谁知道为什么会这样?这个动态屏蔽功能不支持基础表上的视图吗?
我想做的是屏蔽底层数据,并且来自它的所有表和视图也被指定的角色屏蔽。处理这些表很容易,因为我也可以对它们应用屏蔽策略。
但是,我对这些观点一无所知。我如何仍然可以访问具有该角色的视图,该角色应该能够看到数据但不能看到敏感列?
UDF 是:
屏蔽政策是:
对原始数据设置屏蔽策略的 sql 命令是:
屏蔽策略应用于变量列EVERYTHING
,其数据结构如下所示:
导数表是:
一个观点是:
结果是RAW_DATA
被屏蔽了,TABLE_A
根本不被屏蔽,查询带角色的VIEW_A
数据时返回0行。BI_ANALYST
snowflake-cloud-data-platform - 在雪花中检索帐户的所有可用屏蔽策略
如何获取雪花中特定帐户中创建的所有屏蔽策略?有什么观点可以看吗?
显示屏蔽策略只检索与策略相关的数据,而不是它的应用位置?
如何获取所有策略以及在哪些表的哪些列中应用它?
snowflake-cloud-data-platform - 查询应用了数据屏蔽的列
我为 PII 数据创建了屏蔽策略。然后我将它应用到这样的表中:
现在我希望能够对ALTER TABLE... SET MASKING POLICY
包含的 DDL 脚本进行逆向工程。
有没有办法查询应用了屏蔽策略的列的列表(以及它使用的屏蔽)?
编辑:对于这种情况,用户拥有表的所有权,但没有屏蔽策略。查询这些信息需要什么权限?
snowflake-cloud-data-platform - 如何授予非管理员用户在 Snowflake 中查看完整的登录历史记录
我是雪花的新手,作为一名 DBA,我获得了 ACCOUNTADMIN 访问权限。我已通过角色向我们的安全应用程序用户授予对 information_schema.login_history 和 information_schema.query_history 的读取访问权限。
用户可以登录和查询以上视图。但是,当查询以上视图时,该帐户无法查看所有行。只返回该用户的登录历史,该用户的查询历史。我从我的最后测试了它,将角色从 ACCOUNTADMIN 切换到我创建的读取角色,我看到了同样的事情。
谁能告诉我授予该角色需要哪些权限,以便使用该角色的任何人都可以看到所有登录历史记录?
snowflake-cloud-data-platform - Snowflake SQL - 如何将十进制值表示为指数值
我的雪花表中有十进制值,需要显示指数值
0.9525816643 --> 9.523E-1
0.9714426928 --> 9.714E-1
759023.356783 --> 7.59023E5
我可以在雪花中使用哪个函数将十进制转换为指数值?