5

首先让我说我真的很喜欢Deployd。我想在生产中使用它,但我想结合 OAuth 和社交登录,所以我安装了dpd-passport模块。它工作得很好,除了两个小(大)问题:

  1. 当用户通过 OAuth 提供商(例如 Facebook、Twitter、Github)登录时,会创建一个新的用户记录……但如果同一用户清除了他们的 cookie 或使用不同的浏览器登录,则会创建一个新的用户记录。
  2. 如果我做了一些聪明的事情(阅读:hacky)并根据 socialAccount 和 socialAccountId 为具有社交登录的用户分配一个 ID(对于每个社交帐户来说都是唯一但不变的),那么有人可以使用标准的用户创建方法来欺骗用户/users如果他们知道该用户的 socialAccount 和 socialAccountId,则向端点发送 POST 请求。

我的问题是:IA)如何防止 #1 发生,或者 B)在阻止 OAuth 用户创建的情况下禁用用户创建的标准方法?

有没有人成功使用Deployddpd-passport投入生产?如果是这样,我想和你谈谈……

提前致谢!

4

1 回答 1

0

首先,我认为您没有根据文档添加自定义字段。 https://www.npmjs.com/package/dpd-passport#requirements

我也没有,并观察了新的用户功能(因为它无法查找来自身份验证服务的响应以找到以前的用户)。添加这些字段修复了它。

此外,这里有一个 google 组: https ://groups.google.com/forum/#!forum/deployd-users

希望有帮助。

于 2015-04-03T21:58:03.327 回答