Создание вебхуков

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

Предварительные условия, необходимые для создания вебхуков

Прежде чем создавать вебхуки, обратите внимание на следующее:

  • Чтобы использовать вебхуки, ваша организация должна использовать ArcGIS Enterprise версии 10.7 или новее. Для использования сервисных вебхуков, ваша организация должна использовать ArcGIS Enterprise версии 11.70 или новее.
  • Чтобы создавать вебхуки организации и управлять ими, вам необходимы либо права Вебхуки организации, либо использовать роль администратора по умолчанию.
  • Чтобы создавать вебхуки сервиса геообработки и управлять ими, вам необходимы или права Геообработка, или роль администратора по умолчанию или роль издателя.
  • Чтобы создавать вебхуки сервиса объектов и управлять ими, вам необходимы или права Сервис объектов, или использовать роль администратора по умолчанию или роль издателя.
  • Приемники вебхуков должны быть настроены для связи по HTTPS. Существует несколько опций, поддерживаемых для приемников, таких как приемники сторонних веб-сервисов (Microsoft Power Automate, Zapier и IFFT), пользовательские веб-сервисы. Примеры того, как можно создать пользовательские веб-сервисы или начать использовать сторонние приемники, см. в Репозиторий вебхука.
  • Чтобы настроить вебхуки для размещенного сервиса объектов, этот сервис должен поддерживать возможность редактирования, и у него должна быть включена функция отслеживания изменений без синхронизации.
  • Чтобы настроить вебхуки для неразмещенного сервиса объектов, данные многопользовательской базы геоданных, на которую ссылается этот сервис, должны отвечать требованиям, установленным для отслеживания изменений, и соответствовать одному из следующих условий:
    • Это - неверсионный сервис объектов с включенным архивированием и с глобальными идентификаторами.
    • Это - сервис-ориентированная версия сервиса объектов с отключенной функцией Управления версиями, когда изменения применяются непосредственно к объектам версии по умолчанию.
    • Это - сервис-ориентированная версия сервиса объектов с включенной функцией Управления версиями. Когда поддерживается возможность Управления версиями, сервис может создавать вебхук с триггером событий FeaturesPosted, который будет вызывать вебхук всякий раз, когда на данном сервисе будет выполняться операция закрепления.
    Примечание:

    Поддержка сервис-ориентированных версий сервисов объектов была добавлена в ArcGIS Enterprise 11.3.

  • Чтобы настроить вебхуки для сервиса геообработки, сервис должен быть асинхронным.

Создать вебхук организации

Вебхуки организации позволяют вам подписаться на триггеры событий, связанных с элементами портала, группами и пользователями вашего ArcGIS Enterprise.

Примечание:

Вебхуки организации могут быть созданы через веб-сайт портала ArcGIS Enterprise или ArcGIS Portal Directory. Пример запроса POST, который создает вебхук для событий, связанных с пользователем, группой и элементом, см. в документации по REST API Создание вебхука.

Создание вебхука организации в ArcGIS Portal Directory

Чтобы создать вебхук организации через ArcGIS Portal Directory, выполните следующие шаги:

  1. Перейдите к ArcGIS Portal Directory и войдите как участник с ролью администратора.

    Вебхуки организации могут создаваться и управляться только администраторами с правом Вебхуки организации или участниками, которым назначена роль администратора по умолчанию.

    https://organization.domain.com/context/sharing/rest
    

    После выполнения вами входа для вашей учетной записи появится страница ресурсов Пользователя.

  2. Нажмите на гиперссылку Org ID или выполните запрос в следующей форме для доступа к странице ресурса Portal Self:
    https://organization.domain.com/context/sharing/rest/portals/self
    
  3. Прокрутите вниз страницу собственных ресурсов и щелкните Вебхук > Создать вебхук, чтобы получить доступ к операции Создать вебхук.
  4. Дойдя до конечной точки Создать вебхук, предоставьте следующую информацию:
    1. Введите уникальное имя вебхука в текстовом окне Имя.
    2. Укажите целевой URL-адрес для приемника вебхука в текстовом поле Целевой URL-адрес, который будет запрашиваться в процессе создания вебхука, чтобы обеспечить успешное соединение между вашим приемником и порталом ArcGIS Enterprise.

      Пример целевого URL-адреса показывается ниже:

      https://app.logic.azure.com:443/workflows/b688528a36e246279dc050f936e5ebd4/triggers/manual/paths/invoke?api-version=2016-06-01&sp=%2Ftriggers%2Fmanual%2Frun&sv=1.0&sig=nHP-LBo9x-nSgMi11DSDuwRIUiJr-8yKGCy7OYaT_ow
      
    3. При необходимости установите секретный ключ для вебхука, который можно использовать для аутентификации сообщений вебхука с приемником. Введите определяемую пользователем буквенно-цифровую строку в текстовое поле Секрет (необязательно).
    4. При необходимости укажите информацию о деактивации вебхука в текстовом поле Свойства конфигурации.

      По умолчанию вебхук деактивируется, если в течение пяти дней произошло пять сбоев.

    5. В разделе Какие события вы хотите назначить триггерными для этого вебхука выберите Разрешить мне определить вручную или Отправить мне все.
      • Если вы выберете Разрешить мне определить вручную, перечислите события-триггеры, которые будут использоваться для этого вебхука, в текстовом поле Отправить мне изменения для этих событий, разделенных запятыми. Например, если вы хотите подписаться на все события, относящиеся к определенной группе в вашей организации, введите событие-триггер, подобное показанному ниже, где [groupID] представляет собой уникальный идентификатор, связанный с определенной группой:
        /groups/[groupID]/update
        
        Список всех поддерживаемых триггеров событий для вебхуков организации см. в разделе Триггеры событий.
      • Если вы выберете Отправить мне все, вы будете подписаны на все поддерживающие триггеры события. Вы будете получать уведомления о каждом событии, как только оно произойдет.
  5. После настройки вышеуказанных параметров щелкните Создать вебхук, чтобы подтвердить запрос.

    После завершения операции новый вебхук будет добавлен в вашу организацию.

Создание вебхука организации на веб-сайте портала ArcGIS Enterprise

Чтобы создать вебхук организации через веб-сайт портала ArcGIS Enterprise, выполните следующие шаги:

  1. Убедитесь, что вы вошли под учетной записью администратора по умолчанию или участника с пользовательской ролью, имеющей права Вебхуки организации.
  2. Перейдите к Организация > Настройки > Вебхуки.
  3. Щелкните Создать вебхук.
  4. В окне Создать вебхук сделайте следующее:
    1. Введите уникальное имя вебхука в текстовом окне Имя.
    2. Выберите тип вебхука из ниспадающего меню Тип.
      • При выборе Все вы будете подписаны на все поддерживаемые триггеры событий. Вы будете получать уведомления о каждом событии, как только оно произойдет.
      • Выбор Элементы, Пользователи, Группы или Роли позволяет вам вручную определить, на какие триггерные события вы хотите подписаться.
    3. Если вы выберете тип вебхук, отличный от Все, появится дополнительное ниспадающее меню, зависящее от выбранного типа вебхука. Например, если вы выбрали Элементы в качестве типа вебхука, появится ниспадающее меню Элементы, где можно выбрать определенный элемент, который вебхук будет отслеживать.
    4. Выберите событие триггера в ниспадающем меню События. Например, если вы хотите, чтобы вебхук вызывался при публикации определенного элемента, выберите /items/<Item ID>/publish.
    5. Укажите целевой URL для приемника вебхука в текстовом поле URL-адрес вебхука. Пример целевого URL-адреса показывается ниже:
      https://app.logic.azure.com:443/workflows/b688528a36e246279dc050f936e5ebd4/triggers/manual/paths/invoke?api-version=2016-06-01&sp=%2Ftriggers%2Fmanual%2Frun&sv=1.0&sig=nHP-LBo9x-nSgMi11DSDuwRIUiJr-8yKGCy7OYaT_ow
      
    6. При необходимости установите секретное значение для вебхука в текстовом поле Секретный ключ (дополнительно). Секретное значение будет включено в целевой вебхук и использовано для аутентификации сообщений у получателя.
  5. Щелкните Создать вебхук.

Настройка дополнительных параметров для вебхуков организации

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

Примечание:

Вебхуки организации могут иметь расширенные свойства, настраиваемые через веб-сайт портала ArcGIS Enterprise или ArcGIS Portal Directory. Пример запроса POST, который настраивает эти дополнительные опции, см. в документации REST API Обновить параметры вебхука.

Настройка дополнительных параметров в ArcGIS Portal Directory

Для настройки дополнительных параметров через ArcGIS Portal Directory, выполните следующее:

  1. Перейдите к ArcGIS Portal Directory и войдите как участник с ролью администратора.

    Вебхуки организации могут создаваться и управляться только участниками, которым назначена роль администратора по умолчанию, или участниками с правом Вебхуки организации.

    https://organization.domain.com/context/sharing/rest
    

    После выполнения вами входа для вашей учетной записи появится страница ресурсов Пользователя.

  2. Нажмите на гиперссылку Org ID или выполните запрос в следующей форме для доступа к странице ресурса Portal Self:
    https://organization.domain.com/context/sharing/rest/portals/self
    
  3. Прокрутите вниз страницу собственных ресурсов и щелкните Вебхук > Настройки > Обновить, чтобы получить доступ к операции Обновить параметры вебхука.
  4. Дойдя до конечной точки Обновить параметры вебхука, предоставьте следующую информацию:
    1. Установите значение для Количество попыток уведомления.

      Это значение указывает количество попыток доставки полезных данных вебхука. По умолчанию портал ArcGIS Enterprise будет пытаться доставить полезные данные 3 раза. Значение для попыток должно быть задано целым числом от 0 до 5.

    2. Установите значение для Время ожидания уведомления в секундах.

      Это значение указывает длительность времени в секундах, в течение которого портал ArcGIS Enterprise будет ожидать получение ответа от приемника. По умолчанию портал ArcGIS Enterprise будет ожидать 10 секунд. Значение количества секунд, в течение которых портал ArcGIS Enterprise будет ждать, должно быть целым числом в диапазоне от 0 до 60 секунд.

    3. Установите значение для Время, прошедшее с момента уведомления в секундах.

      Это значение указывает количество времени в секундах между каждой попыткой доставки полезных данных. По умолчанию портал ArcGIS Enterprise попытается доставить другие полезные данные через 5 секунд, если предыдущая попытка не удалась, пока не будет достигнуто количество попыток, указанное в поле Количество попыток уведомления.

  5. После настройки вышеуказанных параметров нажмите Обновить параметры вебхука, чтобы отправить запрос.

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

Настройка дополнительных параметров на веб-сайте портала ArcGIS Enterprise

Для настройки дополнительных параметров через веб-сайт портала ArcGIS Enterprise, выполните следующее:

  1. Войдите под учетной записью администратора по умолчанию или участника с пользовательской ролью, имеющей права Вебхуки организации.
  2. Щелкните Организация вверху сайта, затем выберите вкладку Настройки.
  3. Щелкните Вебхуки в левой части страницы.
  4. Щелкните Дополнительные настройки вебхука.
  5. В окне Дополнительные настройки вебхука сделайте следующее:
    1. Установите значение для Количество попыток доставки.

      Это значение указывает количество попыток доставки полезных данных вебхука. По умолчанию портал ArcGIS Enterprise будет пытаться доставить полезные данные 3 раза. Значение для попыток должно быть задано целым числом от 0 до 5.

    2. Установите значение для Время ожидания уведомления.

      Это значение указывает длительность времени в секундах, в течение которого портал ArcGIS Enterprise будет ожидать получение ответа от приемника. По умолчанию портал ArcGIS Enterprise будет ожидать 10 секунд. Значение количества секунд, в течение которых портал ArcGIS Enterprise будет ждать, должно быть целым числом в диапазоне от 0 до 60 секунд.

    3. Установите значение для Время, прошедшее с момента уведомления.

      Это значение указывает количество времени в секундах между каждой попыткой доставки полезных данных. По умолчанию портал ArcGIS Enterprise попытается доставить другие полезные данные через 5 секунд, если предыдущая попытка не удалась, пока не будет достигнуто количество попыток, указанное в поле Количество попыток доставки.

  6. После настройки вышеуказанных параметров щелкните Сохранить.

    Обновленные свойства будут применены ко всем настроенным вебхукам организации.

Создание вебхука сервиса геообработки

Вебхуки сервисов геообработки позволяют подписаться на определенные триггеры событий, связанные с сервисами геообработки.

Примечание:

Вебхуки сервисов геообработки можно создать только через ArcGIS Server Administrator Directory. Пример запроса POST, создающего вебхук сервиса геобработки, см. в документации REST API Создание вебхука.

Для создания вебхука сервиса геообработки выполните следующие шаги:

  1. Перейдите к ArcGIS Enterprise Administrator Site Directory и выполните вход как участник с соответствующими правами.
    Вебхуки могут создаваться и управляться только участниками, которым назначены права Геообработка, роль администратора по умолчанию или роль издателя.
    Примечание:

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

    https://organization.domain.com/context/admin
    
  2. После входа перейдите к ресурсу Вебхуки для сервиса геообработки, щелкнув Сервисы > [ИмяСервиса] > Вебхуки > Создать, где [ServiceName] представляет сервис, для которого будет создан вебхук. Для сервисов, размещенных в определенных папках, щелкните Сервисы > [FolderName] > [ServiceName] > Вебхуки > Создать, где [FolderName] представляет папку, в которой находится сервис.
    Внимание:

    Чтобы настроить вебхуки для сервиса геообработки, сервис геообработки должен быть асинхронным.

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

      Вебхуки сервиса используют проверку подписи для обеспечения целостности и безопасности полезных данных вебхуков, отправляемых от ArcGIS Enterprise получателю вебхука. Буквенно-цифровая строка, введенная в текстовое поле Ключ подписи, рассматривается как секретный ключ, который известен и хранится независимо как для ArcGIS Enterprise, так и для получателя вебхука. Когда запускается событие вебхука, секретный ключ и полезная нагрузка хэшируются с использованием алгоритма HMAC-SHA256, создавая подпись. Затем подпись передается в запросе вебхука в качестве значения заголовка x-esriHook-Signature. Когда полезные данные вебхука доставляются получателю, он использует секретный ключ и полезные данные для создания собственной подписи с использованием того же алгоритма HMAC-SHA256, который использовался ArcGIS Enterprise. Если подпись, включенная в заголовок запроса, соответствует пересчитанному значению, созданному получателем вебхука, он может доверять полезной нагрузке вебхука. В противном случае получатель может принять решение отклонить входящую полезную нагрузку вебхука.

    3. Укажите целевой URL-адрес для приемника вебхука в текстовом поле Вебхук URL, который будет запрашиваться во время создания вебхука, чтобы гарантировать успешное соединение между получателем и развертыванием ArcGIS Server. Пример цели показывается ниже:
      https://app.logic.azure.com:443/workflows/b688528a36e246279dc050f936e5ebd4/triggers/manual/paths/invoke?api-version=2016-06-01&sp=%2Ftriggers%2Fmanual%2Frun&sv=1.0&sig=nHP-LBo9x-nSgMi11DSDuwRIUiJr-8yKGCy7OYaT_ow
      
    4. При необходимости укажите тип медиа. В ниспадающем меню Тип ресурса выберите что-то одно из следующего:
      • application/json (default)
      • application/x-www-form-urlencoded
    5. При необходимости определите формат полезных данных. В ниспадающем меню Формат полезных данных выберите что-то одно из следующего:
      • JSON (по умолчанию)
      • PJSON
    6. При необходимости используйте параметр Активация, чтобы отключить или включить обратные вызовы при инициализации вебхука. Чтобы включить, выберите значение True. Чтобы выключить, выберите значение False.

      По умолчанию обратные вызовы включены.

  4. После настройки вышеуказанных параметров щелкните Создать, чтобы отправить запрос.

    После завершения операции к конкретному сервису геообработки применяется новый вебхук.

Примечание:
В отличие от вебхуков сервисов объектов и организаций, вебхуки сервисов геообработки не имеют триггеров событий, заданных пользователем. Вебхуки сервисов геообработки доставляют полезные данные по завершении задания геообработки. Более подробную информацию о полезных данных, передаваемых для сервисов геообработки, см. в разделе Полезные данные.

Создание вебхука сервиса объектов

Вебхуки сервисов объектов позволяют подписаться на определенные триггеры событий, связанные с сервисами объектов.

Примечание:

Вебхуки сервисов объектов можно создать только через ArcGIS Server Administrator Directory. Пример запроса POST, создающего вебхук сервиса объектов, см. в документации REST API Создание вебхука.

Чтобы создать вебхук для сервиса объектов, выполните следующие шаги:

  1. Перейдите к ArcGIS Enterprise Administrator Site Directory и выполните вход как участник с соответствующими правами.
    Вебхуки могут создаваться и управляться только участниками, которым назначены права Векторный слой, роль администратора по умолчанию или роль издателя.
    https://organization.domain.com/context/admin
    
  2. После выполнения входа перейдите к ресурсу Вебхуки для сервиса объектов, нажав Сервисы > [ServiceName] > Вебхуки > Создать, где [ServiceName] представляет сервис, для которого создается вебхук. Для сервисов, размещенных в определенных папках, щелкните Сервисы > [FolderName] > [ServiceName] > Вебхуки > Создать, где [FolderName] представляет папку, в которой находится сервис.
  3. В точке доступа Создать вебхук измените следующую информацию:
    1. Введите уникальное имя вебхука в текстовом окне Имя. Предоставленное имя может содержать только буквенно-цифровые значения, так как использование специальных символов приведет к сообщению с ошибкой.
    2. Перечислите триггеры событий, которые будут использоваться для этого вебхука, в текстовом поле Изменить тип. Например, чтобы инициировать вебхук при создании сервиса объектов, используйте следующий триггер события:

      Пример

      FeaturesCreated
      
      Список все триггеров событий, поддерживаемых для вебхуков сервиса объектов, см. в разделе Триггеры событий.
    3. При необходимости установите секретный ключ для вебхука, который можно использовать для аутентификации сообщений вебхука с приемником. Введите определяемую пользователем буквенно-цифровую строку в текстовое поле Ключ подписи.

      Вебхуки сервиса используют проверку подписи для обеспечения целостности и безопасности полезных данных вебхуков, отправляемых от ArcGIS Enterprise получателю вебхука. Буквенно-цифровая строка, введенная в текстовое поле Ключ подписи, рассматривается как секретный ключ, который известен и хранится независимо как для ArcGIS Enterprise, так и для получателя вебхука. Когда запускается событие вебхука, секретный ключ и полезная нагрузка хэшируются с использованием алгоритма HMAC-SHA256, создавая подпись. Затем подпись передается в запросе вебхука в качестве значения заголовка x-esriHook-Signature. Когда полезные данные вебхука доставляются получателю, он использует секретный ключ и полезные данные для создания собственной подписи с использованием того же алгоритма HMAC-SHA256, который использовался ArcGIS Enterprise. Если подпись, включенная в заголовок запроса, соответствует пересчитанному значению, созданному получателем вебхука, он может доверять полезной нагрузке вебхука. В противном случае получатель может принять решение отклонить входящую полезную нагрузку вебхука.

    4. Укажите целевой URL-адрес для приемника вебхука в текстовом поле Вебхук URL, который будет запрашиваться во время создания вебхука, чтобы гарантировать успешное соединение между получателем и развертыванием ArcGIS Server. Пример цели показывается ниже:
      https://app.logic.azure.com:443/workflows/b688528a36e246279dc050f936e5ebd4/triggers/manual/paths/invoke?api-version=2016-06-01&sp=%2Ftriggers%2Fmanual%2Frun&sv=1.0&sig=nHP-LBo9x-nSgMi11DSDuwRIUiJr-8yKGCy7OYaT_ow
      
    5. При необходимости укажите тип медиа. В ниспадающем меню Тип ресурса выберите что-то одно из следующего:
      • application/json (default)
      • application/x-www-form-urlencoded
    6. При необходимости определите формат полезных данных. В ниспадающем меню Формат полезных данных выберите что-то одно из следующего:
      • JSON (по умолчанию)
      • PJSON
    7. При необходимости используйте параметр Активация, чтобы отключить или включить обратные вызовы при инициализации вебхука. Чтобы включить, выберите значение True. Чтобы выключить, выберите значение False.

      По умолчанию обратные вызовы включены.

    8. Настройте расписание вебхуков, изменив информацию Секунды, в текстовом окне Расписание. Для сервисов объектов, которые часто редактируются, уменьшите значение Секунд, чтобы получать более частые вебхуки с меньшим количеством информации о событиях в полезных данных. Для сервисов объектов, которые редактируются редко, увеличьте значение Секунд, чтобы получать менее частые вебхуки с большим количеством информации о событиях в полезных данных.

      Минимальное значение и по умолчанию для расписания составляет 20 секунд.

  4. После настройки вышеуказанных параметров щелкните Создать, чтобы отправить запрос.

    После завершения операции к конкретному сервису объектов применяется новый вебхук.