ANTICHAT

ANTICHAT (https://forum.antichat.io/index.php)
-   PHP (https://forum.antichat.io/forumdisplay.php?f=37)
-   -   Где лучше хранить API-ключи в PHP, чтоб не сливать их случайно? (https://forum.antichat.io/showthread.php?t=9001797)

Choper-007 24.07.2026 11:50

Где лучше хранить API-ключи в PHP, чтоб не сливать их случайно?
 
У меня много проектов на PHP, и постоянно мучаюсь с тем, как правильно хранить API-ключи. Писать их живьем в коде — слишком опасно, особенно если потом загружать репу на гитхаб или в продакшн.

Лично проверял, что держать ключи в отдельном конфиг-файле вне веб-доступа — норм. Например, .env или config.php, который не попадает в публичные папки и игнорится в git. Но есть нюанс: если проект на хостинге с удобным управлением, лучше туда ключи залить вне самой директории сайта.

Еще сейчас часто советуют использовать getenv() и .env-файлы. Это удобно для локалки и докера, но надо тщательно настроить права на файл и не забывать его не коммитить.

А кто что думает про хранение ключей сразу в базе данных? Мне кажется, это неплохо для динамических систем, но тогда нужен хороший доступ к БД и защита на уровне пользователя.

Плюс, если есть ключи для разных сред (dev, staging, prod) — лучше не смешивать, а держать в отдельных файлах/переменных. Примерно так у меня пока и работает.

Короче, не пишите в коде фиксированные ключи, а то могут вылезти через гит и креденшелды сольются. Как вы на больших проектах с этим боретесь?


Время: 19:19