Сведения об Управлении API
Служба управления API Azure является гибридной мультиоблачной платформой управления для интерфейсов API во всех средах. В этой статье представлен обзор распространенных сценариев и ключевых компонентов службы управления API.
Сценарии
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 и направляет их на настроенные серверы;
- проверяет ключи 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 или клиентские пакеты SDK на нескольких популярных языках программирования.
Используйте плоскость управления для выполнения следующих действий:
- Подготовка и настройка параметров службы управления API
- Определение или импорт схем API из широкого спектра источников, включая спецификации OpenAPI, службы вычислений Azure или серверные части WebSocket или GraphQL
- Упаковка API в продукты
- Настройка политик, например, квот или преобразований, в интерфейсах API
- Получение дополнительных сведений на основе аналитики
- Управление пользователями
Портал разработчика
Портал разработчика с открытым кодом — это автоматически создаваемый и полностью настраиваемый веб-сайт с документацией по API.
Поставщики API могут настраивать вид и дизайн портала разработчика, добавляя произвольное содержимое, изменяя стили и реализуя корпоративный дизайн. Можно еще более расширить портал разработчика путем автономного размещения.
Разработчики приложений используют портал разработчика с открытым кодом для обнаружения API, подключения к ним и изучения их использования в приложениях. (API также можно экспортировать в Power Platform для обнаружения и использования разработчиками-любителями.)
С помощью портала разработчика разработчики могут:
- читать документацию по API;
- вызывать API через интерактивную консоль;
- создавать учетную запись и оформлять подписку для получения ключей API;
- получать доступ к аналитике по использованию;
- скачивать определения API;
- управлять ключами API.
Интеграция со службами Azure
Служба управления API интегрируется со многими дополнительными службами Azure, включая:
- Azure Key Vault для безопасного хранения и управления сертификатами клиента и секретами
- Azure Monitor для ведения журнала, создания отчетов и оповещений об операциях управления, событиях систем и запросах API
- Application Insights для получения динамических метрик, сквозной трассировки и устранения неполадок
- Виртуальные сети и Шлюз приложений для защиты на уровне сети
- Azure Active Directory для проверки подлинности разработчика и авторизации запросов
- Центр событий для потоковой передачи событий
- Несколько предложений вычислений Azure, часто используемых для создания и размещения API в Azure, включая Функции, Logic Apps, веб-приложения, Service Fabric и другие.
Основные понятия
Программные интерфейсы
API является основой экземпляра службы API Management. Каждый API включает набор операций, доступных разработчикам приложений. Каждый API содержит ссылку на серверную службу, которая реализует API, и его операции сопоставляются с операциями этой серверной службы.
Операции в API Management широко настраиваемые, с управлением через сопоставление URL-адресов, параметров запроса и пути, содержимого запроса и ответа и кэширование ответа операций.
Дополнительные сведения:
Продукты
Для разработчиков API видны через продукты. Продукты в API Management имеют один или несколько API и могут быть открытыми или защищенными. Защищенные продукты требуют ключа подписки, а открытые продукты можно использовать свободно.
Когда продукт будет готов к использованию разработчиками, его можно опубликовать. После публикации разработчики могут просмотреть продукт или подписаться на него. Утверждение подписки настраивается на уровне продукта и может требовать утверждения администратором или быть автоматическим.
Дополнительные сведения:
Группы
Группы используются для управления видимостью продуктов для разработчиков. API Management включает следующие встроенные группы:
Администраторы управляют экземплярами службы API Management, созданием API, операциями и продуктами, которые используются разработчиками.
Администраторы подписок Azure принадлежат к этой группе.
Разработчики — пользователи портала разработчиков с проверкой подлинности, создающие приложения с помощью API. Разработчикам предоставляется доступ к порталу разработчика, и они могут создавать приложения, вызывающие операции этого API.
Гости — пользователи портала разработчиков, не прошедшие проверку подлинности, например, возможные клиенты, посетившие портал разработчиков. Им может быть предоставлен доступ только для чтения, позволяющий просматривать API, но не вызывать их.
Администраторы также могут создавать пользовательские группы или использовать внешние группы в связанном клиенте Azure Active Directory, чтобы предоставить разработчикам видимость и доступ к продуктам API. Например, можно создать пользовательскую группу для разработчиков в партнерской организации для доступа к определенному подмножеству API в продукте. Пользователь может принадлежать к нескольким группам.
Дополнительные сведения:
Разработчикам
Разработчики представляют учетные записи пользователей экземпляра службы API Management. Разработчики создаются или приглашаются администраторами. Они также могут зарегистрироваться через портал разработчика. Каждый разработчик является членом одной или нескольких групп и может быть подписан на продукты, которые предоставляют видимость этим группам.
Когда разработчики подписываются на продукт, им предоставляется первичный и вторичный ключи к продукту для использования при вызове API продукта.
Дополнительные сведения:
Политики
С помощью политик издатель API может изменить поведение API с помощью конфигурации. Политика — это коллекция правил, которые выполняются последовательно над запросом или ответом API. К часто используемым операторам относятся преобразование формата из XML в JSON, а также ограничение скорости вызовов, позволяющее ограничивать количество входящих вызовов от разработчика. Полный список приведен в разделе Политики управления API.
Выражения политики можно использовать в качестве значений атрибутов или текстовых значений в любой политике управления API, если в ней не указано иное. Некоторые политики (в том числе Поток управления и Задание переменной) основаны на выражениях политики.
Политики можно применять в разных областях в зависимости от потребностей: глобально (для всех API), по продукту, по конкретному API или по операции API.
Дополнительные сведения:
Дальнейшие действия
Изучите следующее краткое руководство и приступите к использованию службы управления API Azure: