Как с помощью passport-locals и других инструментов Node.js для passport.js можно получить эквивалент полного CRUD?
Я посмотрел документацию в файле passport.js, и стратегия passport-local кажется явно неполной.
Если у вас есть база пользователей, у которых есть пароли в любой форме, то из документов на http://passportjs.org/docs/username-password ясно, как разрешить людям пытаться войти в систему, получите полезную информацию. сообщение об ошибке (и, с точки зрения удобства использования, приятно сообщить, какое имя пользователя или пароль не совпадали), и, если они дали действительные учетные данные, войдите в систему.
Тем не менее, существует некий набор базовых функций CRUD, связанных с аутентификацией по имени пользователя и паролю. Часто желательно, чтобы люди могли создавать свои собственные учетные записи; Кроме того, если они забыли свои пароли, они должны иметь возможность запросить ссылку "сбросить пароль" и получить возможность войти в систему, не отправляя пароль в виде открытого текста по электронной почте. Все это немного хлопотно, но это основа, которую необходимо охватить, так как различные приложения нуждаются в покрытии CRUD.
Документация, которую я прочитал о passport-local, не обсуждает это, и то, что я искал, выглядело как способ Mongoose вручную заново изобрести эту квази-CRUD сторону аутентификации по имени пользователя и паролю. Я не знаю, является ли это ограничением местных паспортов или документов.
Если я хочу иметь обычные функции для общедоступного веб-сайта с учетными записями, которые люди могут создавать для себя, и я уже использую Express.js и (по договоренности) Passport.js, каковы мои варианты?
Спасибо,
1 ответ
Если вы ищете полноценную систему управления пользователями CRUD, вы не сможете победить что-то вроде Stormpath.
Использование их библиотеки express.js мгновенно дает вам полную систему CRUD (с Node / Express / Restify / Loopback / Python / Django / Flask / и т. Д.) Для управления / работы с вашими пользователями.
Вот их документы библиотеки express.js: https://docs.stormpath.com/nodejs/express/
По сути, то, что они делают:
- Они будут хранить ваши учетные записи.
- Вы используете их промежуточное ПО для создания / входа в систему / управления пользователями.
- Вы можете использовать их промежуточное ПО для ограничения страниц по имени входа, группе, API-аутентификации и т. Д.
- Вы можете использовать их библиотеки для поиска / сортировки / создания / обновления / удаления пользователей / ключей API / приложений / групп.
Это очень полно и хорошо задокументировано.
Я являюсь автором вышеуказанной библиотеки, поэтому я немного предвзят, но это, честно говоря, весьма полезно =)