我有一种情况,我需要创建一个视图,供最终用户使用,这些最终用户可能具有由 AD 组控制的 PII 和 NON-PII 权限许可。
假设我有 dim_customer,其中包含四列 ID、名称、DoB、国家。当 PII 用户运行时
Select ID, Name, DoB, Country FROM dim_customer
pii 用户应该得到
ID NAME DoB Country
1 John 1999-10-10 US
如果非 PII 用户运行相同的查询,那么他们应该得到
ID NAME DoB Country
1 PII DATA PII DATA US
所以基本上使用相同的视图对象,但数据是根据 pii 间隙显示的。
- 我不想用 pii 和非 pii 后缀创建两个视图。
- 我尝试了列级权限,但这意味着当最终用户尝试上述查询时,他们会收到错误“对名称和 DoB 列没有选择权限”
- 我尝试过数据屏蔽,但显示“XXXX”,我更喜欢“PII 数据”。
我正在寻找一个查询成功运行并显示结果如上的解决方案。
这在 SQL Server 中可行吗?
提前致谢