Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/silverlight/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# Silverlight&x2B;RIA和ADFS STS在一段时间后失败_C#_Silverlight_Wcf Ria Services_Ria_Adfs2.0 - Fatal编程技术网

C# Silverlight&x2B;RIA和ADFS STS在一段时间后失败

C# Silverlight&x2B;RIA和ADFS STS在一段时间后失败,c#,silverlight,wcf-ria-services,ria,adfs2.0,C#,Silverlight,Wcf Ria Services,Ria,Adfs2.0,我正在使用RIA服务创建一个Silverlight接口来访问我们的数据 使用ADFS登录屏幕(使用Visual Studio 2012中的“标识和访问”工具配置)保护应用程序 一般来说,一切都按预期进行: 当访问主机页面时,我被重定向到ADFS登录页面 登录后,我会被重定向回主机页 RIA域服务可以使用HttpContext.Current.User检索ADFS凭据,从而确保调用的是正确的用户 RIA查询/调用/etc工作正常 。。。有一段时间。我想他们会工作大约一个小时左右(我还没有确定确

我正在使用RIA服务创建一个Silverlight接口来访问我们的数据

使用ADFS登录屏幕(使用Visual Studio 2012中的“标识和访问”工具配置)保护应用程序

一般来说,一切都按预期进行:

  • 当访问主机页面时,我被重定向到ADFS登录页面
  • 登录后,我会被重定向回主机页
  • RIA域服务可以使用
    HttpContext.Current.User
    检索ADFS凭据,从而确保调用的是正确的用户
  • RIA查询/调用/etc工作正常
。。。有一段时间。我想他们会工作大约一个小时左右(我还没有确定确切的时间),然后事情就会变坏

当他们这样做时,对RIA服务的请求被重定向到ADFS登录页面(我使用IEs开发者窗口F12和网络选项卡发现了这一点)

我最初的想法是ADFS安全令牌超时,客户端需要重新验证。但是,我已经将ADSF上的令牌过期时间设置为6小时,但问题仍然存在

需要注意的是,Silverlight应用程序会定期调用RIA服务来检查新的更新,因此它不应该是某种“不活动”超时,因为从来没有任何不活动

在这个阶段,我有点没有主意了。有人能帮忙吗


我不知道我的代码的哪些部分在这里有用-如果有人请求,我会发布我能发布的内容。

看起来这是SAM(会话身份验证模块)的超时。
查看和

虽然您认为异常是由SAM引起的(令牌过期),但提供的解决方案没有什么帮助。当然,后一种方法(增加令牌生存期)是有用的,但只是在一定程度上——它实际上并不能解决问题,只会降低问题的发生频率。我仍然需要一种方法来强制用户转到ADFS登录页面,或者以其他方式处理由SAM超时引起的SL错误。