【问题标题】:Using WCF STS Bootstrap token in SharePoint 2010 (thinktecture identity server as sts and ActAs)在 SharePoint 2010 中使用 WCF STS 引导令牌(thinktecture 身份服务器作为 sts 和 ActAs)
【发布时间】:2012-02-08 21:27:54
【问题描述】:

在使用自定义 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. 

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

我猜 SharePoint 必须以某种方式加密引导令牌?!有什么帮助或建议吗?

【问题讨论】:

    标签: wcf sharepoint-2010 wif claims-based-identity sts-securitytokenservice


    【解决方案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

    【讨论】:

      【解决方案2】:

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

      【讨论】:

      • 这并没有解决问题 - SPSecurityContext.SecurityTokenForContext 允许我调用我的服务,但不幸的是总是解析为 IUSR 身份,而不是登录的用户身份。完全困惑于如何在 SharePoint 中进行 ActAs 委派!
      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2015-01-03
      • 1970-01-01
      • 2011-07-13
      • 2014-05-23
      • 1970-01-01
      • 2013-03-08
      • 1970-01-01
      相关资源
      最近更新 更多