Поделиться через


Использование портала API для VMware Tanzu

Примечание.

Планы Basic, Standardи Enterprise вступили в период вывода из обращения 17 марта 2025 года. Дополнительные сведения см. в объявлении о выходе на пенсию в Azure Spring Apps.

План стандартного потребления и выделенный план вошли в период вывода из эксплуатации 30 сентября 2024 года, с полным завершением работы к концу марта 2025 года. Для получения дополнительной информации см. Миграция стандартного потребления Azure Spring Apps и выделенного плана в Azure Container Apps.

Эта статья относится к: ❎ Basic/Standard ✅ Enterprise

В этой статье показано, как использовать портал API для VMware Tanzu с планом Azure Spring Apps Enterprise.

Портал API является одним из коммерческих компонентов VMware Tanzu. Портал API поддерживает просмотр определений API из Шлюза Spring Cloud для VMware Tanzu и тестирования определенных маршрутов API из браузера. Она также поддерживает настройку аутентификации единого входа (SSO) с помощью конфигурации.

Предварительные условия

Настройка единого входа (SSO)

Портал API поддерживает проверку подлинности и авторизацию через единый вход (SSO) при использовании поставщика удостоверений OpenID, который поддерживает протокол OpenID Connect Discovery.

Примечание.

Поддерживаются только те серверы авторизации, которые поддерживают протокол обнаружения OpenID Connect. Не забудьте настроить внешний сервер авторизации, чтобы разрешить перенаправления обратно на портал API. Ознакомьтесь с документацией по серверу авторизации и добавьте https://<api-portal-external-url>/login/oauth2/code/sso в список разрешенных URI перенаправления.

Собственность Обязательное? Описание
issuerUri Да Универсальный код ресурса (URI), который приложение утверждает в качестве идентификатора издателя. Например, если предоставленный издателем URI является "https://example.com", то запрос конфигурации поставщика OpenID выполняется в "https://example.com/.well-known/openid-configuration". Ожидается, что результатом будет ответ с конфигурацией поставщика OpenID.
clientId Да Идентификатор клиента OpenID Connect, предоставленный вашим поставщиком удостоверений.
clientSecret Да Секрет клиента OpenID Connect, предоставленный вашим провайдером идентификации.
объем Да Список областей для включения в маркеры идентификации JWT. Этот список должен основываться на областях, разрешенных вашим поставщиком удостоверений личности.

Чтобы настроить единый вход с идентификатором Microsoft Entra, см. инструкции по настройке единого входа с помощью Идентификатора Microsoft Entra для Spring Cloud Gateway и портала API для Tanzu.

Примечание.

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

Настройка счетчика экземпляров

Чтобы настроить количество экземпляров на портале API, выполните следующие действия.

  1. Перейдите к экземпляру службы и выберите портал API.
  2. Выберите "Горизонтальное масштабирование".
  3. Настройте число экземпляров и нажмите кнопку "Сохранить".

Назначение общедоступной конечной точки для портала API

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

  1. Войдите на портал API.
  2. Щелкните Обзор чтобы просмотреть состояние выполнения и ресурсы, выделенные порталу API.
  3. Щелкните Да рядом с областью Назначить конечную точку, чтобы назначить общедоступную конечную точку. URL-адрес создается в течение нескольких минут.
  4. Сохраните этот URL-адрес для последующего использования.

Настройка функции пробного интерфейса API

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

Чтобы включить или отключить пробную версию API, выполните следующие действия.

  1. Перейдите к экземпляру службы и выберите портал API.
  2. Выберите Конфигурация.
  3. Выберите или снимите флажок Включить пробную версию API, а затем нажмите кнопку "Сохранить".

Настройка маршрутизации API с помощью спецификации OpenAPI в Spring Cloud Gateway для Tanzu

В этом разделе описывается, как просматривать и пробовать API с определениями схем на портале API. Выполните следующие действия, чтобы настроить маршрутизацию API с URL-адресом спецификации OpenAPI в Spring Cloud Gateway для Tanzu.

  1. Создайте приложение в Azure Spring Apps, в которое шлюз направляет трафик.

  2. Создайте определение OpenAPI и получите URI для доступа к нему. Принимаются следующие два варианта URI:

    • Первый вариант — использовать общедоступную конечную точку, например URI https://petstore3.swagger.io/api/v3/openapi.json, которая включает спецификацию OpenAPI.
    • Второй вариант — поместить определение OpenAPI в относительный путь приложения в Azure Spring Apps и создать URI в формате http://<app-name>/<relative-path-to-OpenAPI-spec>. Вы можете выбрать средства SpringDocs для автоматического создания спецификации OpenAPI, поэтому URI может быть таким же http://<app-name>/v3/api-docs.
  3. Используйте следующую команду, чтобы назначить общедоступную конечную точку шлюзу для доступа к нему.

    az spring gateway update --assign-endpoint
    
  4. Настройте свойства Шлюза Spring Cloud для Tanzu, используя следующую команду:

    az spring gateway update \
        --api-description "<api-description>" \
        --api-title "<api-title>" \
        --api-version "v0.1" \
        --server-url "<endpoint-in-the-previous-step>" \
        --allowed-origins "*"
    
  5. Настройте правила маршрутизации для приложений.

    Чтобы создать правила для доступа к приложению в Spring Cloud Gateway для конфигурации маршрута Tanzu, сохраните следующее содержимое в файле sample.json .

    {
       "open_api": {
          "uri": "https://petstore3.swagger.io/api/v3/openapi.json"
       },
       "routes": [
          {
             "title": "Petstore",
             "description": "Route to application",
             "predicates": [
                "Path=/pet",
                "Method=PUT"
             ],
             "filters": [
                "StripPrefix=0"
             ]
          }
       ]
    }
    

    Значением open_api.uri является общедоступная конечная точка или универсальный код ресурса (URI), созданный на втором шаге выше. Вы можете добавлять предикаты и фильтры для путей, определенных в спецификации OpenAPI.

    Используйте следующую команду, чтобы применить правило к приложению, созданному на первом шаге:

    az spring gateway route-config create \
        --name sample \
        --app-name <app-name> \
        --routes-file sample.json
    
  6. Проверьте ответ созданных маршрутов. Вы также можете просмотреть маршруты на портале.

Просмотр предоставляемых API на портале API

Примечание.

Синхронизация между шлюзом Spring Cloud для Tanzu и порталом API занимает несколько минут.

Щелкните endpoint URL, чтобы перейти к порталу API. Вы увидите все маршруты, настроенные в Spring Cloud Gateway для Tanzu.

Снимок экрана: портал API, на котором показаны настроенные маршруты.

Пробное использование API на портале API

Используйте следующие шаги, чтобы попробовать API:

  1. Выберите приложение API, которое вы решили применить.

  2. Выберите EXECUTE и появится ответ.

    Снимок экрана: портал API с выбранным параметром

Включение и отключение портала API после создания службы

Вы можете включить и отключить портал API после создания службы с помощью портал Azure или Azure CLI. Перед отключением портала API необходимо отменить назначение конечной точки.

Чтобы включить или отключить портал API с помощью портал Azure, выполните следующие действия.

  1. Перейдите к ресурсу службы и выберите портал API.
  2. Выберите Управление.
  3. Выберите или отмените выбор включения API-портала, а затем выберите Сохранить.
  4. Теперь можно просмотреть состояние портала API на странице портала API.

Следующие шаги