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:
Vá para seu namespace no portal do Azure
Em Grupos de clientes, selecione + Grupo de clientes.
Adicionar consulta de grupo de clientes.
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
- Saiba mais sobre espaços temáticos