IraSoro / web-services-adapter

This application is a free and open analogue of Zapier, Microsoft Flow and other similar services.
0 stars 0 forks source link

Режим с поддержкой множества пользователей, Аутентификация/Авторизация #76

Closed imblowfish closed 2 years ago

imblowfish commented 2 years ago

Задачу можно поделить на несколько частей

Библиотеки http://www.passportjs.org/

Готовые сервера для авторизации https://auth0.com/ https://github.com/erkanzileli/go-auth

Примеры С passport.js https://www.dotnettricks.com/learn/nodejs/authentication-authorization-using-passport-js Серия статей об аутентификации, особенно интересен момент, когда подключаются к текущему аккаунту аккаунты с других сервисов (Google, Facebook) и как они хранятся внутри приложения, может пригодиться для хранения информации из телеграм бота и Google в БД, а не conf-файле у нас https://github.com/scotch-io/easy-node-authentication

В идеале, после завершения этой задачи можно избавиться от Proxy в конфиге и каких-либо изменений конфигурационного файла оставив его только для того, для чего он предназначен - базовая конфигурация приложения

imblowfish commented 2 years ago

Тут годно шаги расписаны https://stackoverflow.com/questions/33422511/understanding-authentication-flow-with-refresh-and-access-tokens-on-nodejs-app https://medium.com/@sugandhasaxena1212/access-token-and-refresh-token-with-node-js-a501e1cc034b

Тут годные диаграмки https://www.bezkoder.com/node-js-jwt-authentication-mysql/

Более-менее новые примеры с JWT https://medium.com/quick-code/how-to-use-jwt-for-express-nodejs-628ddf9f7c83 https://www.digitalocean.com/community/tutorials/nodejs-jwt-expressjs#step-2-authenticating-a-token

Хэширование паролей на стороне сервера https://www.codespot.org/hashing-passwords-in-nodejs/ https://attacomsian.com/blog/nodejs-password-hashing-with-bcrypt https://www.loginradius.com/blog/engineering/hashing-user-passwords-using-bcryptjs/ https://jasonwatmore.com/post/2020/07/20/nodejs-hash-and-verify-passwords-with-bcrypt

imblowfish commented 2 years ago

MDN с описанием flow для Basic Auth https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Authorization https://developer.mozilla.org/en-US/docs/Web/HTTP/Authentication#basic_authentication_scheme

imblowfish commented 2 years ago
imblowfish commented 2 years ago

Дополнил запросы в Thunder Environment'ом Нужно зайти в Thunder->Env, там создать Env с параметрами access_token username password При login получить access_token, вписать к переменной и сохранить После этого зайти в Collections->Выбрать коллекцию->Settings, там выбрать привязку к Environment

imblowfish commented 2 years ago

В данной задаче не сделаны

imblowfish commented 2 years ago

Еще в этой задаче не сделан перезапрос токена доступа, это тоже решил оставить на задачу по переработке ui