0

我的SSRS Report Manager Web应用程序出现问题(但我也将其更多地视为典型的ASP.Net应用程序问题)。Internet Explorer在会话超时后不会提示进行Windows身份验证

此应用程序配置为使用Windows身份验证,用户通常使用Internet Explorer访问应用程序。该应用程序还具有20分钟的会话超时设置。

这个问题(被解释为信息安全问题:()是,如果用户在这个应用程序上闲置超过20分钟,他仍然可以回来继续解决任何问题。它不会超时,因为他们没有得到登录提示。

当我运行Fiddler时,我观察到20分钟后的第一个请求事实上是401,这意味着服务器拒绝了请求。 ,我相信,Internet Explorer发送缓存的凭据。因此,登录提示不会出现。

我有这些问题是这些 1.是真的,IE浏览器可以se会话超时后缓存的凭据?任何Microsoft链接/参考? 2.有什么办法可以在会话超时后强制登录对话框来? (我从IE设置选项卡中删除,但没有运气)

+0

用户在第一次启动应用程序时是否会看到登录提示?他们不应该使用Windows身份验证... –

+0

他们确实在启动应用程序时看到了这一点。 –

+0

这很奇怪。他们是否使用相同的用户名登录到Windows以登录到您的应用程序?您是否配置了Internet Explorer以防止凭据被自动提供? –

回答

0

他们是一个非常good blog-post讨论几个不同的选项,但最好的是让您的应用程序检测会话超时并发送401响应代码。

另一种更好的方法是不使用Windows身份验证,并实现自己的登录界面。这在ASP.NET中是非常简单的。

如果你没有控制你的应用程序,听起来好像你没有,那么你可以做的事情并不多。

但是,这并不能解释你试图通过强制用户手动登录来实现什么,并且如果他们的会话到期,则重新登录。唯一一次强迫用户手动登录到您的网站可以获得任何好处,如果您希望他们将自己的电脑解锁 - 但是无论如何您已经拥有了一个巨大的安全漏洞。这就像是把车窗里的窗户卷起来,然后把门打开并把钥匙放在屋顶上。

+0

我完全理解您提到的内容,并在某种程度上我同意。但是,这个应用程序是SSRS应用程序,它是由微软自己开发的,所以除了少量的配置步骤外,我没有太多的控制权。我之所以需要这个功能,是因为它正在被查看和安全策略例外(我无法控制),并且我需要强制用户登录。你有没有从微软的任何参考/链接,它表示它将*总是*像这样工作(我的意思是IE总是会自己发送证书并压制提示)。 –

+0

这里需要注意的另一件事是,正如我提到的应用程序发送401代码(小提琴手告诉我),但不是提示对话框,它带有默认凭据。 –

+0

401正在发送,因为IE将*总是*尝试首先匿名登录。这在IIS层被拒绝。如果您的应用程序也发送401然后IE将打开登录提示。 –

相关问题