ключи API

Вы просматриваете документацию Apigee Edge .
Перейдите в документацию Apigee
X.info

Ключ API (в Apigee Edge известный как ключ потребителя ) — это строковое значение, передаваемое клиентским приложением вашим API-прокси. Этот ключ однозначно идентифицирует клиентское приложение.

Проверка ключа API — это простейшая форма безопасности на уровне приложения, которую можно настроить для API. Клиентское приложение просто отправляет ключ API вместе со своим запросом, после чего Apigee Edge проверяет, находится ли ключ API в разрешенном состоянии для запрашиваемого ресурса. Внутри системы ваши прокси-серверы используют политики для проверки подлинности ключа API.

Для обеспечения такой простоты потребуется выполнить небольшую настройку. Для поддержки ключей API вам потребуется:

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

    При создании приложения для разработчика вы указываете API-продукты, к которым приложение разработчика будет иметь доступ, и для которых ему потребуется предоставить API-ключ.

  • К вашим прокси-серверам (тем, которые вы включили в свой API-продукт) добавьте политики для проверки действительности входящего API-ключа.

Учебное пособие «Защита API с помощью ключей API» — это быстрый способ узнать, как контролировать доступ к API-прокси с помощью ключа API.

Как работают ключи API

В Apigee Edge ключ API называется ключом потребителя. При регистрации приложений разработчиков Apigee Edge генерирует ключ потребителя и секретный ключ. Apigee Edge хранит ключ потребителя для последующей проверки. Каждый ключ потребителя уникален в организации. Разработчик приложения встраивает ключ потребителя в клиентское приложение. Клиентское приложение должно предоставлять ключ потребителя для каждого запроса. API Services проверяет ключ потребителя, прежде чем разрешить запрос приложения.

Этапы высокого уровня

Следующие шаги описывают, как ключи API используются Apigee Edge. Эти шаги также включают возможное использование защиты OAuth, поскольку она часто используется в сочетании с ключами API.

  1. Создайте API-продукт , включающий API-прокси, которые должны быть защищены с помощью API-ключа.
  2. Вы регистрируете приложение разработчика в своей организации. При этом Apigee Edge генерирует ключ потребителя и секретный ключ потребителя.
  3. Свяжите приложение разработчика как минимум с одним API-продуктом . Это тот продукт, который связывает пути к ресурсам и API-прокси с подтверждением ключей.
  4. Во время выполнения, когда клиентское приложение отправляет запрос к вашему API, оно отправляет ключ потребителя . На практике ключ потребителя может передаваться либо явно, либо неявно через токен OAuth:
    • Когда API использует проверку ключа API — например, путем реализации политики VerifyAPIKey — клиентское приложение должно явно передавать ключ потребителя.
    • Когда API использует проверку токенов OAuth — например, путем реализации политики OAuthV2 — клиентское приложение должно передать токен, полученный из ключа потребителя.
  5. API-прокси проверяет учетные данные запроса либо с помощью политики VerifyAPIKey, либо с помощью политики OAuthV2 с операцией VerifyAccessToken. Если вы не включите политику проверки учетных данных в свой API-прокси, любой вызывающий абонент сможет успешно вызвать ваши API. Для получения дополнительной информации см. политику проверки ключа API .

Проверка учетных данных запроса

Это общий обзор. Для получения более подробной информации и примеров кода обязательно ознакомьтесь с разделом «Настройка проверки ключа API» .

  1. Если вы используете проверку токенов OAuth, значит, вы реализовали политику OAuth для проверки, и клиентское приложение передало токен OAuth:
    • Apigee Edge проверяет, не истек ли срок действия токена, а затем находит ключ потребителя, который использовался для генерации токена.
  2. Если вы используете ключ API, значит, вы реализовали политику VerifyAPIKey, и клиентское приложение передало свой ключ потребителя:
    1. Apigee Edge проверяет список продуктов API, с которыми связан ключ потребителя.
    2. Edge проверяет каждый API-продукт, чтобы убедиться, что текущий API-прокси включен в API-продукт и что текущий путь к ресурсу (URL-адрес) включен в API-продукт.
    3. Edge также проверяет, не истек ли срок действия или не отозван ли ключ потребителя, проверяет, не отозван ли сам приложение, и проверяет, не является ли разработчик неактивным.
    4. Если выполняются все эти условия — срок действия токена не истек (если применимо), ключ потребителя действителен и одобрен, приложение одобрено, разработчик активен, прокси-сервер доступен в продукте, и ресурс доступен в продукте — проверка учетных данных проходит успешно.