API-ключ
Что такое API-ключ?
API-ключСтатическая секретная строка, выдаваемая сервисом для идентификации и аутентификации вызывающей стороны; обычно отправляется в заголовке или параметре каждого запроса.
API-ключи — длинные случайные строки, идентифицирующие проект, сервис-аккаунт или разработчика перед backend-API. Их легко выпускать и использовать, но гарантии слабые: идентифицируется вызывающая сторона, а не пользователь; ключи обычно не имеют срока действия и дают все привязанные права. Лучшие практики: хранение в менеджере секретов, отсутствие в клиентском коде и публичных репозиториях, узкий scope, ограничения по IP и Referer, регулярная ротация и немедленный отзыв при утечке. Для авторизации конечного пользователя или критичных операций предпочтительны OAuth 2.0, mTLS или подписанные запросы.
● Примеры
- 01
Authorization: ApiKey sk_live_abc123...
- 02
API Stripe, Google Maps и Twilio с ключами на проект.
● Частые вопросы
Что такое API-ключ?
Статическая секретная строка, выдаваемая сервисом для идентификации и аутентификации вызывающей стороны; обычно отправляется в заголовке или параметре каждого запроса. Относится к категории Идентификация и доступ в кибербезопасности.
Что означает API-ключ?
Статическая секретная строка, выдаваемая сервисом для идентификации и аутентификации вызывающей стороны; обычно отправляется в заголовке или параметре каждого запроса.
Как работает API-ключ?
API-ключи — длинные случайные строки, идентифицирующие проект, сервис-аккаунт или разработчика перед backend-API. Их легко выпускать и использовать, но гарантии слабые: идентифицируется вызывающая сторона, а не пользователь; ключи обычно не имеют срока действия и дают все привязанные права. Лучшие практики: хранение в менеджере секретов, отсутствие в клиентском коде и публичных репозиториях, узкий scope, ограничения по IP и Referer, регулярная ротация и немедленный отзыв при утечке. Для авторизации конечного пользователя или критичных операций предпочтительны OAuth 2.0, mTLS или подписанные запросы.
Как защититься от API-ключ?
Защита от API-ключ обычно сочетает технические меры и операционные практики, как описано в определении выше.
● Связанные термины
- appsec№ 459
Хардкод секретов в коде
Встраивание учётных данных, API-ключей, токенов или криптографического материала прямо в исходный код, конфигурационные файлы или контейнерные образы, откуда их легко обнаружить и использовать злоумышленникам.
- appsec№ 052
Безопасность API
Дисциплина проектирования, разработки и эксплуатации API так, чтобы аутентификация, авторизация, выдача данных и устойчивость к злоупотреблениям выдерживали атаки.
- identity-access№ 088
Bearer-токен
Непрозрачный или структурированный мандат (RFC 6750), дающий доступ к ресурсу самим фактом владения, без подтверждения, что обладатель — законный владелец.
- identity-access№ 749
OAuth 2.0
Открытый фреймворк авторизации, позволяющий владельцу ресурса предоставлять стороннему приложению ограниченный и регулируемый доступ к API без передачи учётных данных.
- identity-access№ 1011
Сервисная учётная запись
Нечеловеческая идентичность, используемая приложением, скриптом или сервисом для аутентификации в других системах, как правило, без интерактивного входа.
- identity-access№ 233
Хранилище учётных данных
Централизованный и аудируемый сервис, который безопасно хранит, ротирует и посредничает доступ к секретам — паролям, ключам API, сертификатам и SSH-ключам.