掃二維碼與項目經(jīng)理溝通
我們在微信上24小時期待你的聲音
解答本文疑問/技術(shù)咨詢/運營咨詢/技術(shù)建議/互聯(lián)網(wǎng)交流
ADO.NET經(jīng)過長時間的發(fā)展,很多用戶都很了解ADO.NET SQL Server了,這里我發(fā)表一下個人理解,和大家討論討論。ADO.NET SQL Server身份驗證支持兩種模式,Windows 身份驗證模式和混合模式。
◆Windows 身份驗證是默認模式(通常稱為集成安全),因為此 SQL Server 安全模型與 Windows 高度集成。信任特定 Windows 用戶和組帳戶登錄 SQL Server。已經(jīng)過身份驗證的 Windows 用戶不必提供附加的憑據(jù)。
◆混合模式支持通過 Windows 和 SQL Server 進行的身份驗證。用戶名和密碼對保留在 SQL Server 中。

全州網(wǎng)站制作公司哪家好,找成都創(chuàng)新互聯(lián)!從網(wǎng)頁設(shè)計、網(wǎng)站建設(shè)、微信開發(fā)、APP開發(fā)、響應(yīng)式網(wǎng)站開發(fā)等網(wǎng)站項目制作,到程序開發(fā),運營維護。成都創(chuàng)新互聯(lián)2013年至今到現(xiàn)在10年的時間,我們擁有了豐富的建站經(jīng)驗和運維經(jīng)驗,來保證我們的工作的順利進行。專注于網(wǎng)站建設(shè)就選成都創(chuàng)新互聯(lián)。
我們建議盡可能使用 Windows 身份驗證。Windows 身份驗證使用一系列加密消息驗證 SQL Server 中的用戶。使用 SQL Server 登錄時,會通過網(wǎng)絡(luò)傳遞 SQL Server 登錄名和密碼,這樣會降低它們的安全性。使用 Windows 身份驗證,已經(jīng)登錄到 Windows 的用戶不必再單獨登錄到 SQL Server。下面的 SqlConnection.ConnectionString 可指定 Windows 身份驗證,而無需用戶名或密碼。
- "Server=MSSQL1;Database=AdventureWorks;Integrated Security=true;
登錄名與數(shù)據(jù)庫用戶名不同。您必須通過單獨的操作將登錄或 Windows 組映射到數(shù)據(jù)庫用戶或角色。然后向用戶或角色授予訪問數(shù)據(jù)庫對象的權(quán)限。
ADO.NET SQL Server身份驗證方案
在下列情形中,Windows 身份驗證通常為最佳選擇:
◆存在域控制器。
◆應(yīng)用程序和數(shù)據(jù)庫位于同一臺計算機上。
◆您正在使用 SQL Server Express 的實例。
SQL Server 登錄常常在以下情況中使用:
◆您有工作組。
◆用戶從其他不受信任的域進行連接。
◆Internet 應(yīng)用程序(例如 ASP.NET)。
指定 Windows 身份驗證不會禁用 SQL Server 登錄。使用 ALTER LOGIN DISABLE Transact-SQL 語句會禁用具有高特權(quán)的 SQL Server 登錄。
ADO.NET SQL Server身份驗證登錄類型
SQL Server 2000 支持三種登錄類型:
◆本地 Windows 用戶帳戶或受信任的域帳戶。SQL Server 依賴 Windows 來對 Windows 用戶帳戶進行身份驗證。
◆Windows 組。向 Windows 組授予訪問權(quán)限會向作為該組的成員的所有 Windows 用戶登錄授予訪問權(quán)限。
◆SQL Server 登錄。SQL Server 將用戶名和密碼的哈希形式都存儲在 master 數(shù)據(jù)庫中,使用內(nèi)部身份驗證方法驗證嘗試的登錄。
混合模式身份驗證
如果您必須使用混合模式身份驗證,則必須創(chuàng)建 SQL Server 登錄名,將其存儲在 SQL Server 中。然后必須在運行時提供 SQL Server 用戶名和密碼。SQL Server 使用名為 sa(“系統(tǒng)管理員”的縮寫)的 SQL Server 登錄進行安裝。為 sa 登錄分配一個強密碼,并且不要在應(yīng)用程序中使用 sa 登錄。sa 登錄名會映射到 sysadmin 固定服務(wù)器角色,它對整個服務(wù)器有不能撤銷的管理憑據(jù)。如果攻擊者以系統(tǒng)管理員的身份獲取了訪問權(quán)限,則可能造成的危害是無法預(yù)計的。
#T#SQL Server 2005 為在 Windows Server 2003 或更高版本上運行的 SQL Server 登錄引入了 Windows 密碼策略機制。密碼復(fù)雜性策略通過增加可用密碼的數(shù)目來阻止暴力攻擊。SQL Server 2005 可將 Windows Server 2003 中使用的相同的復(fù)雜性和到期策略應(yīng)用到 SQL Server 中使用的密碼。連接來自用戶輸入的連接字符串會使您遭受連接字符串注入攻擊。可使用 SqlConnectionStringBuilder 在運行時創(chuàng)建語法構(gòu)成有效的連接字符串。

我們在微信上24小時期待你的聲音
解答本文疑問/技術(shù)咨詢/運營咨詢/技術(shù)建議/互聯(lián)網(wǎng)交流