Ключи API и заголовки авторизации
Большинство полезных API не открыты всему миру. Компании нужно знать, кто спрашивает, чтобы отслеживать использование и выставлять вам счёт. Они выдают вам ключ API — длинную секретную строку, которая идентифицирует ваш аккаунт. Вы прикрепляете его к каждому запросу, обычно в HTTP-заголовке под названием Authorization, как в строке Bearer sk_live_... выше.
Относитесь к ключу API ровно как к паролю, потому что он им и является. Любой, у кого он есть, может делать запросы от вашего имени — и накрутить вам счёт или прочитать ваши данные. Это напрямую связано с главой о безопасности, и есть одно правило, которое важнее всего:
- Никогда не помещайте ключ API в код, который отправляется в браузер. Всё, что есть в вашем фронтенде, публично — пользователи могут открыть инструменты разработчика и прочитать его. ИИ, которого попросили «вызвать API со страницы», радостно вставит ваш секретный ключ прямо туда. Остановите его. Секретным ключам место на сервере.
- Никогда не коммитьте ключ в git. Даже если вы удалите его позже, он навсегда останется в истории, а боты сканируют публичные репозитории в поисках ключей в течение минут.
- Храните ключи в переменных окружения, а не в самом коде — тот же шаблон, который разбирает глава о безопасности.
Если вы когда-нибудь увидите настоящий ключ, лежащий в дифе, во фронтенд-файле или в сообщении чата, считайте его уже утёкшим: немедленно проведите ротацию (сгенерируйте новый, отключите старый).