Autorizar o acesso aos recursos do Web PubSub usando o ID do Microsoft Entra
O Serviço Azure Web PubSub permite a autorização de solicitações para recursos do Azure Web PubSub utilizando a ID do Microsoft Entra.
Ao utilizar o controle de acesso baseado em função (RBAC) com o Microsoft Entra ID, as permissões podem ser concedidas a uma entidade de segurança[1]. O Microsoft Entra autoriza essa entidade de segurança e retorna um token OAuth 2.0, que os recursos do Web PubSub podem usar para autorizar uma solicitação.
O uso do Microsoft Entra ID para autorização de solicitações Web PubSub oferece maior segurança e facilidade de uso em comparação com a autorização da Chave de Acesso. A Microsoft recomenda utilizar a autorização do Microsoft Entra com recursos do Web PubSub quando possível para garantir o acesso com os privilégios mínimos necessários.
[1] Entidade de segurança: um grupo de utilizadores/recursos, uma aplicação ou uma entidade de serviço, tais como identidades atribuídas pelo sistema e identidades atribuídas pelo utilizador.
Visão geral do Microsoft Entra ID para Web PubSub
A autenticação é necessária para acessar um recurso Web PubSub ao usar o Microsoft Entra ID. Essa autenticação envolve duas etapas:
- Primeiro, o Azure autentica a entidade de segurança e emite um token OAuth 2.0.
- Em segundo lugar, o token é adicionado à solicitação para o recurso Web PubSub. O serviço Web PubSub usa o token para verificar se a entidade de serviço tem acesso ao recurso.
Autenticação do lado do cliente ao usar o Microsoft Entra ID
O servidor de negociação/aplicativo de função compartilha uma chave de acesso com o recurso Web PubSub, permitindo que o serviço Web PubSub autentique solicitações de conexão de cliente usando tokens de cliente gerados pela chave de acesso.
No entanto, a chave de acesso é frequentemente desativada ao usar o Microsoft Entra ID para melhorar a segurança.
Para resolver esse problema, desenvolvemos uma API REST que gera um token de cliente. Esse token pode ser usado para se conectar ao serviço Azure Web PubSub.
Para usar essa API, o servidor de negociação deve primeiro obter um Microsoft Entra Token do Azure para autenticar-se. O servidor pode então chamar a API Web PubSub Auth com o Microsoft Entra Token para recuperar um Token de Cliente. O Token de Cliente é retornado ao cliente, que pode usá-lo para se conectar ao serviço Azure Web PubSub.
Nós fornecemos funções auxiliares (por exemplo, 'GenerateClientAccessUri) para linguagens de programação suportadas.
Atribuir funções do Azure para direitos de acesso
O Microsoft Entra autoriza direitos de acesso a recursos protegidos por meio do controle de acesso baseado em função do Azure. O Azure Web PubSub define um conjunto de funções internas do Azure que englobam conjuntos comuns de permissões usadas para acessar recursos do Web PubSub. Você também pode definir funções personalizadas para acesso aos recursos do Web PubSub.
Âmbito do recurso
Antes de atribuir uma função RBAC do Azure a uma entidade de segurança, é importante identificar o nível apropriado de acesso que a entidade de segurança deve ter. Recomenda-se conceder a função com o escopo mais restrito possível. Os recursos localizados abaixo herdam funções do RBAC do Azure com escopos mais amplos.
Você pode definir o escopo de acesso aos recursos do Azure Web PubSub nos seguintes níveis, começando com o escopo mais restrito:
Um recurso individual.
Neste âmbito, uma atribuição de função aplica-se apenas ao recurso de destino.
Um grupo de recursos.
Neste âmbito, uma atribuição de função aplica-se a todos os recursos no grupo de recursos.
Uma assinatura.
Neste âmbito, uma atribuição de função aplica-se a todos os recursos em todos os grupos de recursos na subscrição.
Um grupo de gestão.
Neste âmbito, uma atribuição de função aplica-se a todos os recursos em todos os grupos de recursos em todas as subscrições no grupo de gestão.
Funções internas do Azure para recursos do Web PubSub
Web PubSub Service Owner
Acesso total a permissões de plano de dados, incluindo APIs REST de leitura/gravação e APIs de autenticação.
Essa função é a mais comum usada para criar um servidor upstream.
Web PubSub Service Reader
Use para conceder permissões de APIs REST somente leitura para recursos Web PubSub.
Ele é usado quando você deseja escrever uma ferramenta de monitoramento que chame SOMENTE APIs REST do plano de dados Web PubSub READONLY REST.
Próximos passos
Para saber como criar um aplicativo do Azure e usar a autorização do Microsoft Entra, consulte
Para saber como configurar uma identidade gerenciada e usar o Microsoft Entra auth, consulte
Para saber mais sobre funções e atribuições de funções, consulte
Para saber como criar funções personalizadas, consulte
Para saber como usar apenas a autorização do Microsoft Entra, consulte