Compartilhar via


Grupos de clientes

Os grupos de clientes permitem agrupar um conjunto de clientes com base em semelhanças. A finalidade principais dos grupos de clientes é facilitar a configuração da autorização. Você pode autorizar um grupo de clientes para a publicação ou a assinatura em um espaço de tópico. Todos os clientes do grupo de clientes estão autorizados a executar a ação de publicação ou assinatura no espaço de tópico.

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

Observação

  • O nome do grupo de clientes pode ter entre 3 e 50 caracteres
  • Ele pode incluir caracteres alfanuméricos, hífen (-) e não pode conter espaços
  • Também precisa ser exclusivo por namespace
  • $all é o grupo de clientes padrão que inclui todos os clientes do namespace. Esse grupo não pode ser editado nem excluído

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, há suporte para, no máximo, dez grupos de clientes por namespace.

Ao agrupar clientes, verifique se é mais fácil reutilizar o grupo para publicação e assinatura 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 faz publicações ou assinaturas.

Recomendamos identificar as semelhanças entre os cenários, a fim de evitar a fragmentação excessiva de grupos de clientes e espaços de tópicos. Defina os atributos de cliente de maneira genérica o suficiente para obter 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 nos valores de atributo.

Estes são alguns exemplos de consultas:

  • (attributes.sensors = "motion" ou attributes.sensors = "humidity") ou attributes.type = "home-sensors"
  • attributes.sensors IN ["motion", "humidity", "temperature"] 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 "and", "or","and" têm precedência maior que "ou"
  • Operador Não é igual em duas formas "<>" e "!="
  • Menor que "<", maior que ">", menor que e igual a "<=", maior que e igual a ">=" para valores inteiros longos
  • "IN" para comparação com um conjunto de valores

Exemplo de esquema de grupo de clientes

{
  "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. Acessar seu namespace no portal do Azure

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

    Captura de tela da adição de um grupo de clientes.

  3. Adicione a consulta do grupo de clientes.

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

  4. Escolha Criar

Configuração da CLI do Azure

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

Criar um grupo de clientes

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

Obter um grupo de clientes

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

Excluir um grupo de clientes

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

Próximas etapas