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