有没有办法将身份库cookie绑定到根域?

问题描述 投票:0回答:1

我有一个 Blazor Interactive Server 应用程序,它使用 ASP.NET 身份库进行身份验证和授权。

我已在您通常使用

connect.tradewindsstudios.us
连接到它的位置设置了该应用程序。但是,它是一个显示政治竞选活动的应用程序,因此我还允许使用
MyCampaign.tradewindsstudios.us
进行连接,其中
MyCampaign
是给定竞选活动的唯一 ID。然后它只显示该活动的事件。

问题是,如果用户登录到

connect.tradewindsstudios.us
,他们必须再次登录到
MyCampaign.tradewindsstudios.us
。有没有办法告诉身份库将标识登录用户的 cookie 与
tradewindsstudios.us
联系起来?

asp.net-core asp.net-identity blazor-server-side
1个回答
0
投票

h/t 给提供此信息的 josephdecock:

services.ConfigureApplicationCookie(options =>
{
    options.Cookie.Domain = ".conteso.com"; // can be dangerous
});

约瑟夫:

您应该注意一个安全风险,即如果 您将 cookie 域设置为父域,浏览器将发送 所有子域的 cookie。风险在于,如果其他一些 子域被黑客攻击,浏览器将向子域发送会话cookie 攻击者 - 想象一下如果您正在运行 app1.example.com 并且 app2.example.com,但还有 crappy-word-press-site.example.com 这是 7 年前由某个营销团队建立的,后来被遗忘了, 从未收到任何安全补丁,现在由一个 攻击者。现在,如果用户登录并访问易受攻击的站点, 他们的会话 cookie 将向攻击者公开。

© www.soinside.com 2019 - 2024. All rights reserved.