更改“ sa”密码是否需要重新启动SQL(在混合模式下)?


14

我们发现一个SQL“ sa”帐户的使用方式不应该被使用,因此我们正在更改所有SQL实例上的sa密码。

(我们有以混合身份验证模式运行的SQL 2005至2017服务器。所有用户和应用程序都应使用域帐户或非sa SQL帐户进行连接。我一直在监视,但未发现任何其他应用程序,用户或非-使用sa帐户的内部sps。)

几个问题:

Q1:更改sa密码是否需要重新启动SQL?

我发现一些参考资料说更改sa帐户密码后需要重新启动SQL服务:

真的吗?还是仅当我更改身份验证模式时?还是仅当我以sa常规身份登录时?

这个SQL Server Central线程甚至建议更改它可能会影响现有的SQL代理作业和其他内容。这是一个问题吗?还是仅当有人将SA帐户硬编码到SSIS包或其他内容中时?

(如果很重要,我们将域帐户用于SQL服务和SQL代理服务,并将域代理帐户用于调用SSIS包或PowerShell脚本的作业。)

Q2:我可以以“正常”方式更改sa密码吗?

我可以像重设其他帐户一样重设吗?使用SSMS,或更可能通过以下方式:

ALTER LOGIN sa WITH PASSWORD = 'newpass';

还是我必须进入单用户模式或需要计划停机的时间?(请注意,我将通过域帐户运行此文件,而不是以“ sa”身份连接。)

问题3:我们是否应该尝试定期进行此密码轮换?或仅在我们发现问题时?

这是推荐的“最佳实践”吗?

Answers:


15

Q1:更改sa密码是否需要重新启动SQL?

不可以,但是可以更改身份验证模式。由于您只是在更改密码,并且身份验证模式已设置为混合模式,因此最好只更改密码。

Q2:我可以以“正常”方式更改sa密码吗?

是的,它只是另一个SQL登录帐户。

问题3:我们是否应该尝试定期进行此密码轮换?或仅在我们发现问题时?

老实说,我将禁用并重命名SA登录。这样,根本就不会使用它,如果您需要高特权的登录名,则可以根据需要进行登录。


不要重命名它,但是禁用它是一个好主意。
约书亚

2
@Joshua重命名是一个好主意,特别是如果您正在接受审核或作为遵从性工作的一部分可能需要的其他安全实践的一部分时,则尤其如此。
肖恩·加拉第

2
我花了太多时间来查找损坏的东西,因为有人在使用内置帐户后将其重命名。
约书亚

@Joshua,如果您在构建它时重命名并禁用了它,那将不是问题。当然,这只是一个向前的解决方案。重命名几个月或几年后可能会出现问题。
James Jenkins

@JamesJenkins:很好,您正在追赶。
约书亚

7

马已经跑出问题之后,这是关闭谷仓的门。

构建实例时,您应该已重命名并禁用了sa帐户。

每当您拥有一个知名帐户(例如Windows系统上的管理员或SQL Server的sa)时,都应采取某些步骤来保护该帐户。让我们具体看一下您对sa应该做什么:

设置一个难以猜测的密码。

重命名sa。

停用sa。

确保没有其他名为sa的帐户。

资源

如果您将“ sa”帐户作为获取SQL访问的紧急方法,则有更安全的方法,请参阅:系统管理员被锁定时连接到SQL Server如果您没有网络帐户访问权限,则可能会遇到更大的问题能够连接到SQL。


1
我可以看到重命名 sa,但是如果在紧急情况下无法使用域身份验证,是否不能完全禁用它而无法连接?(并不是我想起来需要这样做,但我正在尝试预测所有意外事件。)
BradC

@BradC在更新中针对您的评论进行了编辑
James Jenkins

谢谢,我们将为您提供长期解决方案。
BradC

1
很难(即使不是不可能)使集成身份验证完全停止工作,因为除非登录才能运行SQL Server服务,否则它将无法运行。SQL Server可以根据本地安全机构对您进行身份验证。
Max Vernon
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.