使用自定义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必须以某种方式加密引导令牌?!任何帮助或指示?
答案 0 :(得分:1)
您仍然可以使用自己的加密证书而不是Sharepoint STS解决此问题。
SecurityTokenHandler 在尝试验证引导令牌时发出此异常,并且他们发现令牌中的证书无效(默认为X509CertificateValidator)。
引导令牌中将出现的证书将是 SharePoint安全令牌服务
解决AFAIK问题的两种方法
复制" SharePoint安全令牌服务的公共部分"证书证书:STS机器中的LocalMachine \ TrustedPeople。您也可以编写自己的证书验证器。
- 醇>
生产机器不是一个好的解决方案。设置certificateValidationMode ="无"在web.config中
http://msdn.microsoft.com/en-us/library/hh598384%28v=vs.110%29.aspx
答案 1 :(得分:0)
通过将SharePoint STS证书添加为sts的加密证书,可以部分解决此问题。同样使用SPSecurityContext.SecurityTokenForContext似乎有助于获得ActAs令牌0,但我并不是100%确信我已经完成了所有工作!