Что такое служба управления Azure API?
ОБЛАСТЬ ПРИМЕНЕНИЯ: все уровни Управление API
В этой статье представлен обзор распространенных сценариев и ключевых компонентов службы управления Azure API Management. Служба управления API Azure является гибридной мультиоблачной платформой управления для интерфейсов API во всех средах. В качестве платформы как услуги API Management поддерживает полный жизненный цикл API.
Совет
Если вы уже знакомы со службой API Management и готовы начать, ознакомьтесь со следующими ресурсами:
Сценарии
API позволяют использовать цифровые возможности, упрощают интеграцию приложений, ложатся в основу новых цифровых продуктов, а также делают данные и службы доступными для повторного использования и универсального доступа. С распространением и повышением зависимости от API организации должны управлять ими в качестве ресурсов первого класса на протяжении всего жизненного цикла.
Служба управления API Azure помогает клиентам решать следующие задачи:
- Отделение разнообразия и сложности архитектуры серверной части от пользователей API
- Безопасное предоставление служб, размещенных в Azure и за ее пределами, в качестве API
- Защита, ускорение работы и наблюдение за API
- Включение возможности обнаружения и использования API внутренними и внешними пользователями
Распространенные сценарии включают в себя:
- Разблокировка устаревших ресурсов — API используются для отделения и модернизации устаревших серверных частей и предоставления доступа к ним из новых облачных служб и современных приложений. API позволяют внедрять инновации без риска, лишних затрат и задержек, связанных с миграцией.
- Интеграция приложений, ориентированных на API — API представляют собой простые в использовании, основанные на стандартах и самостоятельно описываемые механизмы для предоставления и доступа к данным, приложениям и процессам. Они упрощают и сокращают затраты на интеграцию приложений.
- Многоканальные взаимодействия с пользователями — API часто используются для предоставления пользователям таких возможностей, как веб-приложения, мобильные приложения, переносимые приложения или Интернет вещей. Повторное использование API для ускорения разработки и рентабельности инвестиций.
- Интеграция B2B — API, предоставляемые партнерам и клиентам, снижают барьер для интеграции бизнес-процессов и обмена данными между бизнес-сущностями. API позволяют устранить издержки, присущие интеграции "точка — точка". Особенно с поддержкой самостоятельного обнаружения и подключения API являются основными инструментами для масштабирования интеграции B2B.
Компоненты службы управления API
Служба управления API Azure состоит из шлюза API, плоскости управления и портала разработчика. Эти компоненты размещаются в Azure и полностью управляются по умолчанию. Служба управления API доступна на различных уровнях, отличающихся емкостью и функциями.
Шлюз API
Все запросы от клиентских приложений сначала поступают в шлюз API, который затем перенаправляет их в соответствующие серверные службы. Шлюз API выступает в качестве фасада серверных служб, позволяя поставщикам API отделять реализации API и развивать архитектуру серверной части, не влияя на объекты-получатели API. Шлюз обеспечивает согласованную конфигурацию маршрутизации, безопасности, регулирования, кэширования и наблюдаемости.
В частности, шлюз:
- выступает в качестве фасада серверных служб, принимая вызовы API и перенаправляя их в соответствующие серверные части;
- проверяет ключи API и другие учетные данные, такие как токены JWT и сертификаты, представленные запросами;
- принудительно применяет квоты использования и ограничения скорости;
- при необходимости преобразует запросы и ответы, указанные в инструкциях политики;
- если настроить, кэширует ответы, чтобы повысить задержку ответа и свести к минимуму нагрузку на серверные службы;
- создает журналы, метрики и трассировки для мониторинга, создания отчетов и устранения неполадок.
Независимый шлюз
С помощью локального шлюза клиенты могут развернуть шлюз API в тех же средах, где они размещают свои API, для оптимизации трафика API и обеспечения соответствия локальным нормативным требованиям и рекомендациям. Локальный шлюз позволяет клиентам с гибридной ИТ-инфраструктурой управлять API, размещенными локально и в облаках, из единой службы управления API в Azure.
Локальный шлюз упаковывается в виде контейнера Docker на базе Linux и обычно развертывается в Kubernetes, включая Службу Azure Kubernetes и Kubernetes с поддержкой Azure Arc.
Подробнее:
Плоскость управления
Поставщики API взаимодействуют со службой через плоскость управления, которая обеспечивает полный доступ к возможностям службы управления API.
Клиенты взаимодействуют с плоскости управления с помощью средств Azure, включая портал Azure, Azure PowerShell, Azure CLI, расширение Visual Studio Code, REST API или клиентские пакеты SDK на нескольких популярных языках программирования.
Используйте плоскость управления для выполнения следующих действий:
- Подготовка и настройка параметров службы управления API
- Определение или импорт схем API из широкого спектра источников, включая определения OpenAPI, WSDL и OData, службы вычислений Azure и WebSocket, GraphQL и серверные серверные части gRPC
- Упаковка API в продукты
- Настройка политик, например, квот или преобразований, в интерфейсах API
- Получение дополнительных сведений на основе аналитики
- Управление пользователями
Портал разработчика
Портал разработчика с открытым кодом — это автоматически создаваемый и полностью настраиваемый веб-сайт с документацией по API.
Поставщики API могут настраивать вид и дизайн портала разработчика, добавляя произвольное содержимое, изменяя стили и реализуя корпоративный дизайн. Можно еще более расширить портал разработчика путем автономного размещения.
Разработчики приложений используют портал разработчика с открытым кодом для обнаружения API, подключения к ним и изучения их использования в приложениях. (API также можно экспортировать в Power Platform для обнаружения и использования разработчиками-любителями.)
С помощью портала разработчика разработчики могут:
- читать документацию по API;
- вызывать API через интерактивную консоль;
- создавать учетную запись и оформлять подписку для получения ключей API;
- получать доступ к аналитике по использованию;
- скачивать определения API;
- Управление ключами API
уровни Управление API
Управление API предлагается в различных ценовых категориях для удовлетворения потребностей разных клиентов. Каждый уровень предлагает различные сочетания функций, производительности, ограничений емкости, масштабируемости, обслуживания и ценообразования для разных сценариев. Уровни группируются следующим образом:
- Классический — исходное предложение Управление API, включая уровни "Разработчик", "Базовый", "Стандартный" и "Премиум". Уровень "Премиум" предназначен для предприятий, требующих доступа к частным серверным службам, расширенным функциям безопасности, развертываниям в нескольких регионах, зонам доступности и высокой масштабируемости. Уровень разработчика — это экономичный вариант для использования, а уровни "Базовый", "Стандартный" и "Премиум" — это готовые к производству уровни.
- Версия 2 . Новый набор уровней, которые предлагают быструю подготовку и масштабирование, включая Базовую версию 2 для разработки и тестирования, а также стандартную версию 2 и Премиум версии 2 для рабочих нагрузок. Стандартная версия 2 и Premium версии 2 поддерживает интеграцию виртуальной сети для упрощенного подключения к изолированным от сети серверным службам. Премиум версии 2 также поддерживает внедрение виртуальной сети для полной изоляции сетевого трафика к шлюзу и из нее.
- Потребление . Уровень потребления — это бессерверный шлюз для управления API, масштабируемых на основе спроса и выставления счетов за выполнение. Он предназначен для приложений с бессерверными вычислениями, архитектурами на основе микрослужб и шаблонами трафика переменных.
Дополнительные сведения:
- Сравнение возможностей категорий управления API Azure
- Уровни служб версии 2
- Расценки на службу управления API
Интеграция со службами Azure
Служба API Management интегрируется со многими дополнительными службами Azure, в том числе со следующими:
- Центр API Azure для создания полной инвентаризации API в организации независимо от их типа, этапа жизненного цикла или расположения развертывания для обнаружения, повторного использования и управления API
- Copilot в Azure для создания политик Управление API или объяснения уже настроенных политик
- Azure Key Vault для безопасного хранения и управления сертификатами клиента и секретами
- Azure Monitor для ведения журнала, создания отчетов и оповещений об операциях управления, событиях систем и запросах API
- Application Insights для получения динамических метрик, сквозной трассировки и устранения неполадок
- Виртуальные сети, частные конечные точки, Шлюз приложений и Azure Front Door для защиты на уровне сети
- Azure Defender для API и защиты от атак DDoS Azure для защиты среды выполнения от вредоносных атак
- Идентификатор Microsoft Entra для проверки подлинности разработчика и авторизации запроса
- Центры событий для потоковой передачи событий
- Несколько предложений вычислений Azure, часто используемых для создания и размещения API в Azure, включая Функции, Logic Apps, веб-приложения, Service Fabric и другие, включая службу Azure OpenAI.
Дополнительные сведения:
Основные понятия
Программные интерфейсы
API является основой экземпляра службы API Management. Каждый API включает набор операций, доступных разработчикам приложений. Каждый API содержит ссылку на серверную службу, которая реализует API, и его операции сопоставляются с операциями этой серверной службы.
Операции в API Management широко настраиваемые, с управлением через сопоставление URL-адресов, параметров запроса и пути, содержимого запроса и ответа и кэширование ответа операций.
Дополнительные сведения:
Продукты
Для разработчиков API видны через продукты. Продукты в API Management имеют один или несколько API и могут быть открытыми или защищенными. Защищенные продукты требуют ключа подписки, а открытые продукты можно использовать свободно.
Когда продукт будет готов к использованию разработчиками, его можно опубликовать. После публикации его можно просмотреть или подписаться на него разработчиками с помощью портала разработчиков. Утверждение подписки настраивается на уровне продукта и может требовать утверждения администратором или быть автоматическим.
Дополнительные сведения:
Группы
Группы используются для управления видимостью продуктов для разработчиков. Управление API имеет следующие встроенные группы для разработчиков:
Разработчики — пользователи портала разработчиков с проверкой подлинности, создающие приложения с помощью API. Разработчикам предоставляется доступ к порталу разработчика, и они могут создавать приложения, вызывающие операции этого API.
Гости — пользователи портала разработчиков, не прошедшие проверку подлинности, например, возможные клиенты, посетившие портал разработчиков. Им может быть предоставлен доступ только для чтения, позволяющий просматривать API, но не вызывать их.
Управление API владельцы служб также могут создавать пользовательские группы или использовать внешние группы в связанном клиенте Microsoft Entra, чтобы предоставить разработчикам видимость и доступ к продуктам API. Например, можно создать пользовательскую группу для разработчиков в партнерской организации для доступа к определенному подмножеству API в продукте. Пользователь может принадлежать к нескольким группам.
Дополнительные сведения:
- Как создавать и использовать группы для управления учетными записями разработчика в службе управления Azure API
- Управление учетными записями пользователей
Разработчикам
Разработчики представляют учетные записи пользователей экземпляра службы API Management. Разработчики создаются или приглашаются администраторами. Они также могут зарегистрироваться через портал разработчика. Каждый разработчик является членом одной или нескольких групп и может быть подписан на продукты, которые предоставляют видимость этим группам.
Когда разработчики подписываются на продукт, им предоставляются первичный и вторичный ключи к нему для вызова API этого продукта.
Дополнительные сведения:
Рабочие области
Рабочие области позволяют децентрализованным командам разработчиков API управлять собственными API и продуктизировать их собственные API, а центральная группа платформы API поддерживает инфраструктуру Управление API. Каждая рабочая область содержит API, продукты, подписки и связанные сущности, доступные только участникам совместной работы рабочей области. Доступ контролируется с помощью управления доступом на основе ролей Azure (RBAC). Каждая рабочая область связана с шлюзом рабочей области, который направляет трафик API в внутренние службы.
Дополнительные сведения:
Политики
С помощью политик издатель API может изменить поведение API с помощью конфигурации. Политика — это коллекция правил, которые выполняются последовательно над запросом или ответом API. К часто используемым операторам относятся преобразование формата из XML в JSON, а также ограничение скорости вызовов, позволяющее ограничивать количество входящих вызовов от разработчика. Полный список приведен в разделе Политики управления API.
Выражения политики можно использовать в качестве значений атрибутов или текстовых значений в любой политике управления API, если в ней не указано иное. Некоторые политики (в том числе Поток управления и Задание переменной) основаны на выражениях политики.
Политики могут применяться в разных областях в зависимости от потребностей: глобальные (все API), рабочая область, продукт, конкретный API или операция API.
Дополнительные сведения:
Следующие шаги
Изучите следующее краткое руководство и приступите к использованию службы управления API Azure: