2013-03-04 71 views
6

我有一個SQL服務器數據庫,很快會成爲兩個數據庫,我將其用於網站。如何在只能訪問一個表的SQL-Server中創建一個用戶,並且只能插入行

我已經擁有一個用戶帳戶,該帳戶對於數據庫1是隻讀的,用於搜索我們的產品庫存。我想爲數據庫2創建一個單獨的帳戶,僅用於表1,只允許插入記錄(不更新或刪除或其他任何內容)。我試圖通過訪問限制來儘可能地多餘(在代碼之上嘗試和防止sql注入,如果某人以某種方式獲取某些東西,我不希望數據庫本身允許它)。

因此底線問題,我如何在SQL服務器中創建一個用戶,該用戶只能訪問y數據庫中的x表,並且只能讀/插入記錄,而沒有別的?

+0

請參閱:http://blogs.lessthandot.com/index.php/DataMgmt/DBAdmin/MSSQLServerAdmin/giving-only-insert-permissions-to – SQLMenace 2013-03-04 15:13:01

回答

4

(1)爲了讓用戶限制訪問一個Ta ble only

GRANT SELECT ON [schemaName].[tableName] to [username] 
Go 

(2)授予INSERT權限。

GRANT INSERT ON [schemaName].[tableName] TO [username] 
0

語法授予單個表的訪問:

GRANT access_type ON table_name TO [user name] 

語法用於撤銷訪問爲單一的表:

REVOKE access_type ON table_name FROM [user name] 

其中ACCESS_TYPE可以是S選擇,插入,刪除...

相關問題