gpt4 book ai didi

node.js - 我们如何使用访问 token 来授权我们的rest api?

转载 作者:行者123 更新时间:2023-12-04 08:10:50 25 4
gpt4 key购买 nike

前端应用程序(React js)

我引用这个documentation在React js中实现了与Azure Ad Oauth2(Implicit Flow)集成的SPA ,所以这是我在应用程序中的登录功能。最后,我收到了还包含访问 token 的响应。

后端应用程序(Node js)

我还创建了一个具有不同端点的 REST API(例如产品列表、订单列表、更新产品详细信息)。在访问特定端点之前,我想授权用户检查他是否有权访问特定端点。因为我在我的应用程序中有两个角色(管理员和普通用户)。我正在本地计算机上运行后端服务。

我读过很多博客和论坛,比如访问 token 用作我们资源服务器的授权。

如何从后端服务检查 azure 访问 token 是否有效,以及如果用户是否具有访问权限,如何授权相应的端点?或者请建议我安全访问后端端点的正确流程?

提前致谢。

最佳答案

基本上,一旦服务器端收到客户端的某些请求,服务器端就应该检查客户端请求 header 中访问 token 中的声明。例如,什么 scope 声明可以访问此 API。

您可以使用passport-azure-ad使用 Node js 服务器可以轻松完成此操作。这是official sample code关于它。

在此演示中,您可以通过 index.js 中的 options 轻松配置要检查的声明: enter image description here

演示结果获取具有 access_as_user 范围的访问 token : enter image description here

调用后端并成功通过认证流程:

enter image description here

关于node.js - 我们如何使用访问 token 来授权我们的rest api?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/65969565/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com