为什么要在 SQL Server 2012 中使用托管服务帐户而不是虚拟帐户?

jor*_*npg 14 sql-server windows sql-server-2012 kerberos password

在SQL Server 2012中,服务帐户创建为虚拟账户(VAS),如所描述这里,而不是托管服务帐户(MSAS)。

根据描述,我可以看到这些重要的区别:

  • MSA 是域帐户,VA 是本地帐户
  • MSA 使用 AD 处理的自动密码管理,VA 没有密码
  • 在 Kerberos 上下文中,MSA 会自动注册 SPN,而 VA 不会

还有其他区别吗?如果不使用 Kerberos,为什么 DBA 会更喜欢 MSA?

更新另一位用户在有关 VA 的 MS 文档中注意到了一个可能的矛盾

虚拟账户是自动管理的,虚拟账户可以在域环境中访问网络。

相对

虚拟帐户无法在远程位置进行身份验证。所有虚拟账户都使用机器账户的权限。以 格式提供机器帐户 <domain_name>\<computer_name>$

什么是“机器账号”?它如何/何时/为什么被“配置”?“在域环境中访问网络”和“在[域环境中]对远程位置进行身份验证”之间有什么区别?

小智 4

这是我的看法。

当您使用 VA 时,您会模拟计算机帐户。

问题是,创建 VA 或使用现有的 VA 很容易(例如 NT Authority\NETWORKSERVICE)。如果您授予计算机帐户对实例的访问权限,则作为 VA 运行的应用程序将能够连接到该实例并执行操作。

使用托管帐户,您必须向任何想要使用该帐户的应用程序提供该帐户的凭据,从而允许您更精细地设置权限。