Как сохранить учетные данные базы данных для приложения Heroku Node.js с открытым исходным кодом? - PullRequest
2 голосов
/ 11 октября 2011

Я создаю приложение Node.js и мне нужно хранить учетные данные базы данных (и другие свойства времени выполнения) таким образом, чтобы их можно было прочитать при развертывании в Heroku. Мой источник доступен в общедоступном репозитории GitHub.

В настоящее время я использую переменные окружения, настроенные с помощью heroku config:add, но я пытаюсь понять, есть ли альтернативы. Я потенциально хотел бы использовать Cloud9 IDE , но в настоящее время он не поддерживает переменные среды.

Другой вариант - сохранить параметры в конфигурации. файл, но я полагаю, что файл должен быть зарегистрирован в Git (и, следовательно, должен быть общедоступным), чтобы его можно было отправить в Heroku.

Спасибо за вашу помощь.

Ответы [ 2 ]

4 голосов
/ 12 октября 2011

ENV переменные обычно считаются подходящим способом и способом, которым Heroku делает это самостоятельно для database_urls и тому подобного.

Поскольку вы и ваше приложение - единственные люди, которые имеют доступ к env vars, вы, как правило, в порядке с точки зрения безопасности.

Вводить учетные данные в Git или аналогичную программу - плохая идея, поскольку это еще одно место, которое необходимо защитить.

0 голосов
/ 03 ноября 2011

Один из известных мне способов решения проблемы разработки с использованием аргументов командной строки.Они могут быть указаны в вашей конфигурации запуска / отладки.Затем вы можете получить доступ к параметрам в process.argv.Конечно, это означает, что они будут храниться в вашей среде разработчика Cloud9IDE.Затем вы можете использовать переменные ENV в розничном производстве.Это по крайней мере предотвратит видимость учетных данных в исходных или конфигурационных файлах.

...