Перейти к основному содержимому

Управление ключами доступа

Вы можете управлять демо-ключами и основными ключами доступа:

Переименование ключа

  1. Перейдите на вкладку Ключи API и выберите нужный ключ.
  2. Нажмите Действия и выберите Изменить название.
  3. Введите новое название ключа и нажмите Сохранить.

Просмотр статусов ключа и сервисов

Вы можете посмотреть на вкладке Ключи API статусы ключей и сервисов в них, а также планируемую или наступившую дату блокировки ключа.

Статусы отображаются только для включенных сервисов, которые добавлены в подписку. Например, если в подписке 15 сервисов, а в ключе включено 10, то статус будет отображаться только для 10 сервисов.

Статусы ключа и сервисов

Возможные статусы ключа:

  • Активен: ключ работает. API сервисов принимают запросы.
  • Неактивен: ключ заблокирован вручную или наступила дата блокировки ключа.
  • Ждёт подписку: ключ не работает из-за проблем с подпиской, например, подписка ждёт оплаты.

Возможные статусы сервисов:

  • Зелёный индикатор: сервис включен и активен. API сервиса принимает запросы.
  • Красный индикатор: сервис включен, но остановлен или заблокирован из-за достижения лимитов в ключе или в подписке (выполнилось действие Остановка или Блокировка при достижении лимита). Если было настроено действие Уведомление, сервис отображается как включенный, так как API принимает запросы.
  • Серый индикатор: сервис принадлежит ключу со статусом Неактивен или Ждёт подписку.

Включение и выключение сервисов

Вы можете включать или выключать сервисы в ключах со статусом Активен. При выключении сервиса его API перестанут принимать запросы.

  1. Перейдите на вкладку Ключи API и выберите нужный ключ.
  2. Чтобы включить или выключить сервис, используйте переключатель слева от названия сервиса.

Настройка лимитов для сервисов

Вы можете настраивать лимиты только для включенных сервисов, которые принадлежат ключам со статусом Активен.

Лимиты отображаются для всех сервисов, которые добавлены в подписку. Если сервис принадлежит ключу со статусом Неактивен, то в счётчике лимитов будет отображаться 0.

Важно

Если вы укажете значение лимита для сервиса больше лимита подписки, то сервис заблокируется при достижении лимита подписки.

  1. Перейдите на вкладку Ключи API и выберите нужный ключ.

  2. Нажмите значок Редактировать в строке нужного сервиса.

  3. В окне Настройка лимитов в ключе настройте лимиты сервиса:

    • Период лимитов: срок действия лимита (минута, день или месяц).

    • Лимит достигнут: действие при достижении лимита:

      • Уведомление: при достижении лимита придёт уведомление на электронную почту, указанную в профиле. Сервис продолжит работать.
      • Остановка: при достижении лимита сервис временно заблокируется на период действия лимита. Сервис будет разблокирован автоматически после его окончания. При необходимости вы можете разблокировать сервис вручную.
      • Блокировка: при достижении лимита сервис заблокируется. При необходимости вы можете разблокировать сервис.
    • Лимит: число запросов (или ответов) для сервиса, например, 1000 запросов в день.

    Настройка лимитов для сервисов
  4. Чтобы добавить ещё лимит, нажмите Добавить лимит и повторите шаг 3. Для одного сервиса можно настроить не более 100 лимитов.

  5. Нажмите Сохранить.

Разблокировка сервиса

Сервис может быть заблокирован после выполнения действия Остановка или Блокировка при достижении лимита. Чтобы разблокировать сервис, в окне Настройка лимитов в ключе выполните одно из действий:

  • В поле Лимит увеличьте число запросов (или ответов) для сервиса.
  • Удалите лимит, нажав значок Крестик.

Настройка дополнительных ограничений ключа

Важно

Ограничения применяются для всех сервисов, которые принадлежат ключу. Если лимиты подписки будут достигнуты раньше, чем указанные ограничения, ключ заблокируется.

  1. Перейдите на вкладку Ключи API и выберите нужный ключ.

  2. В разделе Ограничения настройте ограничения ключа:

    Ограничения ключа
  3. Нажмите Сохранить изменения.

По HTTP-заголовкам

Ограничивает доступ по HTTP-заголовкам в запросе:

  • Referer: по URL страницы.
  • Origin: по имени сервера.
  • User-Agent: по типу приложения, операционной системе и другим параметрам.

Пример использования: разрешить доступ только для запросов с домена example.com и от браузера с настройкой User-Agent Mozilla/5.0.

Шаги:

  1. В поле Origin укажите example.com.
  2. В поле User-Agent укажите Mozilla/5.0.
  3. Нажмите Сохранить изменения.

Результат: ключ будет работать только для запросов с заголовком Origin: example.com и User-Agent: Mozilla/5.0. Запросы с других доменов (например, test.com) или от других клиентов (например, curl/7.0) будут отклонены.

По IP и подсетям

Ограничивает доступ по списку IP-адресов или подсетей в формате CIDR (например, 192.168.1.0/24). Ограничение использует IP-адрес клиента, который передаётся в следующих заголовках:

  • Remote-Addr: IP-адрес источника TCP-соединения или IP-адрес прокси-сервера при использовании прокси или NAT.
  • X-Forwarded-For: цепочка IP-адресов, где первый адрес — IP клиента. Рекомендуется использовать этот заголовок, так как он поддерживает сложные сетевые конфигурации с прокси.
  • X-Real-IP: IP-адрес клиента, переданный прокси.

Пример использования: разрешить доступ для запросов только с IP-адресов корпоративной подсети 192.168.1.0/24.

Шаги:

  1. В поле CIDR укажите подсеть 192.168.1.0/24.

  2. Нажмите Сохранить изменения.

  3. Если вы используете прокси или NAT, заголовки могут отсутствовать или содержать неверный IP-адрес клиента, что может нарушить работу ограничения. Убедитесь, что ваша инфраструктура (прокси, балансировщики нагрузки, NAT, Ingress) передаёт заголовки с оригинальным IP-адресом клиента:

    • Проверьте конфигурацию Ingress-контроллера Nginx в вашем кластере Kubernetes (например, файл values.yaml в Helm-чарте).
    • Проверьте конфигурацию прокси или балансировщика нагрузки (например, директиву proxy_set_header в Nginx).
    • Включите логирование HTTP-заголовков (Remote-Addr, X-Forwarded-For, X-Real-IP) в сервисе API-ключей.
    • Используйте инструменты анализа трафика для подтверждения, что хотя бы один заголовок содержит правильный IP-адрес клиента (например, Wireshark, tcpdump).

Результат: ключ будет работать только для запросов с IP-адресов из диапазона 192.168.1.0 — 192.168.1.255 при условии, что с IP-адреса клиента корректно передаётся один из заголовков (Remote-Addr, X-Forwarded-For, X-Real-IP). Запросы с других IP-адресов (например, 10.0.0.1) или без корректных заголовков будут отклонены.

При необходимости вы можете обратиться в службу поддержки для уточнения конфигурации или рекомендаций по настройке.

По приложению

Ограничивает доступ по значению идентификатора мобильного приложения (appId).

Пример использования: разрешить доступ для запросов только от приложения с идентификатором ru.dgis.sdk.app.

Чтобы отредактировать значение в поле App ID, обратитесь в службу поддержки.

Результат: ключ будет работать только для запросов от приложения с идентификатором ru.dgis.sdk.app. Запросы от других приложений (например, ru.dgis.test.app) будут отклонены.

Блокировка ключа

Важно

Заблокированный ключ нельзя активировать снова. Создайте новый ключ или обратитесь к менеджеру.

  1. Перейдите на вкладку Ключи API.
  2. В строке нужного ключа нажмите значок Меню ключа и выберите Блокировать.