Partilhar via


Autenticação JWT do Microsoft Entra e autorização do Azure RBAC para publicar ou assinar mensagens MQTT

Você pode autenticar clientes MQTT com o Microsoft Entra JWT para se conectar ao namespace Event Grid. Você pode usar o controle de acesso baseado em função do Azure (Azure RBAC) para permitir que clientes MQTT, com a identidade Microsoft Entra, publiquem ou assinem o acesso a espaços de tópicos específicos.

Importante

  • Este recurso é suportado somente ao usar a versão do protocolo MQTT v5
  • A autenticação JWT é suportada apenas para Identidades Gerenciadas e Entidades de Serviço

Pré-requisitos

Autenticação usando o Microsoft Entra JWT

Você pode usar o pacote MQTT v5 CONNECT para fornecer o token Microsoft Entra JWT para autenticar seu cliente e pode usar o pacote MQTT v5 AUTH para atualizar o token.

No pacote CONNECT, você pode fornecer os valores necessários nos seguintes campos:

Campo valor
Método de autenticação OAUTH2-JWT
Dados de autenticação Token JWT

No pacote AUTH, você pode fornecer os valores necessários nos seguintes campos:

Campo valor
Método de autenticação OAUTH2-JWT
Dados de autenticação Token JWT
Código de motivo de autenticação 25

Autenticar código de motivo com o valor 25 significa reautenticação.

Nota

  • Audiência: a reivindicação "aud" deve ser definida como "https://eventgrid.azure.net/".

Autorização para conceder permissões de acesso

Um cliente que usa a autenticação JWT baseada em ID do Microsoft Entra precisa ser autorizado a se comunicar com o namespace Event Grid. Você pode atribuir as duas funções internas a seguir para fornecer permissões de publicação ou assinatura a clientes com identidades do Microsoft Entra.

  • Use a função Publicador EventGrid TopicSpaces para fornecer acesso ao editor de mensagens MQTT
  • Use a função de assinante EventGrid TopicSpaces para fornecer acesso de assinante de mensagem MQTT

Você pode usar essas funções para fornecer permissões na assinatura, no grupo de recursos, no namespace da Grade de Eventos ou no escopo do espaço de tópicos da Grade de Eventos.

Atribuindo a função de editor à sua identidade do Microsoft Entra no escopo do topicspace

  1. No portal do Azure, navegue até o namespace da Grade de Eventos
  2. Navegue até o espaço de tópico ao qual você deseja autorizar o acesso.
  3. Vá para a página Controle de acesso (IAM) do topicspace
  4. Selecione o separador Atribuições de funções para ver as atribuições de funções neste âmbito.
  5. Selecione + Adicionar e Adicionar atribuição de função.
  6. Na guia Função, selecione a função "Event Grid TopicSpaces Publisher".
  7. Na guia Membros, para Atribuir acesso a, selecione a opção Usuário, grupo ou entidade de serviço para atribuir a função selecionada a uma ou mais entidades de serviço (aplicativos).
  8. Selecione + Selecionar membros.
  9. Localize e selecione as entidades de serviço.
  10. Selecione Seguinte
  11. Selecione Rever + atribuir no separador Rever + atribuir.

Nota

Você pode seguir etapas semelhantes para atribuir a função interna de Assinante TopicSpaces do EventGrid no escopo do topicspace.

Próximos passos