Grupy klientów
Grupy klientów umożliwiają grupowanie zestawu klientów na podstawie wspólnych warunków. Głównym celem grup klientów jest ułatwienie konfigurowania autoryzacji. Możesz autoryzować grupę klientów do publikowania lub subskrybowania obszaru tematu. Wszyscy klienci w grupie klienta mają uprawnienia do wykonywania akcji publikowania lub subskrybowania w obszarze tematu.
W przestrzeni nazw udostępniamy domyślną grupę klienta o nazwie "$all". Grupa klientów zawiera wszystkich klientów w przestrzeni nazw. W celu ułatwienia testowania można użyć $all do skonfigurowania uprawnień.
Uwaga
- Nazwa grupy klienta może mieć długość od 3 do 50 znaków
- Nazwa grupy klienta może zawierać alfanumeryczne, łączniki(-) i bez spacji
- Nazwa grupy klienta musi być unikatowa dla przestrzeni nazw
$all
to domyślna grupa klientów, która zawiera wszystkich klientów w przestrzeni nazw. Nie można edytować ani usuwać tej grupy
Zagadnienia dotyczące grupy klientów
Należy zachować małą liczbę grup klientów, aby umożliwić zarządzanie uprawnieniami.
Obecnie obsługiwanych jest maksymalnie 10 grup klientów na przestrzeń nazw.
Podczas grupowania klientów upewnij się, że łatwiej jest użyć grupy do publikowania i subskrybowania w wielu miejscach tematów. W tym celu ważne jest, aby zapoznać się ze scenariuszami kompleksowego identyfikowania tematów publikowanych lub subskrybowanych przez każdego klienta.
Zalecamy zidentyfikowanie wspólnych cech w scenariuszach, aby uniknąć fragmentacji grup klientów i przestrzeni tematów. Ustaw atrybuty klienta wystarczająco ogólne, aby osiągnąć proste grupowanie i uniknąć wysoce złożonych zapytań grupy.
Jak tworzyć zapytania grupy klientów?
Aby skonfigurować grupę klientów, należy utworzyć zapytanie, które filtruje zestaw klientów na podstawie ich wartości atrybutów.
Oto kilka przykładowych zapytań:
- (attributes.sensors = "motion" lub attributes.sensors = "wilgotność") lub attributes.type = "home-sensors"
- attributes.sensors IN ["motion", "humidity", "temperature"] i attributes.floor <= 5
- authenticationName IN ['client1', 'client2']
W zapytaniach grupowych dozwolone są następujące operandy:
- Operator równości "="
- Nawiasy "()" do grupowania wyrażeń w celu kontrolowania kolejności operacji
- Operatory logiczne "i" , "lub" i mają wyższy priorytet niż "lub"
- Nie równa się operatorowi w dwóch formach "<>" i "!="
- Mniejsze niż "<", większe niż ">", mniejsze niż "<=", większe niż ">=" dla długich wartości całkowitych
- "IN", aby porównać z zestawem wartości
Przykładowy schemat grupy klientów
{
"properties": {
"description": "Description of client group",
"query": "attributes.b IN ['a', 'b', 'c']"
}
}
Konfiguracja witryny Azure Portal
Aby utworzyć grupę klientów, wykonaj następujące kroki:
Przejdź do przestrzeni nazw w witrynie Azure Portal
W obszarze Grupy klientów wybierz pozycję + Grupa klientów.
Dodaj zapytanie grupy klientów.
Wybierz pozycję Utwórz
Konfiguracja interfejsu wiersza polecenia platformy Azure
Użyj następujących poleceń, aby utworzyć/pokazać/usunąć grupę klientów
Tworzenie grupy klientów
az eventgrid namespace client-group create -g myRG --namespace-name myNS -n myCG
Pobieranie grupy klientów
az eventgrid namespace client-group show -g myRG --namespace-name myNS -n myCG
Usuwanie grupy klientów
az eventgrid namespace client-group delete -g myRG --namespace-name myNS -n myCG
Następne kroki
- Dowiedz się więcej o przestrzeniach tematów