Condividi tramite


Gruppi di client

I gruppi client consentono di raggruppare un set di client in base alle comunità. Lo scopo principale dei gruppi client è quello di semplificare la configurazione dell'autorizzazione. È possibile autorizzare un gruppo client a pubblicare o sottoscrivere uno spazio di argomenti. Tutti i client nel gruppo di client sono autorizzati a eseguire l'azione di pubblicazione o sottoscrizione nello spazio dei temi.

In un namespace, forniamo un gruppo client predefinito denominato "$all". Il gruppo client include tutti i client all'interno dello spazio dei nomi. Per semplificare i test, è possibile usare $all per configurare le autorizzazioni.

Nota

  • Il nome del gruppo client può essere lungo 3-50 caratteri
  • Il nome del gruppo client può includere caratteri alfanumerici, trattini (-) e, senza spazi
  • Il nome del gruppo client deve essere univoco per ogni spazio dei nomi
  • $all è il gruppo client predefinito che include tutti i client nello spazio dei nomi. Questo gruppo non può essere modificato o eliminato

Considerazioni sul gruppo cliente

È consigliabile mantenere la quantità di gruppi client di piccole dimensioni per rendere gestibili le autorizzazioni.

Attualmente, è supportato un massimo di 10 gruppi client per spazio dei nomi.

Durante il raggruppamento dei client, assicurarsi che sia più semplice riutilizzare il gruppo per pubblicare e sottoscrivere su più topic. A questo scopo, è importante considerare gli scenari end-to-end per identificare gli argomenti a cui ogni client pubblica o sottoscrive.

È consigliabile identificare le somiglianze tra gli scenari, per evitare l'eccessiva frammentazione dei gruppi di clienti e degli ambiti tematici. Impostare gli attributi client abbastanza generici per ottenere un raggruppamento semplice ed evitare query di gruppo estremamente complesse.

Come creare query di gruppo clienti?

Per configurare un gruppo client, è necessario compilare una query che filtra un set di client in base ai valori degli attributi.

Di seguito vengono fornite alcune query di esempio:

  • (attributes.sensors = "movimento" o attributes.sensors = "umidità") o attributes.type = "sensori-domestici"
  • attributes.sensors CONTENUTO IN ["motion", "humidity", "temperature"] e attributes.floor <= 5
  • authenticationName IN ['client1', 'client2']

Nelle query di gruppo sono consentiti gli operandi seguenti:

  • Operatore di uguaglianza "="
  • Parentesi "()" per raggruppare le espressioni per controllare l'ordine delle operazioni
  • Gli operatori logici "and" , "or" , "and" hanno una precedenza superiore a "or"
  • Operatore diverso da uguale in due forme "<>" e "!="
  • Minore di "<", maggiore di ">", minore di uguale a "<=", maggiore di uguale a ">=" per i valori long integer
  • "IN" da confrontare con un set di valori

Schema del gruppo client di esempio

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

Configurazione del portale di Azure

Usare la procedura seguente per creare un gruppo client:

  1. Vai al namespace nel portale di Azure

  2. In Gruppi client selezionare + Gruppo client.

    Screenshot dell'aggiunta di un gruppo cliente.

  3. Aggiungere una query del gruppo di clienti.

    Screenshot della configurazione del gruppo client.

  4. Selezionare Crea.

Configurazione dell'interfaccia della riga di comando di Azure

Usare i comandi seguenti per creare/visualizzare/eliminare un gruppo client

Creare un gruppo client

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

Recuperare il gruppo client

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

Eliminare un gruppo client

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

Passaggi successivi