SQL Server 中的身份認證講解

來源:互聯網
上載者:User

SQL Server 中的身份認證講解
TIME:2009-4-22   |   READ:228

 

Microsoft SQL Server 可以在兩種安全(身分識別驗證)模式之一下工作:

  • Windows 身分識別驗證模式(Windows 身分識別驗證)

    Windows 身分識別驗證模式使使用者得以通過 Microsoft Windows NT 4.0 或 Windows 2000 使用者帳戶進行串連。

  • 混合模式(Windows 身分識別驗證和 SQL Server 身分識別驗證)

    混合模式使使用者得以使用 Windows 身分識別驗證或 SQL Server 身分識別驗證與 SQL Server 執行個體串連。在 Windows 身分識別驗證模式或混合模式下,通過 Windows NT 4.0 或 Windows 2000 使用者帳戶串連的使用者可以使用信任連接。

    提供 SQL Server 身分識別驗證是為了向後相容。例如,如果建立單個 Windows 2000 組並向該組添加所需的所有使用者,則需要授予 Windows 2000 組登入到 SQL Server 的許可權以及對任何必需資料庫的存取權限。

Windows 身分識別驗證

當使用者通過 Windows NT 4.0 或 Windows 2000 使用者帳戶進行串連時,SQL Server 通過回叫 Windows NT 4.0 或 Windows 2000 以獲得資訊,重新驗證帳戶名稱和密碼。

SQL Server 通過使用網路使用者的安全特性控制登入訪問,以實現與 Windows NT 4.0 或 Windows 2000 的登入安全整合。使用者的網路安全特性在網路登入時建立,並通過 Windows 網域控制站進行驗證。當網路使用者嘗試串連時,SQL Server 使用基於 Windows 的功能確定經過驗證的網路使用者名。SQL Server 於是驗證此人是否是如其所說的那個人,然後只基於網路使用者名允許或拒絕登入訪問,而不要求單獨的登入名稱和密碼。

登入安全整合在 SQL Server 中任何受支援的網路通訊協定上運行。

說明  如果使用者試圖通過提供空白登入名稱稱串連到 SQL Server 的執行個體,SQL Server 將使用 Windows 身分識別驗證。此外,如果使用者試圖使用特定的登入串連到配置為 Windows 身分識別驗證模式的 SQL Server 執行個體,則將忽略該登入並使用 Windows 身分識別驗證。

 

與 SQL Server 身分識別驗證相比,Windows 身分識別驗證有某些優點,主要是由於它與 Windows NT 4.0 和 Windows 2000 安全系統的整合。Windows NT 4.0 和 Windows 2000 安全系統提供更多的功能,如安全驗證和密碼加密、審核、密碼到期、最短密碼長度,以及在多次登入請求無效後鎖定帳戶。

由於 Windows NT 4.0 和 Windows 2000 使用者和組只由 Windows NT 4.0 或 Windows 2000 維護,因此當使用者進行串連時,SQL Server 將讀取有關該使用者在組中的成員資格資訊。如果對已連線的使用者的可存取權限變更,則當使用者下次串連到 SQL Server 執行個體或登入到 Windows NT 4.0 或 Windows 2000 時(取決於更改的類型),這些更改會生效。

說明  當 SQL Server 執行個體在 Windows 98 或 Microsoft Windows Millennium 版上運行時,Windows 身分識別驗證模式不可用。

 

SQL Server 身分識別驗證

當使用者用指定的登入名稱稱和密碼從非信任連接進行串連時,SQL Server 通過檢查是否已設定 SQL Server 登入帳戶,以及指定的密碼是否與以前記錄的密碼匹配,自己進行身分識別驗證。如果 SQL Server 未設定登入帳戶,則身分識別驗證將失敗,而且使用者收到錯誤資訊。

提供 SQL Server 身分識別驗證是為了向後相容性,因為為 SQL Server 7.0 版或更早的版本編寫的應用程式可能要求使用 SQL Server 登入和密碼。另外,當 SQL Server 執行個體在 Windows 98 上運行時,必須使用 SQL Server 身分識別驗證,因為在 Windows 98 上不支援 Windows 身分識別驗證模式。因此,SQL Server 在 Windows 98 上運行時使用混合模式(但只支援 SQL Server 身分識別驗證)。

應用程式開發人員和資料庫使用者也許更喜歡 SQL Server 身分識別驗證,因為他們熟悉登入和密碼功能。對於串連到 Windows NT 4.0 和 Windows 2000 用戶端以外的其它用戶端,可能也必須使用 SQL Server 身分識別驗證。

說明  當使用具名管道串連到在 Windows NT 4.0 或 Windows 2000 上啟動並執行 SQL Server 執行個體時,使用者必須有串連到 Windows NT 具名管道 IPC //<computername>/IPC$ 的許可權。如果使用者沒有串連許可權,則不能使用具名管道串連到 SQL Server 執行個體,除非電腦上的 Windows NT 4.0 或 Windows 2000 guest 帳戶已啟用(預設情況下禁用),或者給使用者帳戶授予"從網路訪問該電腦"的許可權。

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.