Node.js 如何在身份验证微服务中进行授权?

Node.js 如何在身份验证微服务中进行授权?,node.js,authentication,authorization,token,microservices,Node.js,Authentication,Authorization,Token,Microservices,我正在开发一个身份验证服务(NodeJS),用于处理身份验证和授权 我有两个端点: /auth令牌 客户端应用程序可以通过POST获取身份验证令牌(JSON web令牌)。auth服务将生成的每个JSON web令牌存储在其数据库中 /authorize SOA中的其他服务将在此端点验证身份验证令牌(来自授权头) 实施/authorize 我不确定/authorize端点背后的逻辑 方法一 从Authorizationheader获取身份验证令牌 对令牌执行DB查找,查看它是否存在且未过期 方法

我正在开发一个身份验证服务(NodeJS),用于处理身份验证和授权

我有两个端点:

/auth令牌

客户端应用程序可以通过POST获取身份验证令牌(JSON web令牌)。auth服务将生成的每个JSON web令牌存储在其数据库中

/authorize

SOA中的其他服务将在此端点验证身份验证令牌(来自授权头)

实施
/authorize
我不确定
/authorize
端点背后的逻辑

方法一
  • Authorization
    header获取身份验证令牌
  • 对令牌执行DB查找,查看它是否存在且未过期
  • 方法二
  • 在身份验证服务中拥有一个用户数据库,并存储到达
    /auth token
    端点的所有用户信息
  • 在通过
    /authorize
    进行授权期间,如果令牌尚未过期,请解码令牌
  • 获取用户信息并进行数据库查找,以查看他们是否 存在于用户数据库中

  • 或者其他方式。请让我知道。

    为什么需要检查用户是否存在?不确定。我看过的大多数教程都对令牌进行了解码,获得了用户信息,并在DB中进行了用户查找。如果您认为这是错误的(或我的代币服务不需要),请告诉我。根据我有限的经验,从头开始构建auth相关的东西,这两种方法是我可以想到的。请建议更好的方法。为什么需要检查用户是否存在?不确定。我看过的大多数教程都对令牌进行了解码,获得了用户信息,并在DB中进行了用户查找。如果您认为这是错误的(或我的代币服务不需要),请告诉我。根据我有限的经验,从头开始构建auth相关的东西,这两种方法是我可以想到的。请提出更好的办法。