Javascript 使用环回使用一次性令牌登录用户

Javascript 使用环回使用一次性令牌登录用户,javascript,authentication,access-token,loopbackjs,Javascript,Authentication,Access Token,Loopbackjs,我正在开发一个环回应用程序,它有两种类型的用户——一个是可以在应用程序中自行注册的“主管”,另一个是只能由主管注册的“下属”(并且与该用户相关)。主管使用电子邮件和密码登录,就像loopback中的基本用户模型一样,但下属使用基于日期哈希生成的电子邮件和密码。这是为了确保下级记录不与个人可识别数据绑定,这是应用程序的一项要求。下属可以使用生成的凭证登录系统,但跟踪伪随机信息是不可行的 环回中的用户是否有任何方法可以获取访问令牌(或者更好的是,生成一个可记忆的密码短语),以代替用户名和密码来登录从

我正在开发一个环回应用程序,它有两种类型的用户——一个是可以在应用程序中自行注册的“主管”,另一个是只能由主管注册的“下属”(并且与该用户相关)。主管使用电子邮件和密码登录,就像loopback中的基本用户模型一样,但下属使用基于日期哈希生成的电子邮件和密码。这是为了确保下级记录不与个人可识别数据绑定,这是应用程序的一项要求。下属可以使用生成的凭证登录系统,但跟踪伪随机信息是不可行的


环回中的用户是否有任何方法可以获取访问令牌(或者更好的是,生成一个可记忆的密码短语),以代替用户名和密码来登录从属用户类型?这似乎与使用令牌登录以重置密码的功能类似,但我不确定如何使用可重用的密码短语来执行此操作。

据我了解,您的帖子中,“主管”用户类型有特定的电子邮件和密码,而另一个用户类型“下属”没有特定的电子邮件密码

在模型的登录方法中也有类似的场景。如果用户使用社交网络帐户登录系统,UserIdentity模型将为此匿名用户创建一个帐户

例如,如果用户使用google帐户登录。然后模型使用用户的google id(模型中的外部id),基于用户id创建用户名

检查模型中的profileToUser方法。登录方法使用profileToUser方法。您可以为您的场景找到有用的东西

function profileToUser(provider, profile) {
  // Let's create a user for that
  var email = profile.emails && profile.emails[0] && profile.emails[0].value;
  if (!email) {
    // Fake an e-mail
    email = (profile.username || profile.id) + '@loopback.' +
          (profile.provider || provider) + '.com';
  }
  var username = provider + '.' + (profile.username || profile.id);
  var password = utils.generateKey('password');
  var userObj = {
    username: username,
    password: password,
    email: email
  };
  return userObj;
}

不知道为什么会被否决-应用程序中已经存在身份验证,这是一个关于特定于框架的实现问题的问题…下面的答案对您有用吗?我也有类似的情况