ASP.NET 核心 MVC 会话身份验证 cookie



我有一个使用 ASP.NET 核心MVC的网站。它作为应用服务托管在 Azure 中。身份验证针对 Azure AD 进行。

身份验证 Cookie 是会话 Cookie。

有没有办法强制所有现有的会话 cookie 无效?在 .NET Web 窗体时代,我会回收应用程序池或更改计算机密钥。

我不在乎 cookie 是否仍然存在,我只希望它们的 Web 应用程序不再接受它们。

在 ASP.NET Core 应用程序中使身份验证 cookie 无效,您需要删除加密密钥。我正在将我的站点托管在 Azure 中,加密密钥存储在 %HOME%\ASP.NET\DataProtection-API 中。该目录中将存储一个或多个XML文件,这些是键。删除 XML 文件并重新启动 Web 应用程序(必须重新启动 Web 应用程序,因为密钥存储在内存中(。

我遇到了一个问题,即我横向扩展了我的 Web 应用程序,并且两个 Web 应用程序同时启动。这导致每个应用程序创建自己的密钥,并且(更重要的是(不知道另一个应用程序的密钥。为了帮助防止这种情况发生,我执行以下步骤:

  1. 将我的应用服务缩减到 1 个
  2. 删除 XML 文件
  3. 重新启动 Web 应用程序
  4. 从 Web 应用程序请求页面(确保它已重新启动(
  5. 纵向扩展应用服务备份

最新更新