首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >WiF4.5 BootstrapContext安全令牌空

WiF4.5 BootstrapContext安全令牌空
EN

Stack Overflow用户
提问于 2012-11-22 14:14:24
回答 3查看 4.7K关注 0票数 24

我正在使用新的4.5WIF材料来验证网站的用户,并确保我的MVC网站和WCF服务之间的通信安全。

我有网站配置,以保存引导上下文,以便我可以重用相同的安全令牌的所有请求到服务层。

在正常情况下,所有的工作都很好,每个网站的请求都经过认证,SecurityToken通过上下文提供,以保护WCF调用的安全。

但是,如果网站应用域被重置(例如,在开发过程中构建应用程序),对网站的任何请求仍然将被认证,但是SecurityToken在上下文中不再可用,无法传递给WCF调用。

调试BootstrapContext它有4个有用的属性:

代码语言:javascript
复制
SecurityToken
SecutiryTokenHandler
Token
TokenBytes

前应用程序域重置SecurityToken和SecurityTokenHandler有值,而post重置令牌有一个值.

重新设置之后,注意令牌的值,它看起来像是原始的SAML,因此我可以从它中重新补充一个完整的SecutiryToken,但是这似乎是奇怪的行为,我找不到任何文档。

我能做些什么来确保SecurityToken总是可用的,以节省我在令牌XML上的麻烦呢?

更新

使用dotPeek查看框架源代码中正在发生的事情,我可以看到导致这种行为的执行路径,但我无法确定为什么需要这样做,也无法确定为什么需要这样做。

最后,我放弃了尝试解决这个问题,现在使用下面的代码来确保我有一个令牌

代码语言:javascript
复制
if (context.SecurityToken != null)
{
    token = context.SecurityToken;
}
else if (context.Token.IsNotEmpty())
{
    var handlers = FederatedAuthentication.FederationConfiguration.IdentityConfiguration.SecurityTokenHandlers;
    token = handlers.ReadToken(new XmlTextReader(new StringReader(context.Token)));
}

我现在关心的是,我错过了这种行为背后的一些推理,而我上面的修正在某一时刻将会崩溃。

EN

回答 3

Stack Overflow用户

发布于 2013-03-04 14:14:37

我偶然发现了同样的问题。我看到令牌的xml表示形式和SecurityToken为空。我还注意到,这真的很容易复制通过杀死w3wp.exe。

票数 4
EN

Stack Overflow用户

发布于 2014-12-23 13:52:37

我通过删除浏览器cookie (包括Fedauth cookie )解决了这个问题。再一次调试,我能够获得所有所需的值。

票数 1
EN

Stack Overflow用户

发布于 2014-03-17 09:51:51

当我实现微软的ClaimsAwareWebFarm示例时,我也遇到了同样的问题。将此部分添加到web.config时会出现问题:

代码语言:javascript
复制
  <caches>
    <sessionSecurityTokenCache type="CacheLibrary.SharedSessionSecurityTokenCache, CacheLibrary">
      <!--cacheServiceAddress points to the centralized session security token cache service running in the web farm.-->
      <cacheServiceAddress url="http://localhost/SecurityTokenCacheService/SessionSecurityTokenCacheService.svc" />
    </sessionSecurityTokenCache>
  </caches>

谢谢马特的解决办法!

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/13514553

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档