我的windows服务正在使用集成身份验证并在本地系统帐户下运行,并得到以下异常。为什么当SQL Server服务在本地系统帐户下运行时,我的Windows服务仅与数据库建立连接?
目标主要名称不正确。无法生成SSPI上下文。
SQL Server服务是根据域管理用户运行例如“域\管理员”。如果我将SQL Server服务更改为在本地系统帐户下运行,那么它会修复上述错误。
任何人都可以解释为什么这样的事情发生?我们有一个安装我们的应用程序在客户端的InstallShield向导,我不知道我们如何通过向导来处理这种行为。另外,更改用户的SQL Server服务也不现实,因为客户端可能不允许它。
注意:一旦当我的Windows服务工作正常,我恢复在管理帐户下运行SQL Server我的服务运行良好。我想有一些权限设置为本地系统帐户。
在此之前,我运行了kerbros,它生成了以下脚本以运行并解决问题。在此之后,不需要更改SQL Server服务的用户。
的SetSPN -D “为MSSQLSvc/FQDN” “域\机器$”
的SetSPN -s “为MSSQLSvc/FQDN” “域\管理员”
请解释为什么它的发生和什么处理这种情况的最佳方式是什么?
谢谢。