Size: a a a

Node.js — русскоговорящее сообщество

2020 January 17

В-

Вернер Карл Гейзенберг - Агент Госдепа in Node.js — русскоговорящее сообщество
Здравствуйте. Может кто подсказать чат по сео?
источник

*/

*1453 /13 in Node.js — русскоговорящее сообщество
найти не сложно)
источник

E

Envy in Node.js — русскоговорящее сообщество
Доброе утро, коллеги, с использованием каких средств сейчас принято реализовывать авторизацию на сайте/в web-приложении? Мне сейчас необходимо реализовать доступ к ресурсу с помощью логина-пароля пользователей, очевидно, что необходимо будет хранить данные для входа: логин и пароль в базе данных, но не совсем очевидно, с помощью каких средств
источник

EZ

Evgeniy Zaykov in Node.js — русскоговорящее сообщество
express-session
источник

EZ

Evgeniy Zaykov in Node.js — русскоговорящее сообщество
в базу сохраняй хэшированный пароль и логин. При авторизации (совпадении логина) хэшируется введенный пароль (по тому же алгоритму) и сравнивается с сохраненным в базе (это значит что авторизация прошла). В открытом виде пароли в базе не храни.
источник

EZ

Evgeniy Zaykov in Node.js — русскоговорящее сообщество
самый простой и надежный способ
источник

EZ

Evgeniy Zaykov in Node.js — русскоговорящее сообщество
и ещё естественно сохранить нужно будет саму сессию. Для этого нужно найти пакет чтото вроде express-session-mongo например (не помню точно). Чтобы когда пользователь авторизован (у него есть кука на клиенте, оставленная express-session) бэк сравнит её с сессией в базе.
источник

u

undefined in Node.js — русскоговорящее сообщество
сделай сам, это вроде просто. Генерацию и сравнение хешей паролей можешь реализовать с помощью этого метода https://nodejs.org/dist/latest-v13.x/docs/api/crypto.html#crypto_crypto_pbkdf2_password_salt_iterations_keylen_digest_callback

Саму соль можешь сделать одну на всех, а можешь генерировать для каждого случайную https://nodejs.org/dist/latest-v13.x/docs/api/crypto.html#crypto_crypto_randombytes_size_callback
источник

EZ

Evgeniy Zaykov in Node.js — русскоговорящее сообщество
нет, со случайной солью хэши совпадать не буду.
источник

EZ

Evgeniy Zaykov in Node.js — русскоговорящее сообщество
например одну соль для пользователей или группы пользователей но ни для каждого
источник

E

Envy in Node.js — русскоговорящее сообщество
Огромное спасибо за отклик!
источник

EZ

Evgeniy Zaykov in Node.js — русскоговорящее сообщество
Старайся никогда не использовать готовое алгоритмическое решение целиком (типо пасспорт жс) пока не поймешь сам алгоритм. Решения типо express-session или express-session-mongo использовать можно тк они выполняют очень узкий обьем работы (но также важно прочитать описание этой работы). После того как алгоритм понятен можно юзать любые пасспорты и тд и тп
источник

E

Envy in Node.js — русскоговорящее сообщество
Понял Вас, ещё раз благодарю за совет
источник

W

Wacker in Node.js — русскоговорящее сообщество
Evgeniy Zaykov
Старайся никогда не использовать готовое алгоритмическое решение целиком (типо пасспорт жс) пока не поймешь сам алгоритм. Решения типо express-session или express-session-mongo использовать можно тк они выполняют очень узкий обьем работы (но также важно прочитать описание этой работы). После того как алгоритм понятен можно юзать любые пасспорты и тд и тп
очень хороший совет
источник

u

undefined in Node.js — русскоговорящее сообщество
Evgeniy Zaykov
нет, со случайной солью хэши совпадать не буду.
ну само собой надо где-то хранить соль для каждого пользователя в данном случае.
Например, в бд по типу id, login, password_salt, password_hash
источник

VL

Vladimir Lastovka in Node.js — русскоговорящее сообщество
Envy
Доброе утро, коллеги, с использованием каких средств сейчас принято реализовывать авторизацию на сайте/в web-приложении? Мне сейчас необходимо реализовать доступ к ресурсу с помощью логина-пароля пользователей, очевидно, что необходимо будет хранить данные для входа: логин и пароль в базе данных, но не совсем очевидно, с помощью каких средств
password: {
   type: DataTypes.STRINGSTRING,
   allowNull: false,
   set(password) {
       const salt = bcrypt.genSaltSync();
       this.setDataValue('salt', salt);
       this.setDataValue('password', bcrypt.hashSync(password, salt));
   },
},
источник

Т

Тимофей in Node.js — русскоговорящее сообщество
Alexey Maron
я сделал сайт plexuseng.com для своей основной работы. но углубленная работа node.js мне не дается пока, думал с ментором ускорюсь...
Господи, такой сайт калькулятор на js за вечер можно написать🤦🏻‍♂
источник

Т

Тимофей in Node.js — русскоговорящее сообщество
Уровень обычного верстальщика это
источник

W

Wacker in Node.js — русскоговорящее сообщество
Alexey Maron
я сделал сайт plexuseng.com для своей основной работы. но углубленная работа node.js мне не дается пока, думал с ментором ускорюсь...
молодец, продолжай в том же духе
источник

W

Wacker in Node.js — русскоговорящее сообщество
Alexey Maron
я сделал сайт plexuseng.com для своей основной работы. но углубленная работа node.js мне не дается пока, думал с ментором ускорюсь...
ментор либо денег стоит, либо вы должны его заинтересовать
источник