SharePoint 2010 SecurityTokenService错误

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了SharePoint 2010 SecurityTokenService错误相关的知识,希望对你有一定的参考价值。

我们在测试环境中使用SharePoint 2010,使用自定义STS(联合,并且所有站点都是基于声明的)。当我们尝试登录该站点时,我们被重定向到sts登录页面,我们输入凭据,我们被定向到siteurl / _trust并且它会在这里停留很长时间并且超时。在Windows应用程序错误中,这是我们看到的:异常类型:TimeoutException异常消息:对'http:// localhost:32843 / SecurityTokenServiceApplication / securitytoken.svc'的HTTP请求已超过分配的超时00:00:59.9840000。分配给此操作的时间可能是较长超时的一部分。

另一个错误是:

尝试发出安全令牌时发生异常:请求通道在00:00:59.9843751之后等待回复时超时。增加传递给Request的调用的超时值或增加Binding上的SendTimeout值。分配给此操作的时间可能是较长超时的一部分。

有任何想法吗?

答案

SecurityTokenService是一个WCF服务,您可以像为任何其他WCF服务一样设置服务的超时。

谈到SharePoint 2010.我发现14个hive文件夹中有两个文件夹:WebClients和WebServices。这些文件夹包含SecurityToken子文件夹。

要更改超时,您需要将receiveTimeout和sendTimeout属性添加到绑定元素中,以具有以下内容:

<binding name="spStsBinding" receiveTimeout="00:30:00" sendTimeout="00:30:00">
...
</binding>

我已经为14 WebClients SecurityToken client.config和14 WebServices SecurityToken web.config文件中的所有绑定完成了它。上面的设置将超时设置为30分钟。

要编辑服务配置文件,我使用了以下屏幕截图中显示的VS 2008中的工具:

我希望它有所帮助。

另一答案

当您的应用程序使用SecurityTokenService时,Antipod建议的解决方案可以正常工作。但是,它在请求时不起作用,例如来自搜索应用程序例如,核心结果搜索Web部件调用搜索安全令牌服务的搜索服务应用程序。

在这种情况下,将调用SPSecurityContext.SecurityTokenForContext方法并请求SecurityTokenService。在这种情况下,不应用绑定超时,因为SecurityTokenService WCF绑定按以下方式初始化:

s_CachedActAsStsBinding = new CustomBinding(bindingElementsInTopDownChannelStackOrder);

其中bindingElementsInTopDownChannelStackOrder取自14 WebClients文件夹中的配置,但未应用超时参数。

您可以尝试这里建议的解决方案:http://www.eventid.net/display.asp?eventid=8306&eventno=10757&source=Microsoft-SharePoint%20Products-SharePoint%20Foundatio&phase=1但不幸的是它们对我不起作用。

以上是关于SharePoint 2010 SecurityTokenService错误的主要内容,如果未能解决你的问题,请参考以下文章

SharePoint 2010升级到SharePoint 2013

SharePoint 2010 Url Shortener --SharePoint 2010 短URL生成器

SharePoint 2010 权限管理

SharePoint 2010:“&”作为SharePoint账号密码引起的错误

[SharePoint 2010] SharePoint 2010 部署收回和删除解决方案----STSADM和PowerShell

Sharepoint 2010 silverlight web 部件不可用