Приложение My Vue.js, которое взаимодействует с данными через серверную часть Node.js, получает доступ как к конфиденциальным, так и нечувствительным данным.Мне удалось защитить API на сервере Node, которые работают с чувствительными данными (такими как обновление информации о ценах) с помощью API аутентификации Google .Для этого пользователю необходимо войти в систему с учетной записью Google, прежде чем он сможет взаимодействовать с этими API.
Сейчас я пытаюсь защитить API, которые просто извлекают нечувствительные данные (такие как имена, описания, цены на продукты, которые я продаю, и т. д.), так что даже указанные API не могут быть доступны напрямую без какой-либо формы аутентификации.то есть.Если бы я использовал что-то вроде Postman для непосредственного извлечения данных из API, без аутентификации я бы не смог получить никаких данных.Тем не менее, эти API доступны из части Vue.app, которая не требует входа в систему.то есть.Пользователи на сайте могут просматривать информацию о продукте, цене и т. Д. Без необходимости входа в систему.
Чтобы защитить эти «нечувствительные» API, мне нужно будет передать «секретный» ключ, такой как ключ API отвнешний интерфейс Vue к серверному узлу.Я считаю, что из двух других постов, которые я сделал ( здесь и здесь ), невозможно передать переменные окружения в приложение Vue во время выполнения (я используюVue CLI 3).Это оставляет мне необходимость жестко закодировать ключ API в коде переднего плана, что означает, что он больше не является «секретным» или безопасным.
По сути, я пытаюсь выполнить «Аутентификацию приложения», но без возможностичтобы передать переменные ENV в Vue во время выполнения, я не знаю, как сделать это безопасно.
Все, что я читаю в Интернете, указывает на:
- Передача переменных ENV вVue во время сборки (что небезопасно в этом сценарии);или
- что мне чего-то не хватает из-за того, что я хочу передать переменные ENV в Vue во время выполнения.
Вопрос.защитить данные, которые не являются конфиденциальными?