Auth0 как отправить письмо как логин
После того, как я обновил Auth0 с версии 9 до версии 11, я сталкиваюсь с проблемой при аутентификации.
У меня есть URL запроса: https://my-domain.auth0.com/co/authenticate, и все параметры в моем запросе выглядят хорошо, кроме имени пользователя. Он отправляет усеченную электронную почту в качестве параметра имени пользователя, то есть, если я набираю "somebody@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 ответ
Мы можем использовать Auth0 Management API v2 для обновления username
с помощью patch_users_by_id
(не забудьте включить connection
имя при отправке патча для обновления имени пользователя).
Чтобы уточнить, я полагаю, что это зависит от типа вашего соединения, которое будет определять, как будет установлено имя пользователя. Пример для соединений с базой данных, если Requires Username
Если пользователи активны, пользователь может установить опцию для имени пользователя, чтобы они могли затем войти в систему под своим именем пользователя или адресом электронной почты. Если вы используете соединение с базой данных, вы можете также проверить длину имени пользователя в Dashboard> Connections> Database > your-db-connection
> Длина имени пользователя. Какой тип соединения вы используете? Какой вариант использования вы хотите установить? username
к email
? В зависимости от того, чего вы пытаетесь достичь, мы можем рассмотреть использование правила для хранения данных в user_metadata
,