Обзор событий партнеров для партнеров — Сетка событий Azure

Партнерские события в Сетке событий позволяют клиентам подписываться на события, которые создаются в зарегистрированной системе, используя стандартный механизм для любого источника событий в Azure, например для служб Azure. Зарегистрированные системы, интегрированные с Сеткой событий, называются партнерами. Эта возможность также позволяет клиентам отправлять события в партнерские системы, поддерживающие получение событий и их передачу в клиентские решения или конечные точки на их платформе. Обычно партнеры являются поставщиками служб SaaS (программное обеспечение как услуга) или ERP, но это могут быть и владельцы корпоративных платформ, которые хотят предоставлять события для собственных сотрудников. Они используют интеграцию с Сеткой событий, чтобы реализовать комплексные сценарии взаимодействия с клиентами через платформу Azure (клиенты подписываются на события, отправленные партнером) или через партнерскую систему (клиенты подписываются на события Майкрософт, отправленные Сеткой событий Azure). Клиенты рассчитывают, что Сетка событий Azure будет отправлять созданные партнером события в поддерживаемые места назначения: веб-перехватчики, Функции Azure, Центры событий Azure, Служебная шина Azure и многое другое. Клиенты также используют Сетка событий Azure для маршрутизации событий, поступающих в службы Майкрософт, таких как Outlook, Teams или идентификатор Microsoft Entra, чтобы решения клиентов могли реагировать на них. С помощью событий партнеров клиенты могут на любой платформе и в любой сети создавать решения, управляемые событиями, чтобы надежно, безопасно и в большом масштабе получать или отправлять события.

Примечание.

Это статья содержит описания концепций, которые необходимо изучить, прежде чем подключиться в качестве партнера к Сетке событий Azure. Пошаговые инструкции по подключению к Сетке событий в качестве партнера с помощью портала Azure вы найдете в статье How to onboard as an Event Grid partner (Azure portal) (Как подключить партнера Сетки событий — портал Azure).

Партнерские события: принципы работы

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

Вы также можете создавать ресурсы Сетки событий для получения событий из Сетки событий Azure. Этот вариант использования предназначен для тех организаций, которые имеют в своем владении или распоряжении платформу с конечными точками, предназначенными для передачи событий своим клиентам. Такие организации могут иметь системы ERP с собственными возможностями для маршрутизации событий, которые позволяют отправлять входящие события Azure в клиентское приложение, размещенное на собственной платформе.

Для публикации или получения событий вы создадите одинаковые ресурсы Сетки событий, выполнив описанные здесь стандартные действия.

  1. Обратитесь в группу "Сетка событий" через askgrid@microsoft.com и сообщите о своем желании стать партнером. Когда вы свяжетесь с нами, мы поможем вам пройти процесс подключения и подготовить службу для включения в коллекцию Сетки событий Azure, чтобы клиенты смогли находить ее на портале Azure.

  2. Создайте регистрацию партнера. Это глобальный ресурс, который обычно создается только один раз.

  3. Создайте пространства имен партнера. Этот ресурс предоставляет конечную точку, через которую вы будете передавать события для публикации в Azure. При создании пространства имен партнера укажите созданную ранее регистрацию партнера.

  4. Клиент разрешает вам создать раздел партнера в подписке Azure клиента.

  5. Клиент открывает веб-страницу или выполняет команду, в которых вы реализовали требуемый интерфейс, чтобы запросить передачу потока событий в Azure или возможность получать события корпорации Майкрософт в вашу систему. В ответ на этот запрос вы настраиваете в системе действия, выполняемые при получении данных от клиента. Например, клиента может получить возможность выбирать определенные события из вашей системы для передачи в Azure.

  6. Создайте раздел партнера в подписке Azure клиента и группе ресурсов с помощью каналов. Каналы — это ресурсы, содержащиеся в пространствах имен партнеров.

  7. Клиент активирует раздел партнера, созданный в подписке Azure и группе ресурсов.

  8. Начните публикацию событий в пространстве имен партнера.

    Примечание.

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

В каких сценариях можно использовать функцию "События партнеров"?

Функция "События партнеров" может быть полезной, если выполняется одно или несколько из следующих условий.

Для партнеров, которые являются издателями событий

  • Вам нужен механизм, позволяющий предоставлять события клиентам на платформе Azure. Ваши пользователи могут фильтровать и перенаправлять эти события, используя разделы партнера и подписки на события, которыми они владеют и управляют. Вы можете использовать и другие методы интеграции, например разделы и домены. Но эти подходы не позволяют четко разделить между вами и клиентом владение ресурсами, управление и выставление счетов. Возможность "События партнеров" также предоставляет более интуитивно понятный пользовательский интерфейс, который упрощает обнаружение службы.
  • Вам нужна простая мультитенантная модель, в которой события публикуются в одной региональной конечной точке (конечной точке пространства имен) и распределяются по нескольким клиентам.
  • Вы хотите контролировать метрики, связанные с опубликованными событиями.
  • Вы хотите использовать для событий схему Облачные события 1.0.

Для партнеров, которые выполняют роль подписчика

  • Вы хотите, чтобы служба реагировала на события клиентов, происходящие в Microsoft Azure.
  • Вы хотите, чтобы клиент реагировал на события службы Microsoft Azure с помощью своих приложений, размещенных на платформе. Вы используете возможности платформы по маршрутизации событий для доставки событий в нужное клиентское решение.
  • Вам нужна простая модель, в которой клиентам достаточно выбрать имя службы в качестве назначения и не нужно разбираться в технических деталях, таких как конечные точки платформы.
  • Ваша система или платформа поддерживает схему Cloud Events 1.0.

Ресурсы, управляемые партнерами

Став партнером, вы будете управлять следующими типами ресурсов.

Регистрация партнера

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

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

Канал

Канал — это вложенный ресурс в пространстве имен партнера. Канал имеет две основные цели.

  • Во-первых, этот тип ресурса позволяет создавать ресурсы партнера в клиентской подписке Azure. При создании канала с типом partner topic в клиентской подписке Azure автоматически создается раздел партнера. Раздел партнера — это ресурс клиента, на который события перенаправляются при публикации системой партнера.

    Жизненный цикл канала совпадает с жизненным циклом связанного с ним раздела или назначения партнера. При удалении канала с типом partner topic удаляется и связанный с ним раздел партнера. Аналогичным образом, если клиент удаляет свой раздел партнера, из вашей подписки Azure удаляется связанный с ним канал.

  • Этот ресурс используется для маршрутизации событий. Канал с типом partner topic используется для маршрутизации событий в клиентский раздел партнера. Он поддерживает два режима маршрутизации.

    • Маршрутизация по имени канала При таком типе маршрутизации события публикуются с заголовком HTTP aeg-channel-name, в котором вы указываете имя канала для отправки этого события. Поскольку каналы являются представлением для разделов партнера, все направленные в канал события отображаются в клиентском разделе партнера. Такой вид маршрутизации добавлен недавно и отсутствует в event channels, где возможна только маршрутизация на основе источников. Маршрутизация по имени каналов дает больше вариантов использования, чем маршрутизация на основе источника, и мы рекомендуем использовать именно этот режим маршрутизации. Например, с маршрутизацией по имени канала клиент может через один раздел партнера запрашивать события, которые создаются в разных источниках событий.
    • Маршрутизация на основе источника. Этот подход к маршрутизации основывается на значении атрибута контекста source в событии. Источники сопоставляются с каналами, и если событие имеет значение источника "A", оно направляется в тот раздел партнера, который связан с каналом, где свойство источника содержит значение "A".

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

    Важно!

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

Пространство имен партнера

Пространство имен партнера — это региональный ресурс с конечной точкой для публикации событий в Сетку событий Azure. Пространства имен партнера содержат каналы или каналы событий (устаревший тип ресурса). Пространства имен партнера необходимо создавать в тех регионах, где клиенты будут запрашивать разделы или назначения партнера, так как каналы и сопоставленные с ними ресурсы партнера должны находиться в одном регионе. Канал в одном регионе нельзя использовать для сопоставления с разделом партнера в другом регионе.

Пространства имен партнера содержат каналы или каналы событий. Это зависит от значения режима маршрутизации разделов партнера, заданного для пространства имен. Если задано значение "Заголовок имени канала", каналы являются единственным типом ресурса, который можно создать в пространстве имен.можно создавать только ресурсы каналов. Если задан режим маршрутизации разделов партнера Атрибут источника в событии, пространство имен может содержать только каналы событий. Имейте в виду, что выбор значения partner topic routing mode не должен зависеть от выбора между маршрутизацией по имени канала или на основе источника. Каналы поддерживают оба варианта. Это скорее выбор между новым типом ресурса маршрутизации (каналы) и устаревшим типом ресурса (каналы событий).

Канал событий

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

Важно!

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

Проверенные партнеры

Проверенный партнер — это партнерская организация, которая подтверждена корпорацией Майкрософт. Мы настоятельно рекомендуем пройти такую проверку для вашей организации. Клиенты стремятся взаимодействовать с проверенными партнерами, так как эта проверка дает больше уверенности в том, что они имеют дело с законной организацией. После проверки вы будете представлены в коллекции Сетки событий, где клиенты смогут легко обнаруживать вашу службу и самостоятельно выполнять определенные действия, например подписываться на ваши события.

Авторизация клиента для создания разделов партнеров

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

Примечание.

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

Важно!

Проверенный партнер и авторизованный партнер — это не одно и то же. Даже если партнер был проверен корпорацией Майкрософт, вам по-прежнему необходимо авторизоваться, прежде чем создать партнерский раздел в подписке Клиента Azure.

Активация раздела партнера

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

Как автоматизировать процесс получения сведений об активации конкретного раздела партнера?

В этом случае у вас есть два варианта.

  • Периодически опрашивайте состояние канала, чтобы проверить смену состояния активации с NeverActivated на Activated. Эта операция может потребовать значительных вычислительных ресурсов.
  • Создайте подписку на событие для подписки Azure или группы ресурсов, где размещены каналы, которые требуется отслеживать. Вы будете получать события Microsoft.Resources.ResourceWriteSuccess при каждом обновлении канала. После этого вы сможете считывать состояние канала с указанным в событии идентификатором Azure Resource Manager и проверить, связано ли обновление с изменением состояния активации на Activated.

Ссылки

Пакеты SDK

Следующие шаги