Size: a a a

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

2020 August 05

ИЛ

Илья Лукьянов... in Node.js — русскоговорящее сообщество
SkipTyler aka Sunrise
Всем привет.
Делаю подтверждение емейла юзером.
будет ссылка,  с уникальным гет параметром.

Подскажите,  как правильно это реализовать?
Со стороны секьюрности,  и создания уникальной строки в монго.

Если взять _id юзера,  и захешировать его при  помощи bcrypt, норм будет?

Ну а после делать поиск в бд  по этому хешу
Для айди в гет параметре можно взять crypto.randomBytes, чтобы не было зависимости от _id
источник

Sa

SkipTyler aka Sunris... in Node.js — русскоговорящее сообщество
Илья Лукьянов
Для айди в гет параметре можно взять crypto.randomBytes, чтобы не было зависимости от _id
а как быть с уникальным значением?
источник

Sa

SkipTyler aka Sunris... in Node.js — русскоговорящее сообщество
тут же есть шанс,  что будет одинаковая строка
источник

ИЛ

Илья Лукьянов... in Node.js — русскоговорящее сообщество
Она супер маленькая, у тебя же не в 1 символ айдишник?
источник

ИЛ

Илья Лукьянов... in Node.js — русскоговорящее сообщество
Возьми 16 байт и никогда не совпадет))
источник

Sa

SkipTyler aka Sunris... in Node.js — русскоговорящее сообщество
ок, а Ну а после делать поиск в бд  по этому хешу - это ок?
источник

ИЛ

Илья Лукьянов... in Node.js — русскоговорящее сообщество
Вообще классно было бы эту строку как-то декодироватт в айди монговскмй, насколько помню быстро поиск будет, чтобы не искать по хешу
источник

ИЛ

Илья Лукьянов... in Node.js — русскоговорящее сообщество
Здесь уже шифрование прикручивать придется)
источник

Sa

SkipTyler aka Sunris... in Node.js — русскоговорящее сообщество
типа,  можно взять bcrypt какой-то?

или аргон2?
источник

ИЛ

Илья Лукьянов... in Node.js — русскоговорящее сообщество
Аргон2 это что?
источник

Sa

SkipTyler aka Sunris... in Node.js — русскоговорящее сообщество
Илья Лукьянов
Аргон2 это что?
подобие бкрипт

на каком-то митапе слышал, что он топ в своем роде)
источник

ИЛ

Илья Лукьянов... in Node.js — русскоговорящее сообщество
В общем ты можешь не писать в базу хешей никаких, просто шифруй айди, получишь уникальную строку в гет параметр

Юзер перешел ты расшифровал обратно получил айди нашел быстро юзера и тл
источник

ИЛ

Илья Лукьянов... in Node.js — русскоговорящее сообщество
Шифрование обратимо в отличие от хеширования и удобно в данном случае
источник

ИЛ

Илья Лукьянов... in Node.js — русскоговорящее сообщество
Шифровать можно аесом из того де модуля crypto, доку почитай
источник

R

Roman in Node.js — русскоговорящее сообщество
ребят как сравнить два массива в mongodb
источник

R

Roman in Node.js — русскоговорящее сообщество
в группе по монге молчат :/
источник

ИЛ

Илья Лукьянов... in Node.js — русскоговорящее сообщество
Roman
ребят как сравнить два массива в mongodb
Не получая из базы?
источник

R

Roman in Node.js — русскоговорящее сообщество
Илья Лукьянов
Не получая из базы?
смотри я закидываю в монгу объект с массивом, внутри 50-100 обьектов со списком разной ерунды типо наименование товара
источник

R

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

R

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