作为“networking服务”运行的Windows服务使用Windows身份validation与其他计算机上的服务(此处为SQL Server和Analysis Services)通信。 对于身份validation,我们必须将权限授予服务的计算机帐户。 例如,如果服务在域MYDOMAIN中的服务器MYSERVER上运行,它将自己validation为“MYDOMAIN \ MYSERVER $”。 – 我是否正确,到目前为止?
现在这是我的问题:在与同一台机器上的服务交谈时,这仍然适用吗? 或者当连接到本地服务时,它会使用“NT AUTHORITY \ Network Service”之类的东西进行身份validation?
而且:这是否是从Windows 2003到Windows 2008的突破性改变? 在我们的系统中,我们遇到了一个实际问题,该帐户只能在W2K3中拥有权限的计算机帐户连接到本地服务。 在W2K8中,这似乎不再有效:对本地服务的身份validation现在失败,但对远程计算机仍然有效。
本地networking服务将authentication为NT AUTHORITY\Network Service
如果你想让你的SQL触及本地资源(文件,应用程序,registry等等),则不会授予对服务帐户的权限。 请将其授予安装期间自动创build的SQL Server服务帐户本地组 ,请参阅SQL Server服务帐户 : SQLServerMSSQLUser$<hostname>$<instancename> ,其中<hostname>是运行SQL Server的主机的计算机名称, <instancename>是SQL Server实例名称(默认实例名称为MSSQLSERVER)。
这样,在更改服务帐户时,不必更改任何ACL,因为更改SQL Service帐户会将新帐户添加到此组。