Partilhar via


Grupos de clientes

Os grupos de clientes permitem agrupar um conjunto de clientes com base em pontos em comum. O principal objetivo dos grupos de clientes é facilitar a configuração da autorização. Você pode autorizar um grupo de clientes a publicar ou assinar um espaço de tópico. Todos os clientes no grupo de clientes estão autorizados a executar a ação de publicação ou assinatura no espaço do tópico.

Em um namespace, fornecemos um grupo de clientes padrão chamado "$all". O grupo de clientes inclui todos os clientes no namespace. Para facilitar os testes, você pode usar $all para configurar permissões.

Nota

  • O nome do grupo de clientes pode ter de 3 a 50 caracteres
  • O nome do grupo de clientes pode incluir alfanumérico, hífen(-) e, sem espaços
  • O nome do grupo de clientes precisa ser exclusivo por namespace
  • $all é o grupo de clientes padrão que inclui todos os clientes no namespace. Este grupo não pode ser editado ou eliminado

Considerações sobre o grupo de clientes

Você deve manter a quantidade de grupos de clientes pequena para tornar as permissões gerenciáveis.

Atualmente, um máximo de 10 grupos de clientes por namespace, conforme suportado.

Ao agrupar clientes, certifique-se de que é mais fácil reutilizar o grupo para publicar e subscrever em vários espaços de tópicos. Para isso, é importante pensar nos cenários de ponta a ponta para identificar os tópicos que cada cliente publica ou assina.

Recomendamos identificar as semelhanças entre os cenários, para evitar a fragmentação excessiva de grupos de clientes e espaços de tópicos. Defina os atributos do cliente genéricos o suficiente para obter um agrupamento simples e evitar consultas de grupo altamente complexas.

Como criar consultas de grupo de clientes?

Para configurar um grupo de clientes, você precisa criar uma consulta que filtre um conjunto de clientes com base em seus valores de atributo.

Aqui estão alguns exemplos de consultas:

  • (attributes.sensors = "movimento" ou attributes.sensors = "humidade") ou attributes.type = "home-sensors"
  • attributes.sensors IN ["movimento", "humidade", "temperatura"] e attributes.floor <= 5
  • authenticationName IN ['client1', 'client2']

Em consultas de grupo, os seguintes operandos são permitidos:

  • Operador de igualdade "="
  • Parênteses "()" para agrupar expressões para controlar a ordem das operações
  • Os operadores lógicos "e" , "ou" , "e" tem maior precedência do que "ou"
  • Operador não igual em duas formas "<>" e "!="
  • Menor que "<", maior que ">", menor que igual a "<=", maior que igual a ">=" para valores inteiros longos
  • "IN" para comparar com um conjunto de valores

Esquema de grupo de clientes de exemplo

{
  "properties": {
    "description": "Description of client group",
    "query": "attributes.b IN ['a', 'b', 'c']"
  }
}

Configuração do portal do Azure

Use as seguintes etapas para criar um grupo de clientes:

  1. Vá para seu namespace no portal do Azure

  2. Em Grupos de clientes, selecione + Grupo de clientes.

    Captura de ecrã a mostrar a adição de um grupo de clientes.

  3. Adicionar consulta de grupo de clientes.

    Captura de tela da configuração do grupo de clientes.

  4. Selecione Criar

Configuração da CLI do Azure

Use os seguintes comandos para criar/mostrar/excluir um grupo de clientes

Criar grupo de clientes

az eventgrid namespace client-group create -g myRG --namespace-name myNS -n myCG 

Obter grupo de clientes

az eventgrid namespace client-group show -g myRG --namespace-name myNS -n myCG

Excluir grupo de clientes

az eventgrid namespace client-group delete -g myRG --namespace-name myNS -n myCG

Próximos passos