Snowflake - 设置 PII/屏蔽数据的角色

问题描述 投票:0回答:1

请考虑以下几点:

  1. 角色 A 可以查看屏蔽策略 X 允许的屏蔽字段。
  2. 我将角色 A 分配给角色 B,角色 B 无权查看屏蔽字段,因为屏蔽策略 X 不允许。

问题:由于角色 A 现已授予角色 B,现在是否允许角色 B 查看屏蔽字段?

如果上述方法不可行,如果您在 Snowflake 帐户中有多个角色并且并非所有角色都应该看到 PII,那么设置可以查看 PII/屏蔽字段的角色的最佳方法是什么?

sql permissions snowflake-cloud-data-platform
1个回答
0
投票

如果您尚未使用数据库角色,那么我强烈建议您开始使用,因为它们可以让您在设置 RBAC 模型时变得更加轻松。

您需要将数据访问角色与屏蔽策略角色分开。最简单的模型是有 2 个数据库角色:

  • 对数据库中的表和视图具有SELECT权限;我们称之为 DB_RO
  • 另一个是您的屏蔽策略定义中使用的;我们称之为 PI_ALL

您现在可以将 DB_RO 角色授予任何需要能够从此数据库中选择数据的角色。

对于任何还需要能够查看此数据库中的屏蔽数据的角色,您还为其授予 PI_ALL 角色。

如果出于某种原因,您将 PI_ALL 角色授予了一个不具有 DB_RO 角色的角色,则该角色不会产生任何效果 - 因为该角色将无法选择数据库中的任何数据

© www.soinside.com 2019 - 2024. All rights reserved.