их хранить, если админский доступ к серверу (Windows Server) имеют другие?
На другом сервере
А как именно попадут они в NodeJS? И к тому-же, это новая зависимость от работы другого сервера
Nodejs тоже на другом сервере
Какие пароли, куда отдавать, ничего не понятно Если мы говорим о паролях пользователя - крипт и в бд, потом сравнивай Если это какие-то секрет аксес ключи или прочее - зависит от того, что используется, в k8s например в secrets пихаем, у aws тоже есть сервис для таких дел
Пароли нужно отдавать NodeJS приложению при запуске, для работы определенного сервиса (например email сервис) Переменные среды доступны всем
Выгони всех или переезжай
Другого варианта нет? Вижу только вариант с вставкой при запуске (argv или через stdin)
Указать переменные окружение непосредственно перед вызовом MY_VAR=1 node app.js
Переменные среды можно посмотреть, даже если они передаются при запуске а не в файле .env лежать. В линукс по крайней мере. За винду не уверен
Видны приложению, которые с ними запустили, другим нет MY_VAR=123 node app.js & echo $MY_VAR
Переменные будут лежать в файлике в /proc/номер_процесса/както_там Если пользователь имеет права, то может глазами посмотреть. Но мы не знаем какие условия у тс
Там вопрос был по Windows Server. В нем тоже так просто смотреть?
к стати, попробовал привязать дебагер к запущеному процессу ноды и так тоже можно посмотреть
нельзя не давать всем админский доступ?
Логично 😉 что сам процесс читает process.env если их не удалили/переопределили после прочтения, так же как и аргументы. Но смысл вопроса, если в системе имеется ещё один привелигерованный пользователь?
Вот мне тоже интересно, как суперюзеру спрятать что-то от других суперюзеров. Любопытство.
Зависит от степени любопытства других суперюзеров 🤷♀ кто в детстве не использовал артмани? 🤪
вот он собрался из стдаут получить секреты и в памяти нод процесса хранить. Я подключился дебагером к процессу, сделал снимок памяти. Наверное оно там есть. Сижу, думаю как найти в снимке что либо.
Обсуждают сегодня