gpt4 book ai didi

asp.net - User.Identity 在我的 ASP.NET 网站的负载平衡场景下丢失

转载 作者:行者123 更新时间:2023-12-05 01:20:17 26 4
gpt4 key购买 nike

我将 Windows 身份验证 用于负载平衡网站。负载平衡基于两个 IIS Web 服务器。我的站点中有一项功能允许用户重新登录,例如 Sharepoint 登录为不同的用户

但我注意到,当我重新登录时,一个站点中的 User.Identity 已更改,但另一个站点仍保留之前的帐户。

我怀疑cookie里面有东西应该清楚

有没有人在玩负载平衡时遇到过这个问题?或者您知道一些可能有帮助的相关文章吗?

我不知道如何解决这个问题。任何帮助将不胜感激。



<强>顺便一提我使用这种方法来实现它在单个服务器上工作的重新登录。 http://www.roelvanlisdonk.nl/?p=825 .

大家好,
我仍在研究此功能。我在我的主页上打印了 User.Identity.Name。当我更改帐户时,User.Identity.Name 输出已正确更改。但是当我刷新首页时,有时首页会显示之前的账号。

最佳答案

如果我没看错你的评论,你的设置涉及两个网络服务器,每个都有一个具有相同名称(并且可能是相同密码)的本地用户,并且你正试图在网络场场景中使用 Windows 身份验证.

在您的情况下,每台计算机都有自己的帐户和名称 - 假设您的用户名是“AuthorizedUser”。请记住,如果 AuthorizedUser 是两台机器上的本地帐户,那么这就是两个完全不同的用户帐户。每台计算机检查自己的用户帐户信息以验证此人的身份,在非域情况下,计算机 A 没有理由信任在计算机 B 上通过身份验证的用户。

如果 有可能计算机 A 受信任的计算机 B 没有域场景 - 只是两台随机计算机碰巧拥有同名用户,想象一下侵入任何人的计算机是多么容易使用 Windows 身份验证的 Web 服务器。您所要做的就是猜测一个有效的用户名,而不是一个有效的用户名/密码组合。很容易看出为什么这是个坏主意。

要使 Windows 身份验证在网络场方案中起作用,您需要使用域用户(Windows NT 域)并且该域用户需要在两台服务器上设置相同的权限。这样,只有一个 AuthorizedUser,两个 Web 服务器都可以根据域验证身份。两台 Web 服务器都将自动相信域 Controller 已正确授权用户并信任该域。

关于asp.net - User.Identity 在我的 ASP.NET 网站的负载平衡场景下丢失,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8336653/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com