数据屏蔽 - 地理位置

时间:2017-03-20 17:00:09

标签: sql sql-server-2016 data-masking

目前正在测试SQL 2016和动态数据屏蔽功能。但是,不支持的数据类型之一是空间数据类型。我有一个地理位置数据类型列,我将如何掩盖这个?或者什么是掩盖这个的好方法?

我非常喜欢2016年的动态遮蔽功能,并相信这将是一个很好的方式来隐藏"或者在较低环境中的PI相关数据,但这个路障阻碍了向2016年的迁移。

2 个答案:

答案 0 :(得分:1)

您可以在SQL Server中尝试使用DDM的一些外部工具,例如DataSunrise(免费试用)或Hexatier。此解决方案可用作反向代理。

答案 1 :(得分:0)

您可以使用default()功能屏蔽地理位置。这是一个例子......

CREATE TABLE ##SpatialTable   
    ( id int IDENTITY (1,1),  
    GeogCol1 geography)

insert into ##SpatialTable(GeogCol1)
values (geography::STGeomFromText('LINESTRING(-122.360 47.656, -122.343 47.656 )', 4326));


select * from ##SpatialTable
--RESULT = 0xE610000001148716D9CEF7D34740D7A3703D0A975EC08716D9CEF7D34740CBA145B6F3955EC0


alter table ##SpatialTable
alter column GeogCol1 add masked with (FUNCTION = 'default()')

--Now, select the data using credentials of a user without GRANT UNMASK assigned to them for this table
select * from ##SpatialTable
--RESULT = 0x00

drop table ##SpatialTable