Autorizar o acesso aos recursos do Web PubSub usando o Microsoft Entra ID
O serviço Azure Web PubSub permite a autorização de solicitações para recursos do Azure Web PubSub utilizando o Microsoft Entra ID.
Utilizando 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 esta 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 do Web PubSub oferece maior segurança e facilidade de uso em comparação com a autorização de 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 usuário/grupo de recursos, um aplicativo ou uma entidade de serviço, como identidades atribuídas pelo sistema e identidades atribuídas pelo usuário.
Visão geral do Microsoft Entra ID para Web PubSub
A autenticação é necessária para acessar um recurso do 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 ao recurso do 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ções compartilha uma chave de acesso com o recurso do Web PubSub, permitindo que o serviço Web PubSub autentique solicitações de conexão do cliente usando tokens de cliente gerados pela chave de acesso.
No entanto, a chave de acesso geralmente é desabilitada 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 Token do Microsoft Entra do Azure para se autenticar. Em seguida, o servidor pode chamar a API de Autenticação do Web PubSub com o Token do Microsoft Entra para recuperar um Token de cliente. Em seguida, o Token do cliente é retornado ao cliente, que pode usá-lo para se conectar ao serviço Azure Web PubSub.
Fornecemos funções auxiliares (por exemplo, ' GenerateClientAccessUri) para linguagens de programação com suporte.
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 abrangem conjuntos comuns de permissões usados para acessar recursos do Web Pubsub. Você também pode definir funções personalizadas para acesso aos recursos do Web Pubsub.
Escopo 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. É recomendável conceder a função com o escopo mais estreito possível. Os recursos localizados abaixo herdam funções RBAC do Azure com escopos mais amplos.
Você pode definir o escopo do acesso aos recursos do Azure Web PubSub nos seguintes níveis, começando com o escopo mais estreito:
Um recurso individual.
Nesse escopo, uma atribuição de função se aplica somente ao recurso de destino.
Um grupo de recursos.
Nesse escopo, uma atribuição de função é aplicada a todo os recursos do grupo de recursos.
Uma assinatura.
Nesse escopo, uma atribuição de função é aplicada a todos os recursos em todos os grupos de recursos na assinatura.
Um grupo de gerenciamento.
Nesse escopo, uma atribuição de função é aplicada a todos os recursos em todos os grupos de recursos de todas as assinaturas no grupo de gerenciamento.
Funções internas do Azure para recursos do Web PubSub
Web PubSub Service Owner
Acesso completo a permissões de plano de dados, incluindo APIs REST de leitura/gravação e APIs de autenticação.
Esta função é a mais comum usada para a criação de um servidor upstream.
Web PubSub Service Reader
Use para conceder permissões de APIs REST somente leitura a recursos de Web PubSub.
Ele é usado quando você deseja escrever uma ferramenta de monitoramento que chama SOMENTE APIs REST READONLY do plano de dados do Web PubSub.
Próximas etapas
Para saber como criar um aplicativo do Azure e usar a autorização do Microsoft Entra, confira
Para saber como configurar uma identidade gerenciada e usar a autenticação do Microsoft Entra, confira
Para saber mais sobre funções e atribuições de função, confira
Para saber como criar funções personalizadas, consulte
Para saber como usar somente a autorização do Microsoft Entra, confira