【发布时间】:2019-01-31 06:52:55
【问题描述】:
我正在尝试将 IIS 上的集成 Windows 身份验证用于 MVC Web 应用程序。最初的希望是用户将使用当前的 Windows 用户凭据自动登录。我遇到了总是提示用户输入用户名和密码的问题。我决定我们可以忍受这个。但是,我也注意到用户可以输入任何有效的域凭据......它不限于当前登录的机器。但如果是这种情况,我需要提供一个注销按钮,以便在必要时可以切换用户。
我在这个问题上能找到的一切,在 Windows 身份验证中注销,都说你不能这样做,因为它会从机器登录中提取凭据。但在我的情况下显然没有这样做,因为我可以输入任何有效的凭据并成功登录。所以一个用户可以作为用户 X 登录到机器上,然后在出现提示时,作为用户 Y 登录到 Web 应用程序。我是否理解,在 Windows 身份验证下,没有办法解决这个问题?
【问题讨论】:
-
您的设置有问题。使用 windows auth 应该是无缝的。
-
Chrome 和 IE 应该是无缝的。 FireFox will not pass NTLM credentials by default
-
IIS Windows 认证没有注销选项,不能切换用户。因此,当您在上面描述时,它似乎是表单身份验证。
-
您需要将您的应用添加到浏览器的“可信站点”
标签: c# asp.net-mvc iis windows-authentication