Примечание.
Для доступа к этой странице требуется авторизация. Вы можете попробовать войти или изменить каталоги.
Для доступа к этой странице требуется авторизация. Вы можете попробовать изменить каталоги.
Обзор
В этом разделе описывается модель безопасности Azure Notification Hubs.
Безопасность с использованием Подписи общего доступа (SAS)
Центры уведомлений реализуют схему безопасности уровня сущности, называемую подписью общего доступа (SAS). Каждое правило содержит имя, значение ключа (общий секрет) и набор прав, как описано далее в утверждениях безопасности.
При создании концентратора автоматически создаются два правила: один с правами прослушивания (используется клиентское приложение) и один со всеми правами (используется серверной частью приложения):
- DefaultListenSharedAccessSignature: предоставляет только разрешение прослушивания .
- DefaultFullSharedAccessSignature: предоставляет разрешения прослушивания, управления и отправки . Эта политика используется только в серверной части приложения. Не используйте его в клиентских приложениях; используйте политику настройки только с доступом прослушивания. Чтобы создать новую настраиваемую политику доступа с новым маркером SAS, ознакомьтесь с маркерами SAS для политик доступа далее в этой статье.
При управлении регистрациями из клиентских приложений, если данные, отправляемые посредством уведомлений, не являются конфиденциальными (например, новости погоды), то обычный способ доступа к Центру уведомлений состоит в передаче значения ключа для правила "Доступ только для прослушивания" в клиентское приложение, а также передаче значения ключа для правила "Полный доступ" в серверную часть приложения.
Приложения не должны внедрять значение ключа в клиентские приложения магазина Windows. Вместо этого клиентское приложение извлекает его из серверной части приложения при запуске.
Ключ с доступом прослушивания позволяет клиентскому приложению зарегистрировать любой тег. Если возможности регистрации в приложении нужно ограничить определенными тегами для определенных клиентов (например, когда теги отражают идентификаторы пользователей), то такую регистрацию должна проводить серверная часть. Дополнительные сведения см. в разделе "Управление регистрацией". Обратите внимание, что в этом случае клиентское приложение не имеет прямого доступа к Центрам уведомлений.
Утверждения безопасности
Аналогично другим сущностям, операции Notification Hub разрешены для трех утверждений безопасности: прослушивания, отправки и управления.
| Утверждение | Описание | Разрешенные операции |
|---|---|---|
| Слушайте | Создание, обновление, чтение и удаление отдельных регистраций | Создание и обновление регистрации Чтение регистрации Чтение всех регистраций для обработки Удалить регистрацию |
| Отправить | Отправка сообщений в Центр уведомлений | Отправить сообщение |
| Управление | Операции CRUD в Центрах уведомлений (включая обновление учетных данных PNS и ключей безопасности) и чтение регистраций на основе тегов | Создать, обновить, прочитать и удалить хабы Чтение регистраций по тегу |
Центры уведомлений принимают маркеры SAS, созданные с помощью общих ключей, сконфигурированных непосредственно в концентраторе.
Отправить уведомление более чем одному пространству имен нельзя. Пространства имен — это логические контейнеры для Notification Hubs и не участвуют в отправке уведомлений.
Используйте политики доступа на уровне пространства имен (учетные данные) для операций уровня пространства имен (таких как перечисление концентраторов, создание или удаление концентраторов и т. д.). Отправлять уведомления позволяют только политики доступа на уровне концентратора.
Маркеры SAS для политик доступа
Чтобы создать утверждение безопасности или просмотреть существующие ключи SAS, выполните указанные ниже действия.
- Войдите на портал Azure.
- Выберите все ресурсы.
- Выберите имя Центра уведомлений, для которого требуется создать утверждение или просмотреть ключ SAS.
- В меню слева выберите "Политики доступа".
- Выберите новую политику , чтобы создать новое утверждение безопасности. Присвойте политике имя и выберите разрешения, которые хотите предоставить. Затем нажмите кнопку "ОК".
- Полная строка подключения (включая новый ключ SAS) отображается в окне Политики доступа. Эту строку можно скопировать в буфер обмена для дальнейшего использования.
Чтобы извлечь ключ SAS из определенной политики, нажмите кнопку "Копировать " рядом с политикой, содержащей нужный ключ SAS. Вставьте это значение во временное расположение, затем скопируйте часть ключа SAS из строки подключения. В этом примере используется пространство имен Центров уведомлений mytestnamespace1 и политика policy2. Ключ SAS — это значение в конце строки, указанное SharedAccessKey:
Endpoint=sb://mytestnamespace1.servicebus.windows.net/;SharedAccessKeyName=policy2;SharedAccessKey=<SAS key value here>