【问题标题】:CSRF in Ionic with multi tenant and multiple domain JHipster backend具有多租户和多域 JHipster 后端的 Ionic 中的 CSRF
【发布时间】:2021-02-28 10:18:17
【问题描述】:

我有一个 JHipster 多租户后端,其域如 tenant[.env].domain.ltd 启用了 csrf。 我们正在使用 Ionic 制作一个移动应用程序,该应用程序可以在多个租户上存储身份验证。 在这个移动应用中,我们设置了<preference name="Hostname" value="domain.ltd" />

csrf令牌如何处理?

后端将.tenant[.env].domain.ltdXSRF-TOKEN cookie 发送到移动应用程序,客户端无法访问该cookie,因为域不匹配,因此客户端无法在请求的标头中设置给定令牌。

我们应该为移动应用禁用 csrf 吗?这样做的最佳方法是什么?如果 csrf 是唯一的解决方案,我们应该过滤哪个值来禁用它?

【问题讨论】:

    标签: ionic-framework spring-security jhipster multi-tenant csrf-token


    【解决方案1】:

    好的,我终于设法让它工作了。在 xsrf 令牌 cookie 生成时,我只是测试请求是否来自移动应用程序。如果是这样,我将 cookie 域设置为.domain.ltd。 我不确定的唯一一点是我应该确定它是移动请求的方式。我实际上使用了Origin 标头。

    【讨论】: