Загрузка...

Request Security

Thread in Node.js created by Mi7kiro Jul 2, 2023. 198 views

  1. Mi7kiro
    Mi7kiro Topic starter Jul 2, 2023 0 Apr 18, 2021
    Делаю веб приложение на react и сервер на express sequelize mysql, когда пользователь логинится ему дается jwt токен и авторизация запросов на сервер для взаимодействия с бд происходит через токен, но если мне надо чтобы допустим человек на клиенте нажимает кнопку получить 30 бесплатных монет, соответственно надо отправить на сервер запрос на изменение количества монет в бд у юзера, но для авторизации же передается только токен и человек может тупо его взять из заголовка и также отправить запрос и изменить себе деньги, так как авторизировать запросы именно от сервера, чтобы посторонний не мог взаимодействовать с бд. Точнее как принято это делать
     
  2. constsvetlov
    constsvetlov Jul 2, 2023 n(1) 231 Jan 29, 2023
    Почему у тебя бизнес логика на клиенте. Переводи на бэк её.
     
    1. View previous comments (3)
    2. constsvetlov
      Mi7kiro, для чего в запрос кидать кол-во монет. Если по идее он получает фиксированное число - 30. Крипт/сокрытие на стороне клиента не имеет смысла, если ты не сделаешь уникальный алгоритм и особо его обфусцируешь. Можно поставить капчу, можно сделать ограничения на количество вызовов.
    3. vtlstolyarov
      Mi7kiro, Тут дело не в авторизации, а в отслеживании как часто пользователь может получать 30 монет, ну и плюс как тебе уже указали ты не должен разрешать указывать количество монет на клиенте - это значение должен устанавливать сервер, а клиент просто должен слать команду типа "выдать бесплатные монеты". Кроме того, доступ к базе не должен быть вшит в jwt токен - доступ к базе должен храниться в конфиг файле на сервере и вообще никак не светиться на клиенте.
    4. Mi7kiro Topic starter
      vtlstolyarov, а как тогда отправлять запросы к базе с клиента, чтобы другие юзеры не видели url?Извините за тупые вопросы
    5. View the next comments (6)
Loading...
Top