Привязки Web PubSub для Функции Azure

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

Действие Тип
Обработка событий клиента из Web PubSub Привязка триггера
Обработка событий клиента из Web PubSub с помощью триггера HTTP или возврата URL-адреса и маркера доступа клиента Входная привязка
Вызов API-интерфейсов службы Выходная привязка

Примеры

Установка расширения

Устанавливаемый пакет расширения NuGet зависит от режима C#, который используется в приложении-функции:

Функции выполняются в изолированном рабочем процессе C#. Дополнительные сведения см. в руководстве по запуску Функции Azure C# в изолированном рабочем процессе.

Добавьте расширение в проект, установив данный пакет NuGet.

Установка пакета

Чтобы использовать это расширение привязки в приложении, убедитесь, что файл host.json в корне проекта содержит следующую extensionBundle ссылку:

{
    "version": "2.0",
    "extensionBundle": {
        "id": "Microsoft.Azure.Functions.ExtensionBundle",
        "version": "[4.0.0, 5.0.0)"
    }
}

В этом примере значение указывает узлу version функций использовать версию пакета, которая по крайней мере [4.0.0, 5.0.0) меньше4.0.0, чем , которая включает все потенциальные версии 4.x.5.0.0 Эта нотация эффективно поддерживает ваше приложение в последней доступной дополнительной версии пакета расширений версии 4.x.

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

Примечание.

Расширения Web PubSub для Java пока не поддерживаются.

Основные понятия

Схема рабочего процесса службы Azure Web PubSub, работающей с приложениями-функциями.

(1)–(2) Входная привязка WebPubSubConnection с HttpTrigger для создания клиентского соединения.

(3)–(4) Привязка триггера WebPubSubTrigger или входная привязка WebPubSubContext к HttpTrigger для запроса на обслуживание.

(5)–(6) Выходная привязка WebPubSub отправляет службе запрос на какое-то действие.

Подключение

Для подключения к службе Azure Web PubSub можно использовать строку подключения или удостоверение Microsoft Entra .

Строка подключения

По умолчанию для хранения строка подключения web PubSub используется параметр WebPubSubConnectionString приложения. При выборе другого имени параметра для подключения необходимо явно задать его в качестве имени ключа в определениях привязки. Во время локальной разработки этот параметр Values также необходимо добавить в коллекцию в файлеlocal.settings.json.

Внимание

Строка подключения содержит сведения об авторизации, требуемые для доступа приложения к службе Azure Web PubSub. Ключ доступа в строке подключения аналогичен паролю привилегированного пользователя для службы. Для оптимальной безопасности приложение-функция должно использовать управляемые удостоверения при подключении к службе Web PubSub вместо использования строки подключения.

Дополнительные сведения о настройке и использовании Web PubSub и Функции Azure вместе см. в руководстве по созданию бессерверного приложения уведомлений с Функции Azure и службой Azure Web PubSub.

Подключения на основе идентификации

Если вы используете расширения функций Azure Web PubSub версии 1.10.0 или более поздней версии, вместо использования строки подключения с ключом доступа можно настроить приложение-функцию для проверки подлинности в Azure Web PubSub с помощью удостоверения Microsoft Entra.

Этот подход устраняет необходимость управления секретами и рекомендуется для рабочих нагрузок.

Предпосылки

Убедитесь, что удостоверение Microsoft Entra, используемое приложением-функцией, было предоставлено соответствующая роль Azure RBAC в целевом ресурсе Web PubSub:

Конфигурация

Подключения на основе удостоверений в Функциях Azure используют набор параметров, общих префиксов. По умолчанию расширения функций Azure Web PubSub ищут параметры с префиксом WebPubSubConnectionString. Этот префикс можно настроить, задав connection свойство в триггере или привязке.

Для Azure Web PubSub необходимо указать параметр, который необходимо указать в URI конечной точки службы:

Недвижимость Шаблон переменной среды Description Обязательно
URI службы WebPubSubConnectionString__serviceUri URI конечной точки службы Web PubSub. Да

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

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

Пример конфигурации

В следующем примере показано, как настроить параметры по умолчанию на основе удостоверений:

{
  "WebPubSubConnectionString__serviceUri": "https://your-webpubsub.webpubsub.azure.com"
}

Примечание.

При использовании local.settings.json файла в локальном Конфигурация приложений Azure или Key Vault для предоставления параметров для подключений на основе удостоверений замените __: на имя параметра, чтобы убедиться, что имена разрешаются правильно.

Например: WebPubSubConnectionString:serviceUri.

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