Как да създадете потребител на stormpath без парола?

Някои потребители на нашето приложение са администратори. Искаме да им дадем възможност да създават нови потребители. Ние мислим за следния поток:

  1. Администраторът отива на страницата „Потребители“ и щраква върху бутона „създаване на нов потребител“ и попълва името и имейл адреса на новия потребител.
  2. Този нов потребител извлича имейл с потвърждение, че потребител е създаден в нашето приложение.
  3. Потребителят кликва върху връзка от тялото на имейла и преминава към страницата „Задаване на парола“ и посочва своята парола.

Възможно ли е да се постигне такъв поток с angular + express? Има ли други възможни потоци, които могат да бъдат постигнати?


person user2643246    schedule 08.02.2016    source източник


Отговори (1)


Можете да създадете поток, базиран на покани, но ще трябва да извършите частична работа с нашите библиотеки.

Ще трябва да работите директно с клиента Stormpath и приложението Stormpath, те се предоставят от Stormpath Node SDK. Във вашия Express междинен софтуер изтеглете клиента с:

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

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

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

В приложението използвайте stormpathApplication.createAccount(), за да създадете потребителя. Когато предавате новите данни за акаунта, задайте паролата на нещо, което е много дълго, произволно и не може да се познае. Ако вашата директория Stormpath има активирана проверка на имейл, потребителят ще получи имейл с покана. Този имейл трябва да ги свърже с вашето Angular приложение, към персонализиран изглед, който ще прочете токена за потвърждение на имейл от URL адреса и ще го публикува в персонализиран междинен софтуер на вашия сървър. Този междинен софтуер ще трябва да използва stormpathClient.verifyAccountEmail(), за да потвърди токена.

След това можете да съберете нова парола за потребителя и да я запазите, като зададете req.user.password='new password', след което извикате req.user.save().

Надявам се това да помогне! Работя в Stormpath и поддържам тези библиотеки :)

person robertjd    schedule 08.02.2016