Обзор веб-перехватчиков

Завершено

Вы можете автоматизировать запуск runbook либо составив расписание, либо с помощью веб-перехватчика.

Веб-перехватчик позволяет запускать определенный модуль runbook в службе автоматизации Azure с помощью одного HTTPS-запроса.

Он позволяет внешним службам, таким как Azure DevOps, GitHub или пользовательские приложения, запускать runbook и при этом не реализовывать более сложные решения с помощью API службы автоматизации Azure.

Дополнительные сведения о веб-перехватчиках можно найти в статье Запуск модуля runbook службы автоматизации Azure с помощью веб-перехватчика.

Diagram of flowchart webhook process. The Webhook and Runbook are within a square labeled Automation.

Создание веб-перехватчика

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

  1. На портале Azure откройте модуль runbook, для которого требуется создать веб-перехватчик.
  2. В области runbook в разделе "Ресурсы" выберите пункт Веб-перехватчики, а затем щелкните + Добавить веб-перехватчик.
  3. Выберите Создать новый веб-перехватчик.
  4. В диалоговом окне Создать новый веб-перехватчик необходимо настроить несколько значений. После настройки нажмите кнопку "Создать":
    • Имя. Для веб-перехватчика можно указывать любое имя, так как оно не отображается для клиента. Имя используется для идентификации модуля Runbook в службе автоматизации Azure.
    • Включены. При создании веб-перехватчика он по умолчанию включается. Если его отключить, клиенты не смогут его использовать.
    • Срок действия. У каждого веб-перехватчика есть дата окончания срока действия, после которой его больше нельзя использовать. Вы можете изменять эту дату после создания веб-перехватчика, при условии, что срок действия веб-перехватчика не истек.
    • URL-адрес. URL-адрес веб-перехватчика — это уникальный адрес, который клиент вызывает с помощью метода HTTP POST для запуска модуля runbook, связанного с веб-перехватчиком. Он автоматически создается при создании веб-перехватчика. Указать пользовательский URL-адрес нельзя. URL-адрес содержит токен безопасности, который позволяет сторонней системе вызвать модуль Runbook без дополнительной проверки подлинности. По этой причине его следует рассматривать как пароль. По соображениям безопасности URL-адрес можно просмотреть только на портале Azure при создании веб-перехватчика. Запишите URL-адрес в безопасном расположении для дальнейшего использования.Diagram of the flow of webhook parameter values and how they flow. The webhook starts with an incoming HTTP POST request.

Примечание.

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

  1. Выберите вариант Parameters run settings (Default: Azure) (Параметры запуска для параметров (По умолчанию: Azure)). Этот вариант имеет приведенные ниже характеристики, что позволяет выполнять следующие действия.

    • Если у модуля runbook есть обязательные параметры, эти параметры необходимо указать во время создания. Вы не можете создать веб-перехватчик, если не укажете эти значения.
    • Если в модуле runbook нет обязательных параметров, конфигурация не требуется.
    • Веб-перехватчик должен содержать значения для всех обязательных параметров модуля runbook, а также необязательных параметров.
    • При запуске модуля runbook с помощью веб-перехватчика клиенту не удастся переопределить определенные значения параметров.
    • Чтобы получить данные от клиента, runbook может принять единственный параметр $WebhookData типа [object], который содержит данные, включаемые клиентом в запрос POST.
    • Для поддержки параметра $WebhookData не требуется конфигурация веб-перехватчика.Screenshot of a warning explaining that after creating a webhook, its URL cannot be viewed. Copy it before pressing OK.
  2. По завершении выберите Создать.

Использование объекта Webhook

Чтобы использовать объект Webhook после его создания, клиентское приложение должно создать запрос HTTP POST с URL-адресом объекта Webhook.

  • Синтаксис веб-перехватчика будет иметь следующий формат:

      http://< Webhook Server >/token?=< Token Value >
    
    
  • Клиент получит один из следующих кодов возврата в ответ на запрос POST.

    Код Тестирование Description
    202 Accepted Запрос был принят, и модуль Runbook успешно поставлен в очередь.
    400 Недопустимый запрос Запрос не выполнен, поскольку срок действия runbook истек, модуль отключен или маркер в URL-адресе недействителен.
    404 Не найдено Запрос не выполнен, поскольку не удалось найти веб-перехватчик, runbook или учетную запись.
    500 Внутренняя ошибка сервера
  • При успешном выполнении ответ веб-перехватчика содержит идентификатор задания в формате JSON:

    {"JobIds":["< JobId >"]}
    
    

    Ответ будет содержать один идентификатор задания, однако формат JSON в целом допускает усовершенствования.

  • Определить время завершения задания runbook или его состояние завершения с помощью веб-перехватчика нельзя. Эти сведения можно получить, только если использовать идентификатор задания с другим методом, например PowerShell или API службы автоматизации Azure.

Дополнительные сведения см. на странице Запуск модуля runbook службы автоматизации Azure с помощью веб-перехватчика.