【SQL Server 2016動(dòng)態(tài)數(shù)據(jù)屏蔽入門】定義屏蔽
我們?cè)谇懊娣謩e介紹了《【SQL Server 2016動(dòng)態(tài)數(shù)據(jù)屏蔽入門】配置動(dòng)態(tài)數(shù)據(jù)屏蔽》和《【SQL Server 2016動(dòng)態(tài)數(shù)據(jù)屏蔽入門】Azure SQL 數(shù)據(jù)庫(kù)V12(預(yù)覽版)的動(dòng)態(tài)數(shù)據(jù)屏蔽》。現(xiàn)在,我們將具體介紹如何定義屏蔽。
在Azure預(yù)覽門戶頁(yè),我們選擇導(dǎo)航路線為“瀏覽全部/SQL數(shù)據(jù)庫(kù)/[數(shù)據(jù)庫(kù)名稱]/動(dòng)態(tài)數(shù)據(jù)屏蔽(預(yù)覽版)”。到這里會(huì)顯示一些預(yù)定義屏蔽功能的摘要說(shuō)明。然后點(diǎn)擊“添加屏蔽”。在字段下拉列表中選中“HomePhone”字段,在“屏蔽域格式”下拉列表中選擇“定制字符串”。使用“0”作為起始顯示字符位置前綴參數(shù),“ XXX-XXX-”作為填充字符串,設(shè)置末尾顯示字符數(shù)為“4”。點(diǎn)擊“新建屏蔽規(guī)則”頁(yè)的“保存”按鈕,然后回到“動(dòng)態(tài)數(shù)據(jù)屏蔽(預(yù)覽版)”頁(yè)面再次點(diǎn)擊保存。門戶會(huì)顯示提示信息表示修改的設(shè)置已生效。

圖15:在Azure SQL數(shù)據(jù)庫(kù)中為“HomePhone”字段創(chuàng)建設(shè)置屏蔽規(guī)則
我們?cè)賮?lái)查詢一下員工表看設(shè)置是否生效。這里要注意,屏蔽規(guī)則應(yīng)用完全生效可能需要一兩分鐘時(shí)間。

圖16:“HomePhone”字段應(yīng)用屏蔽規(guī)則之后查詢員工表結(jié)果
Azure SQL數(shù)據(jù)庫(kù)中屏蔽功能表現(xiàn)與SQL Server 2016 CTP2中結(jié)果一樣。在這一步,很顯然我們也可以像在前面GUI中操作一樣的方式來(lái)定義其它屏蔽規(guī)則。現(xiàn)在,似乎我們必須用門戶頁(yè)GUI來(lái)定義屏蔽規(guī)則,因?yàn)槿绻沂褂肈DL來(lái)定義,雖然語(yǔ)法會(huì)接受通過(guò),但是輸出并沒(méi)有改變。
Azure SQL數(shù)據(jù)庫(kù)內(nèi)置了一些常見(jiàn)的屏蔽規(guī)則,其中就包括了為社會(huì)安全號(hào)碼(SSN)提供的內(nèi)置規(guī)則。我們可以給員工信息表中SSN字段設(shè)置屏蔽,如下圖所示。

圖17:使用內(nèi)置屏蔽規(guī)則應(yīng)用與社會(huì)安全號(hào)碼(SSN)
設(shè)置后查詢結(jié)果如下圖18。

圖18:社會(huì)安全號(hào)碼(SSN)字段配置屏蔽規(guī)則后查詢員工表的結(jié)果
盡管數(shù)據(jù)顯示屏蔽了,但現(xiàn)實(shí)效果不一定是我們想要的格式。這個(gè)屏蔽碼對(duì)SSN字段很有效,該字段域比較寬,而且數(shù)據(jù)中間有破折號(hào)分隔。但是對(duì)于其它字段這個(gè)形式就不一定合適了。圖19展示了對(duì)員工表的“EmpID”字段應(yīng)用屏蔽規(guī)則時(shí)啟用“數(shù)字(隨機(jī)數(shù)字范圍)”選項(xiàng)的配置。

圖19:用數(shù)字(指定范圍內(nèi)隨機(jī)數(shù))作為屏蔽碼應(yīng)用于員工表
很顯然,用隨機(jī)數(shù)據(jù)屏蔽“EmpID”是不現(xiàn)實(shí)的,這里只是為了展示這種內(nèi)置的屏蔽功能。
另外,要注意動(dòng)態(tài)數(shù)據(jù)屏蔽還有一個(gè)選項(xiàng)是設(shè)置特權(quán)用戶的。這里設(shè)置的特權(quán)用戶在顯示數(shù)據(jù)時(shí)不啟用屏蔽規(guī)則。如果要演示這一特性,我們需要?jiǎng)?chuàng)建用戶并另外建立與Azure SQL數(shù)據(jù)庫(kù)的連接。這部分的詳細(xì)操作多少有點(diǎn)偏離本文的主題,用戶創(chuàng)建和模擬演示的步驟還是比較容易的,不再詳述。
【編輯推薦】
- 【SQL Server 2016數(shù)據(jù)加密新功能實(shí)戰(zhàn)】三步配置Always Encrypted安全功能
- 【SQL Server 2016數(shù)據(jù)加密新功能實(shí)戰(zhàn)】如何測(cè)試Always Encrypted安全特性?
- 【SQL Server 2016動(dòng)態(tài)數(shù)據(jù)屏蔽入門】配置動(dòng)態(tài)數(shù)據(jù)屏蔽
- 【SQL Server 2016動(dòng)態(tài)數(shù)據(jù)屏蔽入門】Azure SQL 數(shù)據(jù)庫(kù)V12版的動(dòng)態(tài)數(shù)據(jù)屏蔽
【責(zé)任編輯:honglu TEL:(010)68476606】