Группы клиентов
Группы клиентов позволяют группировать набор клиентов вместе на основе общих особенностей. Основная цель групп клиентов — упростить настройку авторизации. Вы можете авторизовать группу клиентов для публикации или подписки на пространство тем. Все клиенты в группе клиентов уполномочены выполнять действие публикации или подписки на пространство тем.
В пространстве имен мы предоставляем группу клиентов по умолчанию с именем "$all". Группа клиентов включает все клиенты в пространстве имен. Чтобы упростить тестирование, можно использовать $all для настройки разрешений.
Примечание.
- Имя группы клиента может иметь длину 3–50 символов.
- Имя группы клиентов может включать буквенно-цифровые буквы, дефис(-) и без пробелов
- Имя группы клиентов должно быть уникальным для каждого пространства имен.
$all
— это группа клиентов по умолчанию, которая включает все клиенты в пространстве имен. Эта группа не может быть изменена или удалена
Рекомендации по группам клиентов
Количество групп клиентов должно быть небольшим, чтобы сделать разрешения управляемыми.
В настоящее время не более 10 клиентских групп на каждое пространство имен, как поддерживается.
При группировке клиентов убедитесь, что группирование клиентов проще повторно использовать группу для публикации и подписки в нескольких разделах. Для этого важно продумать комплексные сценарии, чтобы определить темы, на которые каждый клиент публикует или подписывается.
Мы рекомендуем определить общие особенности в сценариях, чтобы избежать фрагментации групп клиентов и пространств тем. Задайте универсальные атрибуты клиента, чтобы обеспечить простую группирование и избежать сложных запросов групп.
Как создать запросы группы клиентов?
Чтобы настроить группу клиентов, необходимо создать запрос, который фильтрует набор клиентов на основе их значений атрибутов.
Ниже приведены несколько примеров запросов:
- (attributes.sensor = "движение" или атрибуты.датчики = "влажность") или attributes.type = "home-sensor"
- attributes.sensor IN ["движение", "влажность", "температура"] и attributes.floor <= 5
- authenticationName IN ['client1', 'client2']
В групповых запросах разрешены следующие операнды:
- Оператор равенства "="
- Круглые скобки "()" для группирования выражений для управления порядком операций
- Логические операторы "and", "or" и "и" имеют более высокий приоритет, чем "или"
- Не равный оператор в двух формах "" и "<>!="
- <Меньше "", больше> ", меньше", меньше<", чем "=", больше", чем ">=" для длинных целочисленных значений
- "IN" для сравнения с набором значений
Пример схемы группы клиентов
{
"properties": {
"description": "Description of client group",
"query": "attributes.b IN ['a', 'b', 'c']"
}
}
Настройка портала Azure
Чтобы создать группу клиентов, выполните следующие действия.
Перейдите в пространство имен в портал Azure
В разделе "Группы клиентов" выберите +Группа клиентов.
Добавьте запрос группы клиентов.
Нажмите кнопку Создать
Настройка Azure CLI
Используйте следующие команды, чтобы создать или показать или удалить группу клиентов.
Создание группы клиентов
az eventgrid namespace client-group create -g myRG --namespace-name myNS -n myCG
Получение группы клиентов
az eventgrid namespace client-group show -g myRG --namespace-name myNS -n myCG
Удаление группы клиентов
az eventgrid namespace client-group delete -g myRG --namespace-name myNS -n myCG
Следующие шаги
- Сведения о пространствах разделов