Безопасность: Могу ли я локально изменить (например, chrome) переменную .env, состояние реакции или состояние избыточности? - PullRequest
0 голосов
/ 09 апреля 2020

Этот вопрос съедает мою душу с тех пор, как я начал программировать реагировать.

Можем ли мы делать такие вещи?

Допустим, я установил свой NODE_ENV в локальном сеансе chrome на "развитие" и ... бум! Я суперадмин в нескольких приложениях

Или я установил состояние IS_AUTHED на "да, я авторизован, впустите меня"

Хорошо, я думаю, что это не работает с JWT и другие системы аутентификации, но я уверен, что некоторые реагирующие приложения там имеют только состояние в избыточности или реагируют на сохранение статуса аутентификации. Я испугался. Я пишу с тенью позади себя, говоря, что состояния и переменные env опасны.

Спасибо, ребята!

РЕДАКТИРОВАНИЕ: Да, вы можете редактировать переменные реагирования или редукции в go, и это явно отразится на фронте.

Но если приложение хорошо спроектировано и в переднем коде нет конфиденциальной информации, с вами все будет в порядке. Это означает, что все конфиденциальные данные должны поступать из аутентифицированных соединений с сервером)

Нет идеи относительно изменения переменных env, таких как NODE_ENV, или как это сделать, но та же идея: вы должны быть в безопасности, если вы не пишете конфиденциальные данные за условием "NODE_ENV =" разработка "

1 Ответ

0 голосов
/ 09 апреля 2020

Из того, что я изучаю из своих проектов, мы обычно не передаем ключи env узла, если это то, на что вы ссылаетесь. Кроме того, то, что вы спрашивали о таких состояниях, как isAuthed, хорошо, если я разработчик и я реализую такие вещи, как isAuthenticated на стороне клиента, я бы сделал с помощью файлов cookie , чтобы пользователь не мог их изменить. Также, если вы хотите быть очень осторожно на них я бы использовал данные сеанса на стороне сервера для хранения пользовательской информации, но опять же, это бесполезная трата памяти на стороне сервера, если в систему вошло слишком много пользователей.

...