Sharepoint 2010 SharePoint 2010 SecurityTokenService错误

Sharepoint 2010 SharePoint 2010 SecurityTokenService错误,sharepoint-2010,claims-based-identity,Sharepoint 2010,Claims Based Identity,我们的测试环境中有SharePoint 2010,与定制的STS联盟合作,所有网站都是基于索赔的。 当我们尝试登录到站点时,我们被重定向到sts登录页面,我们输入凭据,我们被定向到siteurl/\u trust,它在这里停留很长时间,然后超时。 在windows应用程序错误中,我们看到: 异常类型:TimeoutException 异常消息:对的HTTP请求'http://localhost:32843/SecurityTokenServiceApplication/securitytoken

我们的测试环境中有SharePoint 2010,与定制的STS联盟合作,所有网站都是基于索赔的。 当我们尝试登录到站点时,我们被重定向到sts登录页面,我们输入凭据,我们被定向到siteurl/\u trust,它在这里停留很长时间,然后超时。 在windows应用程序错误中,我们看到: 异常类型:TimeoutException 异常消息:对的HTTP请求'http://localhost:32843/SecurityTokenServiceApplication/securitytoken.svc'已超过分配的超时时间00:00:59.9840000。分配给此操作的时间可能是较长超时的一部分

另一个错误是:

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


有什么想法吗?

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

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

要更改超时,需要将receiveTimeout和sendTimeout属性添加到binding元素中,使其具有如下特性:

<binding name="spStsBinding" receiveTimeout="00:30:00" sendTimeout="00:30:00">
...
</binding>
我已经为14\WebClient\SecurityToken\client.config和14\WebServices\SecurityToken\web.config文件中的所有绑定完成了此操作。上述设置将超时设置为30分钟

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


我希望能有所帮助。

当应用程序使用SecurityTokenService时,Antipod建议的解决方案确实有效。但是,当被请求时,例如从搜索应用程序请求时,它不起作用。例如,核心结果搜索Web部件调用搜索服务应用程序,该应用程序调用安全令牌服务

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

s_CachedActAsStsBinding = new CustomBinding(bindingElementsInTopDownChannelStackOrder);
其中BindingElementsTopDownChannelStackOrder取自14\WebClient文件夹中的配置,但未应用超时参数


您可以尝试此处建议的解决方案:但不幸的是,它们对我不起作用。

所有组件WFE、app server、db、STS WCF服务等是否都在同一台机器上?可能需要将服务引用从localhost更改为服务所在的服务器名称。