1. 程式人生 > >怎麼設定SQL資料庫使用者許可權

怎麼設定SQL資料庫使用者許可權

1.我新建了一個使用者,在右鍵->屬性->資料庫角色裡有8個單選按鈕,我希望這個使用者只有執行的許可權,應該選上哪些是最合理的,我一個一個測好像不全面。
2.關於遠端維護方面的,高手順便說下怎麼做才能比較好的實現資料既能傳送執行,又不至於洩漏資料
高手指教

Q : 資料庫安全管理範例! 
主要解答者: zjcxc 提交人: zjcxc 
感謝: zjcxc 
稽核者: pbsql 社群對應貼子: 檢視 
     A :  
首先,做好使用者安全:  
 
--簡單的,只允許sql的使用者訪問sql(防止利用administrator組使用者訪問)  
 
1.企業管理器--右鍵SQL例項--屬性--安全性--身份驗證--選擇"sql  server和windows"--確定  
 
2.企業管理器--安全性--登陸--右鍵sa--設定密碼--其他使用者也設定密碼  
 
3.刪除使用者:  
           BUILTIN\Administrators  
           <機器名>\Administrator  --這個使用者不一定有  
   這樣可以防止用windows身份登陸SQL  
 
4.設定進入企業管理器需要輸入密碼  
在企業管理器中  
           --右鍵你的伺服器例項(就是那個有綠色圖示的)  
           --編輯SQL  Server註冊屬性  
           --選擇"使用  SQL  Server  身份驗證"  
           --並勾選"總是提示輸入登入名和密碼"  
           --確定  
 
--經過上面的設定,你的SQL  Server基本上算是安全了.  
------------------------------------------------------------------------  
 
其次,改預設埠,隱藏伺服器,減少被攻擊的可能性  
 
SQL  Server伺服器  
           --開始  
           --程式  
           --Microsoft  SQL  Server  
           --伺服器網路實用工具  
           --啟用的協議中"TCP/IP"  
           --屬性  
           --預設埠,輸入一個自已定義的埠,比如2433  
           --勾選隱藏伺服器  
 
----------------------------------------------------------------------------  
--管好sql的使用者,防止訪問他不該訪問的資料庫(總控制,明細還可以控制他對於某個資料庫的具體物件具有的許可權)  
 
--切換到你新增的使用者要控制的資料庫  
use  你的庫名  
go  
 
--新增使用者  
exec  sp_addlogin  'test'            --新增登入  
exec  sp_grantdbaccess  N'test'            --使其成為當前資料庫的合法使用者  
exec  sp_addrolemember  N'db_owner',  N'test'            --授予對自己資料庫的所有許可權  
 
--這樣建立的使用者就只能訪問自己的資料庫,及資料庫中包含了guest使用者的公共表  
go  
 
--刪除測試使用者  
exec  sp_revokedbaccess  N'test'            --移除對資料庫的訪問許可權  
exec  sp_droplogin  N'test'            --刪除登入  
 
---------------------------------------------------------------------------  
最後一步,為具體的使用者設定具體的訪問許可權,這個可以參考下面的最簡示例:  
--新增  
--新增使用者:  
exec  sp_addlogin  '使用者名稱','密碼','預設資料庫名'  
 
--新增到資料庫  
exec  sp_grantdbaccess  '使用者名稱','資料庫名'  
 
--分本許可權  
grant  insert,select,update,delete  on  table1  to  public