Аутентификация и авторизация в служебной шине

Существует два способа проверки подлинности и авторизации доступа к ресурсам Служебной шины Azure:

  • Microsoft Entra ID
  • Подписанные URL-адреса (SAS).

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

Microsoft Entra ID

Интеграция Microsoft Entra с служебная шина обеспечивает управление доступом на основе ролей (RBAC) для служебная шина ресурсов. Azure RBAC можно использовать для предоставления разрешений субъекту безопасности, который может быть пользователем, группой, субъектом-службой приложений или управляемым удостоверением. Microsoft Entra проверяет подлинность субъекта безопасности и возвращает маркер OAuth 2.0. Этот маркер можно использовать для авторизации запроса на доступ к ресурсу служебная шина (очередь, раздел и т. д.).

Дополнительные сведения о проверке подлинности с помощью идентификатора Microsoft Entra см. в следующих статьях:

Примечание.

служебная шина REST API поддерживает проверку подлинности OAuth с идентификатором Microsoft Entra.

Внимание

Авторизация пользователей или приложений с помощью маркера OAuth 2.0, возвращаемого идентификатором Microsoft Entra, обеспечивает более высокую безопасность и простоту использования через подписанные URL-адреса (SAS). С идентификатором Microsoft Entra не требуется хранить маркеры в коде и риск потенциальных уязвимостей безопасности. Мы рекомендуем использовать идентификатор Microsoft Entra с приложениями Служебная шина Azure, когда это возможно.

Вы можете отключить локальную или SAS-проверку подлинности для пространства имен служебная шина и разрешить только проверку подлинности Microsoft Entra. Пошаговые инструкции см. в разделе Отключение локальной проверки подлинности.

Подписанный URL-адрес

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

Ключи для SAS можно настроить в пространстве имен служебной шины. Ключ применяется ко всем сущностям обмена сообщениями в пределах этого пространства имен. Также можно настроить ключи для очередей и разделов служебной шины. Чтобы использовать SAS, в пространстве имен, очереди или разделе можно настроить правило авторизации общего доступа. Это правило состоит из трех элементов:

  • KeyName — определяет правило.
  • PrimaryKey — криптографический ключ, используемый для подписи и проверки маркеров SAS.
  • SecondaryKey — криптографический ключ, используемый для подписи и проверки маркеров SAS.
  • Rights — набор прав Listen (Прослушивание), Send (Отправка) или Manage (Управление).

Правила авторизации, настроенные на уровне пространства имен, могут предоставлять доступ ко всем сущностям в пространстве имен для клиентов с маркерами, подписанными с использованием соответствующего ключа. В пространстве имен, очереди или разделе служебной шины можно настроить до 12 таких правил авторизации. По умолчанию правило авторизации общего доступа со всеми правами нAstraивается для каждого пространства имен в ходе первоначальной подготовки.

Чтобы получить доступ к сущности, клиенту требуется маркер SAS, созданный с помощью определенного правила авторизации общего доступа. Маркер SAS создается с помощью хэш-функции HMAC-SHA256 строки ресурса, состоящей из URI ресурса, к которому запрашивается доступ, и срока действия с криптографическим ключом, связанным с правилом авторизации.

Поддержка проверки подлинности SAS для служебной шины включена в пакет Azure SDK для .NET 2.0 и более поздних версий. SAS включает в себя поддержку правила авторизации общего доступа. Все интерфейсы API, которые принимают строку подключения в качестве параметра, поддерживают строки подключения SAS.

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

Дополнительные сведения о проверке подлинности с помощью идентификатора Microsoft Entra см. в следующих статьях:

Дополнительные сведения о проверке подлинности с использованием SAS приводятся в следующих статьях: