首页 > 解决方案 > 我的 VB.NET Web 应用程序身份验证问题

问题描述

我有一个在 VB.NET 上编写的基于 Windows 窗体的 Web 应用程序,目前被大量用户使用。

我目前面临一个问题,即应用程序正在使用另一个用户帐户进行身份验证,而不是使用该应用程序与当前用户进行身份验证。

我正在使用 User.Identity.Name 进行用户身份验证,并且仅启用了 Windows 身份验证。

其他详情

该应用程序托管在 Windows 7 服务器计算机上的 IIS 中,每个人都可以从中访问它。

奇怪的是,这个问题只发生在 2 个用户身上,其他人都可以正常工作。此外,它仅在使用托管应用程序(生产 URL)时发生。

也没有设置默认场景,例如如果找不到用户,则必须填写默认用户。

观察

  1. 在使用本地机器上的实际代码调试应用程序时,会按预期获取各自的用户 ID。
  2. 问题发生在

所以我不知道如何在这里进行以及问题的根本原因是什么。谁能给我一些想法来找到问题的根本原因以及解决问题的方法?

我试过的:

我已确保禁用匿名和基于表单的身份验证模式。身份模拟设置为 False。

我还确保在凭据管理器中没有为网站设置凭据。

我还尝试清除浏览数据,包括缓存和其他 cookie。

标签: asp.netvb.netweb-applicationsweb-configwindows-authentication

解决方案


确保您没有在后面的代码中设置身份验证方法等,您需要在 web.config 中进行设置。确保一个没有覆盖另一个(设置在 2 个位置)。另外要获取用户名,您还可以从服务器变量中获取它,看看返回的内容

 string user = Request.ServerVariables("LOGON_USER").ToString();

推荐阅读