2016-02-08 6 views
2

Некоторые пользователи нашего приложения являются администраторами. Мы хотим дать им возможность создавать новых пользователей. Мы думаем о следующем потоке:Как создать пользователя штурмарта без пароля?

  1. Admin переходит на страницу «Пользователи» и нажимает кнопку «создать нового пользователя» и заполняет новое имя пользователя и адрес электронной почты.
  2. Этот новый пользователь получает электронное письмо с подтверждением того, что пользователь был создан в нашем приложении.
  3. Пользователь нажимает на ссылку из тела электронной почты и переходит на страницу «Установить пароль» и укажите свой пароль.

Можно ли достичь такого потока с угловым + выражением? Есть ли другие возможные потоки, которые могут быть достигнуты?

ответ

2

Вы можете создать поток, основанный на приглашении, но вам нужно будет выполнить некоторую работу с нашими библиотеками.

Вам нужно будет работать с приложением Stormpath Client и Stormpath Application напрямую, они предоставляются с помощью Stormpath Node SDK. Внутри вашего Экспресс промежуточного слоя, получить клиент с:

var stormpathClient = req.app.get('stormpathClient')

и приложение с:

var stormpathApplication = req.app.get('stormpathApplication`)

О применении, используйте stormpathApplication.createAccount() для создания пользователя. Когда вы передаете новые данные учетной записи, установите пароль на то, что очень длинное, случайное и недопустимое. Если ваш каталог Stormpath включил проверку электронной почты, пользователь получит приглашение по электронной почте. Это электронное письмо должно связывать их с вашим угловым приложением, чтобы пользовательский вид считывал токен проверки электронной почты из URL-адреса и отправлял его на собственное промежуточное программное обеспечение на вашем сервере. Этому промежуточному программному обеспечению необходимо будет использовать stormpathClient.verifyAccountEmail() для проверки токена.

Затем вы можете получить новый пароль для пользователя и сохранить его, установив req.user.password='new password', а затем позвонить req.user.save().

Надеюсь, это поможет! Я работаю в Stormpath, и я являюсь хранителем этих библиотек :)