为什么BFF模式只适用于SPA?

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

我一直在阅读有关 BFF 的内容,更具体地说是有关 Duende.BFF 的内容,看看它是否对我们的微前端解决方案有意义。 我们已经使用 Duende.IdentityServer 来生成令牌,所以也许我们可以节省一些时间和维护,将登录应用程序移动到 BFF,但我一直在阅读它仅适用于 SPA,我不明白为什么,有人可以解释一下吗关于这个主题?

提前致谢

cookies oauth-2.0 single-page-application access-token refresh-token
1个回答
0
投票

BFF 的作用是减少跨站点脚本攻击的影响。这些威胁特定于浏览器,其中可能会注入代码,例如。通过

<script>
标签,然后允许执行。

通过使用

HttpOnly,SameSite=strict
cookie,漏洞利用仅限于当前浏览器窗口和 API 的 Web 入口点,这些 API 具有额外的 CSRF 相关保护。此外,当用户离开当前窗口时,此类攻击就会结束。使用令牌,API 消息凭证更有可能被泄露,从而对组织的 API 进行更一致的攻击。

一些技术解决方案可能会尝试将网站解决方案改造到移动应用程序上。但这可能不是一个好主意 - 我在最近的答案中写过为什么移动最好的朋友通常没有意义。

MICRO UI Cookie 要求

微型 UI 的一大重点是随着 Web 代码库的增长保持其可管理性。但这并不意味着每个应用程序都需要发出单独的 cookie 并需要不同的登录。考虑以下网络路由:

/marketing1
/marketing2
/finance1
/finance2

在这种情况下,您可能希望路由 1 和 2 共享相同的 cookie,该 cookie 映射到具有营销权限的访问令牌。同时,路线 3 和路线 4 可以使用具有财务权限的不同访问令牌。 API 驱动的 cookie 发布在这里可能是一个不错的选择,可以对哪些 Web 路由共享 cookie 和哪些不共享 cookie 提供最佳控制。

在我工作的 Curity,几年前我们对这些问题进行了大量思考。另请参阅我的同事的回答。

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