2016-11-29 74 views
0

我正在設置SQL Server Management Studio上特定數據庫的安全權限。一個特定的請求是我們需要隱藏一個特定的數據列,使其不能看到特定的用戶角色。如何在SQL Server Management Studio的表中隱藏特定的列?

我們希望表可以通過用戶角色查看,但我們不希望特定的數據列能夠被該用戶角色查看。

我該如何將該列隱藏到該特定用戶角色?

它是通過查詢還是在該特定表的權限範圍內?

+0

你使用什麼版本的SQL Server? – trailmax

+1

創建一個排除該列的視圖。 – jarlh

+0

@trailmax它是SQL Server 2012 –

回答

5
  • 在不選擇要隱藏的列的表Create a view,使用CREATE VIEW聲明。

    創建一個虛擬表,其內容(列和行)由查詢定義。使用此語句可以在數據庫的一個或多個表中創建數據的視圖。

  • Grant permissions關於該角色的視圖,使用GRANT命令。

    授予對安全主體的權限。

  • Deny permissions上表的角色,使用DENY命令。

    拒絕對委託人的許可。阻止該主體通過其組或角色成員身份繼承權限。

+0

所以我去了數據庫文件夾,然後右鍵單擊視圖並單擊創建一個新視圖。所以我突出顯示了我想保留的所有列,並將我不希望被忽視的列留下,我在哪裏從授予權限開始,然後拒絕權限,因爲我有點困惑。 –

相關問題