Должен ли я поддерживать файл JavaScript с маршрутами в качестве переменных или это не безопасная / плохая практика? - PullRequest
1 голос
/ 26 апреля 2020

Наша команда работала над веб-сайтом в последние месяцы, но мы довольно новы в веб-разработке.

Мы запрограммировали наш интерфейс с помощью vanilla JavaScript, наш код обрабатывает некоторые распространенные задачи, такие как отправка http запросы, передача параметров в форму и т. д. c.

Поскольку нам приходится иметь дело с разными конечными точками и маршрутами и часто приходится переключаться между двумя разными доменами, мы решили поместить все используемые маршруты с помощью нашего JavaScript кода (не используется в HTML) в одном файле в качестве переменных, поэтому было бы легче изменить их во время работы. Пример:

const SERVER_ADDRESS = "http://localhost:5000/";

// End points
const CONTACT_GET_ROUTE = SERVER_ADDRESS + "contact/getById/";
const CONTACT_GET_LIST_ROUTE = SERVER_ADDRESS + "contact/list";
const CONTACT_POST_ROUTE = SERVER_ADDRESS + "contact/post";
const CONTACT_PUT_ROUTE = SERVER_ADDRESS + "contact/put";

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

1 Ответ

1 голос
/ 26 апреля 2020

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

Самая важная вещь в безопасности - это понять вашего злоумышленника. и как они могут напасть на вас ... другими словами, вы хотите представить себе самого умного и злого ребенка, которого вы можете (подумайте, Эри c Картман из сериала «Южный парк»), а затем подумать: «Что мог сделать этот ребенок? мой сайт ".

Если вы попробуете это упражнение, я думаю, вы обнаружите, что ... ничто не может сделать злой ребенок, просто зная маршруты вашего клиента. Фактически, даже если вы не поместите эти маршруты в переменные, если злоумышленник будет использовать инструменты разработчика браузера, он сможет все же увидеть ваши маршруты на вкладке Net.

Короче говоря, это не проблема безопасности. Но для более глубокого понимания веб-безопасности я настоятельно рекомендую прочитать OW ASP Top Ten атак, потому что это, по сути, самые умные люди в веб-безопасности, перечисляющие десять лучших способов, которыми ваш сайт может быть атакован (но это также не гора чтения: вам просто нужно понять десять атак, и все готово). Это тот материал из этого списка, о котором вы должны беспокоиться в первую очередь.

PS Хранение маршрутов в переменных также неплохая практика. Наоборот, поддержание вашего кода в чистоте и понятности - это всегда хорошо!

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...