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

Bra*_*adC 14 security sql-server best-practices

我们发现 SQL "sa" 帐户的使用方式不该使用,因此我们正在更改所有 SQL 实例的 sa 密码。

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

几个问题:

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

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

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

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

(以防万一,我们为 SQL 服务和 SQL 代理服务使用域帐户,为调用 SSIS 包或 PowerShell 脚本的作业使用域代理帐户。)

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

我可以像重置任何其他帐户一样重置它吗?使用 SSMS,或更可能通过:

ALTER LOGIN sa WITH PASSWORD = 'newpass';
Run Code Online (Sandbox Code Playgroud)

或者我是否必须进入单用户模式或需要计划停机时间的模式?(请注意,我将从域帐户运行它,而不是作为“sa”连接。)

Q3:我们是否应该尝试定期进行此密码轮换?还是只有当我们发现问题时?

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

Sea*_*ser 15

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

不,但更改身份验证模式确实如此。由于您只是在更改密码并且身份验证模式已设置为混合,因此您只需更改密码即可。

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

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

Q3:我们是否应该尝试定期进行此密码轮换?还是只有当我们发现问题时?

老实说,我会禁用并重命名 SA 登录名。这样它就不会被使用,如果你需要一个高特权登录,那么你可以根据需要进行登录。

  • @Joshua 重命名它是一个好主意,特别是如果您正在接受审计或作为合规工作的一部分可能需要的其他安全实践的一部分。 (2认同)
  • 我花了太多时间来追踪损坏的东西,因为有人在使用后重新命名了内置帐户。 (2认同)

Jam*_*ins 7

这是一个马已经跑掉后关上谷仓门的问题。

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

任何时候您有一个众所周知的帐户,例如 Windows 系统上的管理员或 SQL Server 上的 sa,您都应该采取某些措施来保护它。让我们具体看看你应该用 sa 做什么:

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

重命名 sa。

禁用 sa。

确保不存在名为 sa 的其他帐户。

来源

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