在使用基于OAuth流的身份验证的服务中,对来自后端和客户端的请求进行身份验证



我有一个API,它使用OAuth身份验证(hydra(来验证请求来自用户浏览器
我还想从另一个后端(NodeJS(向同一个API发送请求。我有点困惑什么是最好的方法。

当前的身份验证机制使用刷新令牌(1h(。

我想在hydra中为后端创建另一个客户端,但奇怪的是,后端也会像浏览器一样使用相同的刷新令牌方法(以前从未见过(。

对于如何解决这一问题的任何帮助,我们将不胜感激。

所以。。。这里有几个概念你可能需要考虑。。。

OAuth 2.0标准系列从概念上就区分了私有(可信(和公共(可能容易受到攻击(客户端。您在浏览器中运行的客户端属于后一类,因此大多数经验丰富的OAuth开发人员都会认为,对该客户端使用刷新令牌是不可行的。对于在节点中编写的后端服务(即使它是前端的简单后端(来说,情况完全不同——可以使用和存储刷新令牌。

然而,如果您的node.js后端正在工作"外部";活动的客户会话,即即使没有客户与前端进行主动交互,也尝试访问客户数据,您可能还需要考虑OAuth 2.0提供的机器对机器流-客户端凭据流。

最新更新