在 Node.js 中实现 Duende BFF 身份验证

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

我已经在 .NET 中实现了 Duende BFF 身份验证,但我希望使用 Node.js 复制此设置。我有一个登录站点,Duende 用于接收所有同站点域的 cookie,但我的问题是在将我的其他 BFF(客户端 → BFF → 微服务)迁移到 Node.js 时出现的。

目前,我正在尝试使用

openid-client
库来实现这一点,但我很难完全理解该流程在幕后是如何工作的。

这是我的服务:

  • id.myapp.com – 处理用户会话管理和验证
  • login.myapp.com – 处理登录并使用
    id.myapp.com
    进行验证
  • bff.myapp.com – 使用 BFF 身份验证与来自 Duende 的 OIDC 流程

客户流程:

  1. 客户端(带有 cookie) → 向 BFF 发送请求
  2. BFF → 聚合多个服务的结果
  3. 微服务 → BFF 调用 2 个服务

我也在质疑这个流程是否足够安全:

  • 客户端(带有cookie)→BFF聚合器→从
    login.myapp.com
    →2个微服务
  • 获取用户令牌

我目前正在使用 Node.js 和

openid-client
库、Duende IdentityServer4 和 IdentityServer4 for OIDC。

任何人都可以阐明如何在 Node.js 中构建此身份验证流程,以及从登录服务获取用户令牌的安全问题是否有效?

node.js microservices openid-connect identityserver4 duende-identity-server
1个回答
0
投票

总的来说,将尽可能多的身份验证逻辑移至后端(BFF)是好的!保持前端尽可能简单,仅使用 cookie 身份验证是最佳实践。

这是一个关于主题 alert‘OAuth 2 0’ 的好视频; // XSS 对 SPA 中 OAuth 2 0 的影响

最新问题
© www.soinside.com 2019 - 2025. All rights reserved.