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 登录名。这样它就不会被使用,如果你需要一个高特权登录,那么你可以根据需要进行登录。
这是一个马已经跑掉后关上谷仓门的问题。
您应该在构建实例时重命名并禁用 sa 帐户。
任何时候您有一个众所周知的帐户,例如 Windows 系统上的管理员或 SQL Server 上的 sa,您都应该采取某些措施来保护它。让我们具体看看你应该用 sa 做什么:
设置一个难以猜测的密码。
重命名 sa。
禁用 sa。
确保不存在名为 sa 的其他帐户。
如果您保留“sa”帐户作为获取 SQL 访问权限的紧急方式,则有更安全的方法,请参阅:当系统管理员被锁定时连接到 SQL Server如果您没有网络帐户访问权限,那么您将面临更大的问题。能够连接到 SQL。