0

我有一个在 Windows Azure 上运行的 ASP.NET MVC4 应用程序,它使用 Azure ACS 进行联合身份验证。

当我们第一次开始测试应用程序时,由于 cookie 的大小,它可以在除 Safari 和 Opera 之外的所有浏览器中运行。

我在网上阅读了几篇要求我使用 FederatedAuthentication.SessionAuthenticationModule.IsSessionMode = true; 的文章

上面的语句会将数据存储在服务器端的cookie中。这解决了这个问题,因为客户端(浏览器)上只存储了一个会话标识符。

但是,该属性似乎已从 WIF 4.5 api 中删除。

你知道是否有解决办法吗?

4

2 回答 2

2

你保存原始令牌吗?您的 web.config 中是否有类似的内容,或者您​​是否将saveBootstrapTokens配置设置设置为 true:

<securityTokenHandlers>
    <securityTokenHandlerConfiguration saveBootstrapTokens="true" />
</securityTokenHandlers>

如果你这样做,或者如果你不这样做,请尝试saveBootstrapTokensfalse! 这将为您节省大量“空间”。

仅当我saveBootstraptokens设置为true.

于 2012-11-19T09:54:09.613 回答
1

是的-@astaykov 是正确的-这是其中的一部分。

根据@Dominick,它在 .NET 4.5 中称为“IsReferenceMode”。

于 2012-11-19T18:26:37.337 回答