Observação
O acesso a essa página exige autorização. Você pode tentar entrar ou alterar diretórios.
O acesso a essa página exige autorização. Você pode tentar alterar os diretórios.
Este conjunto de artigos explica como autenticar e enviar mensagens em tempo real para clientes conectados ao Azure Web PubSub usando associações do Azure Web PubSub no Azure Functions.
| Ação | Tipo |
|---|---|
| Manipular eventos de cliente do Web PubSub | Associação de gatilho |
| Manipular eventos de cliente do Web PubSub com gatilho HTTP ou retornar URL e token de acesso do cliente | Associação de entrada |
| Invocar APIs de serviço | Associação de saída |
Instalar a extensão
O pacote NuGet da extensão instalado depende do modo C# usado no aplicativo de funções:
As funções são executadas em um processo de trabalho do C# isolado. Para saber mais, confira o Guia para executar C# do Azure Functions em um processo de trabalho isolado.
Adicione a extensão ao seu projeto instalando este pacote do NuGet.
Instalar pacote
Para poder usar essa extensão de associação em seu aplicativo, verifique se o arquivo host.json na raiz do projeto contém esta extensionBundle referência:
{
"version": "2.0",
"extensionBundle": {
"id": "Microsoft.Azure.Functions.ExtensionBundle",
"version": "[4.0.0, 5.0.0)"
}
}
Neste exemplo, o version valor instrui o host do [4.0.0, 5.0.0) Functions a usar uma versão de pacote pelo menos 4.0.0 menor que 5.0.0, que inclui todas as versões potenciais do 4.x. Essa notação mantém efetivamente seu aplicativo na versão secundária mais recente disponível do pacote de extensão v4.x.
Quando possível, você deve usar a versão principal do pacote de extensão mais recente e permitir que o runtime mantenha automaticamente a versão secundária mais recente. Você pode exibir o conteúdo do pacote mais recente na página de lançamento dos pacotes de extensão. Para obter mais informações, consulte os pacotes de extensão do Azure Functions.
Observação
As extensões Web PubSub para Java ainda não são suportadas.
Conceitos principais
(1)-(2) associação de entrada WebPubSubConnection com HttpTrigger para gerar conexão de cliente.
(3)-(4) associação de gatilho WebPubSubTrigger ou associação de entrada WebPubSubContext com HttpTrigger para manipular a solicitação de serviço.
(5)-(6) associação de saída WebPubSub para solicitar que o serviço faça algo.
Connection
Você pode usar a cadeia de conexão ou a identidade do Microsoft Entra para se conectar ao serviço Azure Web PubSub.
Cadeia de conexão
Por padrão, uma configuração de aplicativo chamada WebPubSubConnectionString é usada para armazenar a cadeia de conexão do Web PubSub. Ao optar por usar um nome de configuração diferente para sua conexão, você deve defini-lo explicitamente como o nome da chave em suas definições de associação. Durante o desenvolvimento local, você também deve adicionar essa configuração à Values coleção no arquivolocal.settings.json.
Importante
Uma cadeia de conexão inclui as informações de autorização necessárias para que o seu aplicativo acesse o serviço Azure Web PubSub. A chave de acesso dentro da cadeia de conexão é semelhante a uma senha raiz para o serviço. Para uma segurança ideal, seu aplicativo de funções deve usar identidades gerenciadas ao se conectar ao serviço Web PubSub em vez de usar uma cadeia de conexão.
Para obter detalhes sobre como configurar e usar o Web PubSub e o Azure Functions juntos, consulte Tutorial: Criar um aplicativo de notificação sem servidor com o Azure Functions e o serviço Azure Web PubSub.
Conexões baseadas em identidade
Se você estiver usando extensões do Azure Web PubSub Functions v1.10.0 ou superior, em vez de usar uma cadeia de conexão com uma chave de acesso, poderá configurar seu aplicativo de funções para autenticar no Azure Web PubSub usando uma identidade do Microsoft Entra.
Essa abordagem remove a necessidade de gerenciar segredos e é recomendada para cargas de trabalho de produção.
Pré-requisitos
Verifique se a identidade do Microsoft Entra usada pelo aplicativo de funções recebeu uma função RBAC apropriada do Azure no recurso de destino do Web PubSub:
Configuração
As conexões baseadas em identidade no Azure Functions usam um conjunto de configurações que compartilham um prefixo comum. Por padrão, as extensões do Azure Web PubSub Functions procuram configurações com o prefixo WebPubSubConnectionString. Você pode personalizar esse prefixo definindo a connection propriedade em seu gatilho ou associação.
Para o Azure Web PubSub, a configuração específica do serviço que você deve fornecer é o URI do ponto de extremidade de serviço:
| Propriedade | Modelo de variável de ambiente | Description | Obrigatório |
|---|---|---|---|
| URI de serviço | WebPubSubConnectionString__serviceUri |
O URI do ponto de extremidade de serviço do Web PubSub. | Yes |
Quando hospedadas no serviço de Azure Functions, as conexões baseadas em identidade usam uma identidade gerenciada. A identidade atribuída pelo sistema é usada por padrão, embora uma identidade atribuída pelo usuário possa ser especificada. Para obter mais informações sobre como personalizar a identidade, propriedades comuns para conexões baseadas em identidade.
Quando executado em outros contextos, como desenvolvimento local, a identidade do desenvolvedor é usada, embora isso possa ser personalizado. Confira Desenvolvimento local com conexões baseadas em identidade.
Configuração de exemplo
O exemplo a seguir mostra como definir a identidade com base nas configurações padrão:
{
"WebPubSubConnectionString__serviceUri": "https://your-webpubsub.webpubsub.azure.com"
}
Observação
Ao usar local.settings.json o arquivo no local, na Configuração de Aplicativos do Azure ou no Key Vault para fornecer configurações para conexões baseadas em identidade, substitua __ por : no nome da configuração para garantir que os nomes sejam resolvidos corretamente.
Por exemplo, WebPubSubConnectionString:serviceUri.