Поделиться через


Безопасность Центров уведомлений

Обзор

В этой статье описывается модель безопасности Центров уведомлений Azure.

Безопасность на базе подписанного URL-адреса (SAS)

Центры уведомлений реализуют схему безопасности на уровне сущностей под названием SAS (подписанный URL-адрес). Каждое правило содержит имя, значение ключа (общий секрет) и набор прав, как описано в далее разделе Утверждения безопасности.

При создании центра автоматически создаются два правила: одно с правами прослушивания (используется клиентским приложением), а другое — со всеми правами (используется серверной частью приложения).

  • DefaultListenSharedAccessSignature: предоставляет разрешение только на прослушивание.
  • DefaultFullSharedAccessSignature: предоставляет разрешения на прослушивание, управлениеи отправку. Эта политика используется только в серверной части приложения. Не используйте ее в клиентских приложениях; вместо этого применяйте политику с доступом только для прослушивания. Сведения о создании настраиваемой политики доступа с помощью нового маркера SAS см. в разделе Маркеры SAS для политик доступа далее в этой статье.

При управлении регистрациями из клиентских приложений, если данные, отправляемые посредством уведомлений, не являются конфиденциальными (например, новости погоды), то обычный способ доступа к Центру уведомлений состоит в передаче значения ключа для правила "Доступ только для прослушивания" в клиентское приложение, а также передаче значения ключа для правила "Полный доступ" в серверную часть приложения.

Значение ключа не следует внедрять в клиентские приложения Магазина Windows; они могут извлекать это значение из своей серверной части при запуске.

Ключ с доступом на прослушивание позволяет клиентскому приложению регистрироваться на любой тег. Если возможности регистрации в приложении нужно ограничить определенными тегами для определенных клиентов (например, когда теги отражают идентификаторы пользователей), то такую регистрацию должна проводить серверная часть. Дополнительные сведения см. в разделе об управлении регистрацией. в статье "Управление регистрациями" Обратите внимание, что в этом случае клиентское приложение не имеет прямого доступа к Центрам уведомлений.

Утверждения безопасности

Аналогично другим сущностям для операций Центра уведомлений разрешены три типа утверждений безопасности: прослушивание, отправка и управление.

Утверждение Description Разрешенные операции
Прослушивание Создание, обновление, чтение и удаление отдельных регистраций Создание и обновление регистрации

Чтение регистрации

Чтение всех регистраций для обработки

Регистрация удаления
Отправить Отправка сообщений в Центр уведомлений Send message
Управление Операции CRUD в Центрах уведомлений (включая обновление учетных данных PNS и ключей безопасности) и чтение регистраций на основе тегов Создание, обновление, чтение и удаление концентраторов

Чтение регистраций по тегу

Центры уведомлений принимают маркеры SAS, созданные с помощью общих ключей, которые настроены непосредственно в концентраторе.

Отправить уведомление более чем одному пространству имен нельзя. Пространства имен — это логические контейнеры для Центров уведомлений, которые не участвуют в отправке уведомлений.

Используйте политики доступа на уровне пространства имен (учетные данные) для операций уровня пространства имен (таких как перечисление концентраторов, создание или удаление концентраторов и т. д.). Отправлять уведомления позволяют только политики доступа на уровне концентратора.

Маркеры SAS для политик доступа

Чтобы создать утверждение безопасности или просмотреть существующие ключи SAS, выполните указанные ниже действия.

  1. Войдите на портал Azure.
  2. Выберите Все ресурсы.
  3. Выберите имя Центра уведомлений, для которого требуется создать утверждение или просмотреть ключ SAS.
  4. В меню слева выберите пункт Политики доступа.
  5. Выберите Создать политику, чтобы создать новое утверждение безопасности. Присвойте политике имя и выберите разрешения, которые хотите предоставить. Затем выберите OK.
  6. В окне политики доступа отобразится полная строка подключения (включая новый ключ SAS). Эту строку можно скопировать в буфер обмена для дальнейшего использования.

Чтобы извлечь ключ SAS из определенной политики, нажмите кнопку Копировать рядом с политикой, содержащей необходимый вам ключ SAS. Вставьте это значение во временное расположение, а затем скопируйте часть ключа SAS из строки подключения. В этом примере используется пространство имен Центров уведомлений с именем mytestnamespace1 и политика с именем policy2. Ключ SAS — это значение в конце строки, задаваемое параметром SharedAccessKey:

Endpoint=sb://mytestnamespace1.servicebus.windows.net/;SharedAccessKeyName=policy2;SharedAccessKey=<SAS key value here>

Получение ключей SAS

Следующие шаги