【问题标题】:Data Masking policy error on shared database共享数据库上的数据屏蔽策略错误
【发布时间】:2021-12-27 18:47:15
【问题描述】:

我正在尝试在我们只能访问视图的共享数据库上应用数据屏蔽策略。但是我也向数据库提供了授权。我无法应用此屏蔽策略

这是我的代码

create or replace masking policy Policy_name as (val string) returns string ->
case
when current_role() in ('SECURITYADMIN') then val
else '*********'
end;

alter table if exists TABLE_NAME modify column PHN_NUMBER set MASKING POLICY Policy_name PHN_NUMBER;

错误:

SQL execution error: Creating masking_policy on shared database 'DATABASE_NAME' is not allowed.

【问题讨论】:

    标签: database snowflake-cloud-data-platform shared masking data-masking


    【解决方案1】:

    limitation of DATA MASKING section 说你不能这样做。

    数据共享使用者不能将屏蔽策略应用于共享数据库或表。作为一种解决方法,导入共享数据库或表并将屏蔽策略应用于该共享表列的本地视图。

    【讨论】:

    • 感谢 simeon 提供的信息。我们能否定义有权访问可能包含 PII 的共享视图的角色,并在用户访问级别对其进行管理。我们可以限制用户级别访问来自共享的那些表或视图吗?我们是否能够定义任何角色并限制共享数据库中的用户级别访问
    • 我不能绝对回答,前几天晚上我刚刚阅读了手册的这一部分,所以知道你不能直接在导入的表上屏蔽,但似乎如上所述,你可以添加一个视图表和掩码,因此将授予权限移动到表但到视图,从而以这种方式控制访问。
    • 谢谢西蒙。由于它是一个共享数据库,我们无法访问表,因为我们只能访问视图。我们希望在这个数据库中使用某种方式来屏蔽此 PII 数据或需要完成任何 RBAC。您有什么建议
    猜你喜欢
    • 1970-01-01
    • 2022-01-03
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-03-29
    • 1970-01-01
    • 2013-10-30
    • 1970-01-01
    相关资源
    最近更新 更多