在SharePoint安装文档中,我说它,
如果对SQL Server服务帐户使用域用户帐户,则必须确保其环境中存在该帐户的有效服务主体名称(SPN)和数据库服务器上的SQL Server实例.无论您是否对Office SharePoint Server 2007使用NTLM或Kerberos身份验证,情况都是如此.
您必须使用Setspn.exe命令行工具在域中为该帐户配置SPN.默认情况下,在运行Windows Server 2008的计算机上安装Setspn.exe.在与用户/服务帐户加入同一域的计算机上运行以下命令.
setspn -a
在这种情况下,参数应该是什么?
我想serviceaccountname将是'domain\username',但不确定第一个参数应该是什么.
这是SetSPN的technet链接.
语法如下所示:
SetSPN -a http/www.mywebsite.com serviceaccountname
要么
SetSPN -a http/www.mywebsite.com domainname\serviceaccountname
尝试并以这种方式考虑:您希望将www.mywebsite.com的http服务的所有者注册到domain\serviceaccountname目录对象.此spn条目允许使用在注册名称(www.mywebsite.com)上为服务(http)的所有者(serviceaccountname)注册的密码对身份验证票证进行加密.
添加SPN条目后,可以通过执行命令使用所有者(serviceaccountname)上的"SetSPN -l"来验证结果:
SetSPN -l serviceaccountname
有一点需要指出.您只能拥有该服务的一个所有者(http)和环境中的注册名称(www.mywebsite.com).有可能意外地结束不止一个.
使用SetSPN -l选项查找安装SharePoint的计算机对象的注册条目,以确保没有条目:ex.
SetSPN -l SharepointServer.domain.com SetSPN -l SharepointServer
您可以在Microsoft TechNet网站上阅读有关SPN如何工作的更多信息.