设置 Windows 服务以连接到远程 SQL Server 的推荐方法是什么?

设置 Windows 服务以连接到远程 SQL Server 的推荐方法是什么?

我在服务器 A 上有一个服务,需要连接到服务器 B 上的 SQL Server 实例(2005 或 2008)。A 和 B 都位于同一个域中。配置服务和 SQL Server 以便前者可以连接到后者的最佳做法是什么?

尤其:

  • 我想使用 Windows 身份验证,对吗?不将密码存储在注册表或其他地方。
  • 该服务是否应以 NT AUTHORITY\NetworkService 或其他帐户身份运行?
  • 需要在 SQL Server 上创建哪些登录?

答案1

简短的回答是:这得视情况而定。

  • Windows 身份验证被认为是最佳实践,但在我的环境中,由于各种原因,它在许多情况下并不实用。
  • 我不会使用 NetworkService 运行服务或 SQL Server - 它有太多不必要的权限。由于您在域中,请创建权限仅限于运行每个服务所需的权限的域帐户。
  • 最小登录集将包括您需要的任何系统管理员(SQL2008 不会为您创建任何登录)和服务器 A 上服务的服务帐户。您的环境可能还需要其他登录,例如监控工具或需要直接连接到数据库的用户。
  • 为了遵循最小特权原则,每次登录应该仅限于服务器上执行其功能所需的权限。

相关内容