在负载平衡部分日志记录上 ASP.NET 核心标识



我们已经将 ASP.NET 核心应用程序部署到 ARR 服务器后面的负载平衡环境中,并且我们没有使用粘性会话。

我们正在使用cookie身份验证。

在应用的页脚中,我们输出当前经过身份验证的用户,以便我们可以知道谁经过身份验证。

当我们对用户进行身份验证时,他们已登录,重定向到目标页面,然后重定向回登录页面。回到登录页面后,我们可以看到用户已经过身份验证,因为他们的用户名在页脚中,但他们又回到了登录页面。

如果我们启用粘性会话,这个问题就会消失。

我们认为这可能与数据保护密钥有关,因此我们添加了以下内容:

services.AddDataProtection()
.SetApplicationName("MyApp")
.PersistKeysToFileSystem(new DirectoryInfo(@"\Keys"));

这取自: https://learn.microsoft.com/en-us/aspnet/core/security/cookie-sharing?view=aspnetcore-3.1

但我们仍然有同样的问题。

哪些配置不正确/我应该调查什么?

问题是由于我不小心交换了

app.UseAuthentication();
app.UseAuthorization();

最新更新