0

在使用自定义 STS 时,是否有人在 SharePoint 2010 中使用过引导令牌。我已经为此苦苦挣扎了几个小时。每当我发出 RST 时,我都会收到以下错误消息:

ID4257: X.509 certificate 'CN=SharePoint Security Token Service, OU=SharePoint, O=Microsoft, C=US' validation failed by the token handler. 

我正在使用带有 Thinktecture Identity Server 的 SharePoint 2010 作为我的 STS,并且正在尝试通过委派调用 WCF 服务。我让这一切工作正常,但我无法使用引导令牌让委派工作。

我猜 SharePoint 必须以某种方式加密引导令牌?!任何帮助或指示?

4

2 回答 2

1

您仍然可以通过使用自己的加密证书而不是 Sharepoint STS 来解决此问题。

当SecurityTokenHandler尝试验证引导令牌并发现令牌中的证书无效(默认 X509CertificateValidator)时,会引发此异常。

将出现在引导令牌中的证书将是SharePoint 安全令牌服务

解决问题的两种方法AFAIK

  1. 将“SharePoint 安全令牌服务”证书的公共部分复制到 STS 机器中的 Cert:LocalMachine\TrustedPeople。您还可以编写自己的证书验证器。

  2. 对于生产机器来说不是一个好的解决方案。在 web.config 中设置 certificateValidationMode="None"

http://msdn.microsoft.com/en-us/library/hh598384%28v=vs.110%29.aspx

于 2014-02-13T10:56:51.697 回答
0

这已通过将 SharePoint STS 证书作为加密证书添加到 sts 得到部分解决。同样使用 SPSecurityContext.SecurityTokenForContext 似乎有助于获得 ActAs 令牌 0 但我不是 100% 相信我已经完成了所有工作!

于 2012-01-13T16:00:47.440 回答