Рубрики
Uncategorized

Архитектор Azure API Управление обслуживанием

Давайте установим шлюз API, используя службу управления Azure API с хорошей архитектурой. API G … с меткой Azure, Serverless, DevOps, Appingway.

Архитекторские решения без сервера в Azure (2 серии деталей)

Давайте установим шлюз API, используя службу управления Azure API с хорошей архитектурой.

Шлюз API расположен между вашими API и Интернетом. Вы можете контролировать, как API выставлены или ограничивают использование на подписку через портал Azure.

Почему я использовал службу управления AZURE API?

Это родная Azure SaaS (программное обеспечение как услугу), которое приносит хорошие плюсы;

  • Документация API.
  • Скорость ограничения доступа
  • Мониторинг здоровья
  • Современные форматы, такие как JSON
  • Подключения к любому API
  • Аналитика
  • Безопасность
  • Встроенный кэширование
  • Трассировка сети

Есть ли компромисс?

Да, Политика автоматического выключателя еще не реализован. Вы можете создать свой собственный шлюз API с автоматическим выключателем, используя сторонние библиотеки, такие как Оцелот и Полли с Качество обслуживания Настроен, но стоит ли пойти в Паасу (платформу как услугу) вместо SaaS?

Настройка службы управления API

  1. Войдите в Azure Portal Отказ
  2. Создайте ресурс через Интеграция , а потом Управление API Отказ
  3. Дайте глобально уникальное имя вашему ресурсу.
  4. Выберите Расход (99,9Ссловие,%) Как ценовой уровень, потому что этот неверный план, намного быстрее создать для специального тестирования.
  5. Нажмите Создать Отказ
  6. Развертывание начнется, и он может занять несколько минут.

Когда развертывание будет завершено, вы получите электронное письмо с уведомлением по адресу, которое вы предоставили в качестве администратора. Как только он развернут, мы импортируем нашу первую API.

Импортировать API

  1. Войдите в Azure Portal Отказ
  2. Перейти к Все ресурсы А затем выберите свой шлюз API.
  3. Под Управление API нажмите Апис
  4. Выберите свою спецификацию. Если вы используете Swashbuckle Библиотека в вашем API, что означает, что у вас уже есть Спецификация Openapi Отказ
  5. На Создать из спецификации Openapi Страница, вставьте чванство JSON URL вашего API. Другие поля будут заполнены в соответствии с вашим API.
  6. Нажмите Создать Отказ

Теперь вы можете проверить ворота через Тест Вкладка на странице сведения о API.

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

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

Имя заголовка по умолчанию — OCP-APIM-APIM-KEY и строка запроса по умолчанию — Подписка-ключ Отказ Если ключ не передается в заголовке или в качестве строки запроса в URL, вы получите 401. Доступ Отрицал Ответ от шлюза API.

В управлении Azure API администраторы могут использовать политики для изменения поведения API через конфигурацию. Политики выполняются в четыре разных времена:

  • Входящий : Эти политики выполняются, когда запрос получен от клиента.
  • Backend : Эти политики выполняются до запроса на управляемое API.
  • Исходящий : Эти политики выполняются до того, как ответ отправляется клиенту.
  • По ошибке : Эти политики выполняются при повышении исключения.

Существует еще одна область применения в дополнение к областям подписки для политики, и она является оперативной политикой. Мы можем определить порядок политики. Если мы размещаем <База/> Тег до политики, которая означает, что более высокие политики будут применены первыми и наоборот.

Обычно используемые политики

  • Проверьте заголовок HTTP
  • Ограничить скорость вызовов по подписке
  • Ограничить абонент IP
  • Аутентифицировать
  • Рост
  • Jsonp.
  • Конвертировать XML в JSON
  • Переписать URL

Политика кэша

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


    
        
        
            id
        
    
    
        
    
    
        
        
    
    
        
    

варьируемое разработчик Атрибут — это разделение ответов в соответствии с ключом подписки.

Как вы уже можете заметить, тип кэширования для этого примера является внутренним. Мы также можем использовать внешнюю кэширование.

Добавить внешний кэш

  1. Создайте кэш Azure для Redis Resource.
  2. Перейдите в свой сервис управления API и нажмите Внешний кэш под Настройки а затем нажмите + Добавить Отказ
  3. Выберите свой экземпляр Cache Redis и местоположение для использования. Другие поля будут заполнены.
  4. Нажмите Сохранить Отказ
  5. Перейти к API под Управление API Затем выберите API и щелкните карандаш рядом с кэш-поиск редактировать политику.
  6. Изменить тип кэширования из Внутренний к Внешний

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

Удалить ненужную информацию из заголовка ответов

ASP.NET Добавить X-Powered-by: asp.net Заголовок к нашим API по умолчанию, но это может позволить злоумеренному пользователю попытаться использовать любые ошибки, известные для технологического стека. Мы можем удалить этот заголовок из ответа, добавив Набор-заголовок политика на выезд, как в примере ниже;


   
   

Заменить контент с помощью политики преобразования

Если мы построим API с Stateoas Ограничение, это означает, что у нас есть ссылки в ответах. Поскольку шлюз переопределяет URL-адреса, нам может потребоваться заменить ссылки в тело ответа. Мы можем сделать это, добавив Тег на элемент, как ниже;


   
   
   

Ограничить скорость вызовов по подписке

Если мы разместим Оценка - по-ключей тег внутри Входящий Элемент, это ограничит скорость вызовов по подписке. Подписка может вызвать эту API 10 раз за 60 секунд, и только успешные ответы считаются.


    
    

Проверьте сертификат, чтобы разрешить запросы

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

  1. Под Настройки нажмите Пользовательские домены В вашей службе управления API.
  2. Включение Да для Запросить сертификат клиента опция, а затем нажмите Сохранить Отказ
  3. Заменить <Входящие> Узел файла политики со следующим XML при замене Желаемый отпечаток часть с отпечатками вашего сертификата;

    
        
            
                
            
        
    
    

Пожалуйста, напишите политики, которые вы найдете полезными в комментариях.

Архитекторские решения без сервера в Azure (2 серии деталей)

Оригинал: «https://dev.to/olcay/architect-azure-api-management-service-24hd»