代码之家  ›  专栏  ›  技术社区  ›  Mohammed Noureldin Reedwanul Islam

ASP在哪里。Net Core“cookies authentication”存储对该cookie的引用?

  •  6
  • Mohammed Noureldin Reedwanul Islam  · 技术社区  · 8 年前

    有时我看到PHP开发人员在他们的cookie中传递Id,并在数据库中保存对该cookie的引用(这样他们就可以通过cookie对用户进行身份验证)。但是在ASP中。Net Core,我从没见过。

    ASP。Net Core知道此cookie归此用户所有吗?所有东西都存储在内存中(在某种对象中)?

    如果是,这是否意味着如果我重新启动应用程序,用户应该再次登录?或者有什么方法可以让ASP。Net Core提供了即使在重新启动应用程序后仍然保留对Cookie的引用?

    2 回复  |  直到 8 年前
        1
  •  11
  •   David Jones    8 年前

    ClaimsPrincipal被序列化、加密并作为cookie发送给客户端。一旦创建了cookie,它就成为唯一的身份来源。当客户端发出请求时,它会发送cookie,服务器对其进行解密(作为验证)并将其反序列化到HttpContext中。

        2
  •  1
  •   jnt    5 年前

    服务器唯一需要存储的是解密密钥,它将其存储为 Data Protection 钥匙根据 the docs ,键将保留到以下位置:

    如果应用程序托管在Azure应用程序中,则密钥将保留到 %主页%\ASP。NET \数据保护密钥文件夹。此文件夹由支持 网络存储,并在托管 应用程序。

    %LOCALAPPDATA%\ASP。NET \数据保护密钥文件夹。如果操作 系统是Windows,密钥在静止时使用DPAPI加密。