Auth0如何以用户名发送电子邮件

时间:2018-07-26 13:03:12

标签: auth0 auth0-lock

将Auth0从版本9升级到版本11后,在身份验证时会遇到问题。

我有一个请求URL:https://my-domain.auth0.com/co/authenticate,并且请求中的所有参数看起来都很不错,除了用户名。它会将截断的电子邮件作为用户名参数发送,即,如果我键入“ someone@gmail.com”,则只会发送“某人”作为用户名。

export class AuthService {
idToken: string;
lock = new Auth0Lock(myConfig.clientID, myConfig.domain, {
      responseType: 'id_token token',
         .........
      params: {
--------------->>>>>>>>>> if I write here:
          username: 'someone@gmail.com',
--------------->>>>>>>>>> then it sends this email as username parameter, 
no matter what I type in the login form. 
IS THERE A WAY TO WRITE SOMETHING LIKE username: 'email' (this one is not working)
      }
  }
});

是否可以将完整的电子邮件作为用户名发送?

1 个答案:

答案 0 :(得分:1)

我们可以使用Auth0 Management API v2使用patch_users_by_id更新username(发送补丁程序更新用户名时,请确保包含connection名称)。

详细地说,我相信这取决于您确定用户名设置方式的连接类型。例如,对于database connections,如果启用了Requires Username,则用户可以设置用户名选项,以便随后可以使用其用户名或电子邮件地址登录。如果您使用的是数据库连接,则可能还需要检查username length> your-db-connection> 用户名长度中的Dashboard > Connections > Database。您使用哪种类型的连接?您要将username设置为email的用例是什么? 根据您要实现的目标,我们可以考虑使用Rule将数据存储在user_metadata中。