如何将 OPENID auth 集成到 REST api 和前端框架架构中

How to integrate OPENID auth into a REST api and front-end framework architecture

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

  1. 用户按下 "Log in with Steam" 按钮

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

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

    例如:

    myfrontend.com?token={my_json_web_token}

  4. 然后我的前端将此令牌保存为客户端 cookie,并且在每次向服务器发出请求时,我都会将此 cookie 的内容发送到服务器。

我已经集成了我的应用程序,但它才刚刚流行起来,所以我想知道我的实现方式是否有效。

谢谢

这听起来是正确的做法。

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

CSRF example