适用于:SQL Server
本文介绍如何通过使用 SQL Server Management Studio 或 Transact-SQL 在 SQL Server 中更改服务器身份验证模式。 安装过程中, SQL Server 数据库引擎 设置为 “Windows 身份验证模式” 或 “SQL Server 和 Windows 身份验证模式” 。 安装完成后,您可以随时更改身份验证模式。
如果在安装过程中选择了“Windows 身份验证模式”,则 登录名将被禁用,安装程序会分配一个密码。 如果稍后将身份验证模式更改为“SQL Server 和 Windows 身份验证模式”,则 登录名仍处于禁用状态。 若要使用 sa
登录名,请使用 ALTER LOGIN
语句启用 sa
登录名并分配一个新密码。
sa
登录名只能使用 SQL Server 身份验证连接到服务器。
注解
sa
帐户是一个已知的 SQL Server 帐户,并且经常成为恶意用户的攻击目标。 除非应用程序需要使用 sa
帐户,否则请不要启用它。 请务必为 sa
登录名使用强密码。
可使用 SSMS 或 Transact-SQL 启用 sa
登录。
在“对象资源管理器”中,依次展开“安全性”、“登录名”,右键单击“sa”,然后选择“属性”。
在“常规”页上,可能需要为 登录名创建密码并确认该密码。
在“状态”页上的“登录”部分,选择“已启用”,然后选择“确定”。
使用 SQL Server Management Studio 更改身份验证模式
在 SQL Server Management Studio (SSMS) 的对象资源管理器中,右键单击服务器,然后选择“属性”。
在“安全性”页上的“服务器身份验证”下,选择新的服务器身份验证模式,然后选择“确定”。
在 SQL Server Management Studio 对话框中,选择“确定”接受重新启动 SQL Server 的要求。
在“对象资源管理器”中,右键单击服务器,然后选择“重新启动”。 如果运行有 SQL Server 代理,则也必须重新启动该代理。
示例
注意
下面的示例使用扩展存储过程来修改服务器注册表。 如果没有正确修改注册表,可能会出现严重问题。 这些问题可能需要你重新安装操作系统。 Microsoft 无法保证可以解决这些问题。 您应自行承担修改注册表的风险。
更改身份验证模式所需的权限为 sysadmin 或 CONTROL SERVER。
答: 将身份验证更改为仅限 Windows
将服务器身份验证更改为仅限 Windows:
USE [master]; GO EXECUTE xp_instance_regwrite N'HKEY_LOCAL_MACHINE', N'Software\Microsoft\MSSQLServer\MSSQLServer', N'LoginMode', REG_DWORD, 1; GO
禁用
sa
帐户:USE [master]; GO ALTER LOGIN sa DISABLE; GO
B. 将身份验证更改为混合模式(Windows 和 SQL)
启用
sa
帐户并设置强密码:USE [master]; GO ALTER LOGIN sa ENABLE; GO ALTER LOGIN sa WITH PASSWORD = '<enterStrongPasswordHere>'; GO
将服务器身份验证更改为混合模式:
EXECUTE xp_instance_regwrite N'HKEY_LOCAL_MACHINE', N'Software\Microsoft\MSSQLServer\MSSQLServer', N'LoginMode', REG_DWORD, 2; GO