共用方式為


變更伺服器驗證模式

適用於:SQL Server

本文描述如何使用 SQL Server Management Studio 或 Transact-SQL,變更 SQL Server 中的伺服器驗證。 在安裝期間,SQL Server 資料庫引擎會設定為 [Windows 驗證模式] 或 [SQL Server 和 Windows 驗證模式]。 安裝後,您可以隨時變更驗證模式。

如果您在安裝期間選取了 [Windows 驗證模式],sa 登入便會停用,且安裝程式會指派密碼。 即使稍後將驗證模式改成 [SQL Server 和 Windows 驗證模式],sa 登入也會保持停用狀態。 若要使用 sa 登入,請使用 ALTER LOGIN 陳述式啟用 sa 登入並指派新密碼。 sa 登入只能使用 SQL Server 驗證連線到伺服器。

備註

sa 帳戶是已知的 SQL Server 帳戶,經常是惡意使用者的攻擊目標。 除非您的應用程式需要 sa 帳戶,否則請勿將其啟用。 請務必使用增強式密碼進行 sa 登入。

您可以使用 SSMS 或 Transact-SQL 啟用 sa 登入。

  1. 在物件總管中,依序展開 [安全性] 和 [登入],並以滑鼠右鍵按一下 [sa],然後選取 [屬性]。

  2. [一般] 頁面上,您可能需要為 sa 登入建立並確認密碼。

  3. 在 [狀態] 頁面上的 [登入] 區段中選取 [已啟用],然後選取 [確定]。

使用 SQL Server Management Studio 變更驗證模式

  1. 在 SQL Server Management Studio (SSMS) 物件總管中、以滑鼠右鍵按一下伺服器,然後選取 [屬性]。

  2. 在 [安全性] 頁面上的 [伺服器驗證] 下,選取新的伺服器驗證模式,然後選取 [確定]。

  3. 在 [SQL Server Management Studio] 對話方塊中,選取 [確定] 以確認重新啟動 SQL Server 的需求。

  4. 在物件總管中,以滑鼠右鍵按一下伺服器,然後選取 [重新啟動]。 如果 SQL Server Agent 正在執行,也必須將其重新啟動。

範例

警告

下列範例會使用擴充預存程序來修改伺服器登錄。 若未正確修改登錄,可能會發生嚴重的問題。 這些問題可能會需要您重新安裝作業系統。 Microsoft 不保證能解決這些問題。 修改登錄的風險請自負。

變更驗證模式所需的權限為 sysadminCONTROL SERVER

A. 將驗證變更為僅限 Windows

  1. 將伺服器驗證變更為僅限 Windows:

    USE [master]
    GO
    EXEC xp_instance_regwrite N'HKEY_LOCAL_MACHINE',
         N'Software\Microsoft\MSSQLServer\MSSQLServer',
         N'LoginMode', REG_DWORD, 1;
    GO
    
  2. 停用 sa 帳戶:

    USE [master]
    GO
    
    ALTER LOGIN sa DISABLE;
    GO
    

B. 將驗證變更為混合模式 (Windows 和 SQL)

  1. 啟用 sa 帳戶並設定強式密碼:

    USE [master]
    GO
    
    ALTER LOGIN sa ENABLE;
    GO
    
    ALTER LOGIN sa WITH PASSWORD = '<enterStrongPasswordHere>';
    GO
    
  2. 將伺服器驗證變更為混合模式:

    EXEC xp_instance_regwrite N'HKEY_LOCAL_MACHINE',
        N'Software\Microsoft\MSSQLServer\MSSQLServer',
        N'LoginMode', REG_DWORD, 2;
    GO