Skip to main content

Что это такое

YCloud использует API-ключи для идентификации вашего аккаунта и авторизации запросов к API. Отправляйте ключ только из доверенного серверного кода.

Перед началом работы

Создайте или получите API-ключ в своем аккаунте YCloud. Определите, где каждая среда будет хранить свой секрет, прежде чем добавлять ключ в код приложения.

Запрос

Передавайте ключ в заголовке X-API-Key при каждом запросе.
Не добавляйте префикс Bearer. Значением заголовка является сам API-ключ.

Ответ

Действительные учетные данные позволяют эндпоинту вернуть обычный успешный ответ. Недействительные или неавторизованные учетные данные возвращают ответ с ошибкой 4xx.

Безопасное хранение ключей

  • Храните API-ключи в менеджере секретов или в зашифрованной переменной окружения.
  • Используйте API-ключи только в доверенном серверном коде.
  • Никогда не размещайте ключ в URL, сборках для браузера, мобильных приложениях, логах или на скриншотах.
  • Используйте отдельные ключи для разных сред, если это позволяет настройка вашего аккаунта.
  • Немедленно выполните ротацию ключа, если считаете, что он был скомпрометирован.
Для локальной разработки экспортируйте ключ в вашей командной оболочке:
Считывайте его из переменных окружения в своем приложении. Не прописывайте его жестко в коде.

Ротация ключа

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

Устранение неполадок с аутентификацией

Сбой аутентификации возвращает ответ 4xx. Убедитесь, что:
  • Запрос использует https://api.ycloud.com/v2.
  • Имя заголовка в точности соответствует X-API-Key.
  • Ключ не содержит лишних пробелов или кавычек.
  • Ключ активен и принадлежит нужному аккаунту YCloud.
  • Аккаунт имеет доступ к продукту, используемому эндпоинтом.
Логируйте ответ requestId для устранения неполадок, но никогда не записывайте в логи сам API-ключ. Формат ответа описан в разделе Ошибки.

Проверка аутентификации

Проверьте ключ с помощью запроса только для чтения к Balance API.