Переменные Digital Ocean ENV - файл .env, переменные ENV или что-то еще? - PullRequest
1 голос
/ 16 апреля 2020

Есть ли в Digital Ocean что-то похожее на Credsta sh или AWS Secrets Manager (обе AWS службы)?

Попытка выбрать наиболее безопасный способ хранения переменных среды с конфиденциальной информацией ( например, коды доступа к базе данных).

Локально, у меня есть файл .env, который назван в моем .gitignore для предотвращения контроля версий.

Если только в файле .env или Переменные окружения, каков наилучший способ обеспечить безопасность для правильной работы приложения?

Очень ценится:)

Приветствия

ДОПОЛНИТЕЛЬНАЯ ИНФОРМАЦИЯ:

У меня полнофункциональный SPA (MongoDB, Node, React, Express) на цифровой океанской капле.

1 Ответ

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

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

  • Как минимум, вы захотите убедиться, что ваша конфиденциальная конфигурация зашифрована в покое на диске и оцените, попадет ли это и в ваши резервные копии, как часть управления инфраструктурой и т. д. c. Даже если вы использовали стороннюю систему для управления учетными данными, вы все равно будете поддерживать учетные данные API на своем хосте для подключения к этой системе, в противном случае она все равно будет доступна локально через монтирование или в памяти, и т. Д. c .

  • Вы также должны учитывать, как строки могут или не могут быть собраны / скопированы мусором в памяти и какова ваша устойчивость к риску.

  • Само собой разумеется, что часть вашего пост-фиксации / CI должна явно гарантировать, что права доступа к файлам установлены правильно, как и предполагалось для ваших конфиденциальных файлов конфигурации (например, chmod 0400).

  • Вы также хотите выполнить сценарий компрометации приложения, в котором злоумышленник может прочитать файловую систему (не память и не внедрение кода приложения) с вашим приложением. Поэтому сделайте su, чтобы выдать себя за пользователя вашего процесса приложения на хосте, чтобы увидеть, что он на самом деле может делать с вашим файлом конфигурации. Если он зашифрован в состоянии покоя и не может обнаружить ключи дешифрования или дешифровать их вообще, то вы, вероятно, находитесь в лучшем месте, чем 99% веб-сайтов WordPress.

Там определенно есть больше для обсуждения, но это должно помочь вам начать. Вы также можете подумать о том, чтобы перейти к https://security.stackexchange.com/ с этим вопросом.

С наилучшими пожеланиями!

...