1. 程式人生 > 實用技巧 >SQL server 身份連線失敗問題

SQL server 身份連線失敗問題

解決“未與信任SQL Server連線相關聯”的問題。 1。在企業管理器中,展開"SQL Server組",滑鼠右鍵點選SQL Server伺服器的名稱
2。選擇"屬性"
3。再選擇"安全性"選項卡
4。在"身份驗證"下,選擇"SQL Server和 Windows"
5。確定,並重新啟動SQL Server服務。 如圖:一度教育:SQL
我還用過新建sql server使用者來登入: sql server新建使用者 exec sp_dropsrvrolemember N'aa', sysadmin
go
exec sp_addsrvrolemember N'aa', securityadmin
go


--作好SQL的安全管理

首先,做好使用者安全:

--簡單的,只允許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' --刪除登入


如果在企業管理器中建立的話,就用:

企業管理器
--安全性--右鍵登入--新建登入

常規項
--名稱中輸入使用者名稱
--
身份驗證方式根據你的需要選擇(如果是使用windows身份驗證,則要先在作業系統的使用者中新建使用者)
--
預設設定中,選擇你新建的使用者要訪問的資料庫名

伺服器角色項
這個裡面不要選擇任何東西

資料庫訪問項
勾選你建立的使用者需要訪問的資料庫名
資料庫角色中允許,勾選"
public","db_ownew"

確定,這樣建好的使用者與上面語句建立的使用者一樣
---------------------------------------------------------------------------

最後一步,為具體的使用者設定具體的訪問許可權,這個可以參考下面的最簡示例:

--新增只允許訪問指定表的使用者:
exec sp_addlogin '使用者名稱','密碼','預設資料庫名'

--新增到資料庫
exec sp_grantdbaccess '使用者名稱'

--分配整表許可權
GRANT SELECT , INSERT , UPDATE , DELETE ON table1 TO [使用者名稱]

--分配許可權到具體的列
GRANT SELECT , UPDATE ON table1(id,AA) TO [使用者名稱]