【问题标题】:SQL Server 2016 Evaluation and Dynamic Data MaskSQL Server 2016 评估和动态数据掩码
【发布时间】:2016-09-16 18:24:04
【问题描述】:
我想试用动态数据掩码,看看它是否真的符合我们的需求。我已经下载了评估版 -
Microsoft SQL Server 2016 (RTM) - 13.0.1601.5 (X64) Apr 29 2016 23:23:58 版权所有 (c) Microsoft Corporation Enterprise Evaluation Edition(64 位)
我已打开跟踪标志 209 和 219;但仍然无法屏蔽数据。
此功能在 eval 版本中不起作用还是我遗漏了什么?
【问题讨论】:
标签:
sql-server-2016
data-masking
【解决方案1】:
不确定 eval,但它应该可以工作。将 SSMS 2016 与 WideWorldImporters 数据库一起使用,您必须在列上定义掩码,然后以无权取消掩码数据的用户身份进行查询。这是再次使用 SSMS 2016 和 WWI 的示例查询:
ALTER TABLE [Sales].[Orders]
ALTER COLUMN [ContactPersonID] ADD MASKED WITH (FUNCTION = 'random(1,12)');
SELECT TOP 1000 [OrderID]
,[CustomerID]
,[SalespersonPersonID]
,[PickedByPersonID]
,[ContactPersonID]
,[BackorderOrderID]
,[OrderDate]
,[ExpectedDeliveryDate]
,[CustomerPurchaseOrderNumber]
,[IsUndersupplyBackordered]
,[Comments]
,[DeliveryInstructions]
,[InternalComments]
,[PickingCompletedWhen]
,[LastEditedBy]
,[LastEditedWhen]
FROM [WideWorldImporters].[Sales].[Orders]
CREATE USER TestUser WITHOUT LOGIN;
GRANT SELECT ON [WideWorldImporters].[Sales].[Orders] TO TestUser;
EXECUTE AS USER = 'TestUser';
SELECT * FROM [WideWorldImporters].[Sales].[Orders]
REVERT;