如何将OPENID身份验证集成到REST API和前端框架体系结构中

mre*_*345 6 openid frontend jwt steam

我目前正在创建一个网站,要求用户使用Steam登录后才能使用我网站的其余功能。Steam当前仅支持OPENID进行身份验证。我这样做的方法是按照以下步骤操作:

  1. 用户按下“使用Steam登录”按钮

  2. 我的前端重定向到steamcommunity.com

  3. 如果用户成功登录,则用户的浏览器应重定向到我的后端,然后我将该用户添加到数据库(如果他们还不在数据库中)并创建一个JSON Web令牌并将其发送回我的前端。

    例如:

    myfrontend.com?token={my_json_web_token}

  4. 然后,我的前端将此令牌另存为客户端cookie,并在对服务器的每个请求中,将此cookie的内容发送到服务器。

我已经集成了我的应用程序,但是它正在变得越来越流行,所以我想知道我实现它的方式是否有效。

谢谢

kag*_*ag0 0

这听起来是正确的做法。

需要注意的一件事是,由于您使用的是 cookie,因此您希望确保拥有一些 CSRF 保护,但这并不完全是您所要求的。

跨站请求伪造示例