在多个ASP.NET Core应用程序之间共享Cookie

时间:2018-03-26 22:11:34

标签: cookies asp.net-core-2.0 asp.net-core-identity

我有一个关于在多个ASP.NET Core应用程序和Entity Framework之间共享cookie的问题。该架构的简要概述。 其中一个应用程序,我们称之为项目A,负责提供用户所需的视图。另一个应用程序Project B是一个REST API,它包含主要业务逻辑以及在SQL-Server数据库上提供CRUD操作。项目A仅显示从项目B接收的数据,并将数据发布到项目B,最终将其插入到数据库中。我使用基于Cookie的身份验证。

当用户单击登录页面上的提交按钮时,用户名将被发送到项目B.项目B中的相应控制器操作方法将检查用户是否存在于数据库中。如果用户存在,则所有用户的声明都存储在ClaimsPrincipal中,然后使用AuthenticationHttpContextExtensions.SignInAsync方法登录用户。根据我的理解,调用此方法将创建身份验证cookie。在项目A中,项目B返回的cookie被解密,用于在项目A中调用AuthenticationHttpContextExtensions.SignInAsync。

我的问题是,我可以避免将密钥持久存储到文件系统吗? 如果是,我如何在尚未创建cookie的应用程序中解密cookie?

先谢谢

0 个答案:

没有答案