Использование пакета symfony / dotenv в продакшене

Документация ссылается на принципы Двенадцать факторов, объясняющие, почему конфиденциальную конфигурацию не следует хранить в файлах, однако это имеет смысл в основном для SaaS. Интересно, безопасно ли использовать пакет symfony / dotenv в программном обеспечении, которое пользователи развертывают в своих системах.

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

Cerad 17.05.2018 20:14
Стоит ли изучать PHP в 2026-2027 годах?
Стоит ли изучать PHP в 2026-2027 годах?
Привет всем, сегодня я хочу высказать свои соображения по поводу вопроса, который я уже много раз получал в своем сообществе: "Стоит ли изучать PHP в...
Symfony Station Communiqué - 7 июля 2023 г
Symfony Station Communiqué - 7 июля 2023 г
Это коммюнике первоначально появилось на Symfony Station .
Symfony Station Communiqué - 17 февраля 2023 г
Symfony Station Communiqué - 17 февраля 2023 г
Это коммюнике первоначально появилось на Symfony Station , вашем источнике передовых новостей Symfony, PHP и кибербезопасности.
Управление ответами api для исключений на Symfony с помощью KernelEvents
Управление ответами api для исключений на Symfony с помощью KernelEvents
Много раз при создании api нам нужно возвращать клиентам разные ответы в зависимости от возникшего исключения.
2
1
115
1
Перейти к ответу Данный вопрос помечен как решенный

Ответы 1

Ответ принят как подходящий

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

Я уверен, что он достаточно безопасен, чтобы использовать компонент dotenv для загрузки переменных из файла .env, поскольку он не предоставляет никакого интерфейса для взаимодействия с самим собой.

Мы также храним в этом файле переменные среды, специфичные для докеров, так что в конечном итоге это похоже на старый файл конфигурации parameters.yaml для всего проекта.

Другие вопросы по теме