API Key

Простыми словами

API Key — строковый секрет или идентификатор, который клиент предъявляет API. В зависимости от реализации ключ может только определять приложение либо одновременно предоставлять ему права, поэтому его нельзя автоматически считать полноценной аутентификацией пользователя.

Как применяется

Ключи выдают конкретному клиенту и среде, ограничивают по правам, сроку, сети или квоте, хранят в менеджере секретов и регулярно ротируют. Значение не помещают в исходный код, публичный репозиторий, URL и доступные пользователю журналы.

Пример применения

Интеграция получает отдельный ключ только для чтения одного API. Секрет подставляется при запуске из хранилища, журнал показывает идентификатор ключа без значения, а автоматическая ротация обновляет обе стороны без простоя.

Не путать с

  • JWTJWT — формат токена, а не самостоятельная модель выдачи доступа.

Как это работает

  1. Зарегистрировать клиентаВладелец API создаёт отдельную идентичность интеграции и определяет минимальные права.
  2. Выдать и сохранитьСлучайное значение показывают ограниченно и помещают в защищённое хранилище секретов.
  3. Проверить запросШлюз находит ключ, проверяет статус, ограничения и разрешённую операцию.
  4. Наблюдать и ротироватьИспользование журналируют, а ключ отзывают или заменяют при сроке, утечке и изменении владельца.

Продолжить изучение

Связанные термины

Частые вопросы

Можно ли передавать API Key в URL?

Не следует: URL попадает в историю, журналы, аналитику и заголовок Referer; безопаснее авторизационный заголовок по TLS.

Нужно ли хешировать API Key в базе?

Если проверка допускает, хранение стойкого хеша снижает ущерб от утечки базы; архитектуру выбирают с учётом поиска ключа и ротации.

Как найти утёкший API Key?

Используют secret scanning, контроль репозиториев и журналов, но обнаруженный секрет сразу отзывают, а не считают безопасным после удаления из файла.

API Key — идентификатор или секрет, используемый клиентом API для учёта, ограничений или аутентификации в заданном контексте.