前端应用程序和另一个后端服务使用的 REST API 的身份验证方法

Jak*_*ski 5 javascript java rest microservices

我有一个rest api后端服务A,它被另外两个服务使用:

  • B服务,是在浏览器中运行的 Web 应用程序(单独的节点服务器)
  • C服务也是后端服务(也是单独的服务器)

我最初的方法是使用基本身份验证进行 AB 通信,但这对于 AC 来说没有意义,因为无法在浏览器中安全地保存凭据。另一方面,引入会话和令牌对于 AB 通信来说似乎很奇怪。

无论我做什么,都像是一场拔河比赛。

您认为这种设置的合理解决方案是什么?

小智 0

AB 至少需要 SSL,然后只有您才能判断基本身份验证是否有效。

如果 C 要使用与 B 相同的 API,那么使用相同的身份验证方法是有意义的,只是为了简单起见,IMO。

您还可以使用基于令牌的身份验证机制,其中每个服务(远程或本地)进行身份验证并获取令牌并将其用于后续通信。

请参阅以下内容了解更多信息:

基于 REST API 令牌的身份验证