通过微服务传递用户信息

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

[基本上,我有一个微服务A,它通过检查凭据来验证用户,并且它需要将用户请求转发到另一个对请求进行进一步处理的微服务。我们使用基于会话的身份验证。在微服务B中收到请求后,它需要保留发起请求的用户的记录。这些微服务使用RSocket相互通信。现在,如果我需要将登录的用户信息传递给微服务B,则可以将其作为请求的一部分发送,也可以创建JWT令牌并将令牌与请求一起传递。可以在服务B上验证令牌的授权和用户详细信息。最好的方法是什么?请提出是否还有其他更好的方法可以做到这一点?

authentication authorization microservices jwt-auth rsocket
1个回答
0
投票

我建议在RSocket metdata中发送用户数据。您可以选择以下几种方式:

  1. 由于RSocket是面向连接的,如果从一个服务到另一个服务的所有通信都将由同一用户完成,则可以在连接期间通过流0将元数据推送到用户数据一次发送用户数据。

  2. 如果不同的请求针对不同的用户,则可以随每个请求一起在RSocket请求元数据中发送用户数据。

元数据可以按照您喜欢的任何方式进行编码。如果需要,可以在其中放置JWT令牌,但不必一定是JWT。您可以轻松地创建自己的对象来发送数据。

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