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


Создание правила авторизации Служебной шины для пространства имен и очереди с помощью шаблона Azure Resource Manager

В этой статье показывается, как использовать шаблон Azure Resource Manager, который создает правило авторизации для пространства имен и очереди служебной шины. Здесь объясняется, как указать развертываемые ресурсы и определить параметры, указываемые при развертывании. Этот шаблон можно использовать для собственных развертываний или настроить его в соответствии с вашими требованиями.

Дополнительные сведения о создании шаблонов см. в статье Создание шаблонов Azure Resource Manager.

Полный шаблон приведен в разделе Service Bus authorization rule template (Шаблон правила аутентификации для служебной шины) на сайте GitHub.

Примечание.

Для скачивания и развертывания можно использовать указанные ниже шаблоны диспетчера ресурсов Azure.

Чтобы узнать о новых шаблонах, в коллекции шаблонов быстрого запуска Azure выполните поиск по фразе служебная шина.

Примечание.

Мы рекомендуем использовать модуль Azure Az PowerShell для взаимодействия с Azure. Сведения о начале работы см. в статье "Установка Azure PowerShell". Дополнительные сведения см. в статье Перенос Azure PowerShell с AzureRM на Az.

Что вы развернете?

С помощью этого шаблона вы развернете правило авторизации служебной шины для пространства имен и сущности обмена сообщениями (в нашем примере — очереди).

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

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

Развернуть в Azure

Параметры

С помощью диспетчера ресурсов Azure можно определить параметры значений, которые должны указываться на этапе развертывания шаблона. В шаблоне есть раздел Parameters , содержащий все значения параметров. Для этих значений необходимо определить параметры, которые будут зависеть от развертываемого проекта либо от среды, в которой выполняется развертывание. Не задавайте параметры для значений, которые не меняются. Значение каждого параметра в шаблоне определяет развертываемые ресурсы.

Ниже описаны параметры, которые определяет шаблон.

serviceBusNamespaceName

Имя создаваемого пространства имен служебной шины.

"serviceBusNamespaceName": {
"type": "string"
}

namespaceAuthorizationRuleName

Имя правила авторизации для пространства имен.

"namespaceAuthorizationRuleName ": {
"type": "string"
}

serviceBusQueueName

Имя очереди в пространстве имен служебной шины.

"serviceBusQueueName": {
"type": "string"
}

serviceBusApiVersion

Версия API служебной шины для шаблона.

"serviceBusApiVersion": {
       "type": "string",
       "defaultValue": "2017-04-01",
       "metadata": {
           "description": "Service Bus ApiVersion used by the template"
       }

Развертываемые ресурсы

Создает стандартное пространство имен служебной шины типа Messagingи правило авторизации служебной шины для пространства имен и сущности.

"resources": [
        {
            "apiVersion": "[variables('sbVersion')]",
            "name": "[parameters('serviceBusNamespaceName')]",
            "type": "Microsoft.ServiceBus/namespaces",
            "location": "[variables('location')]",
            "kind": "Messaging",
            "sku": {
                "name": "Standard",
            },
            "resources": [
                {
                    "apiVersion": "[variables('sbVersion')]",
                    "name": "[parameters('serviceBusQueueName')]",
                    "type": "Queues",
                    "dependsOn": [
                        "[concat('Microsoft.ServiceBus/namespaces/', parameters('serviceBusNamespaceName'))]"
                    ],
                    "properties": {
                        "path": "[parameters('serviceBusQueueName')]"
                    },
                    "resources": [
                        {
                            "apiVersion": "[variables('sbVersion')]",
                            "name": "[parameters('queueAuthorizationRuleName')]",
                            "type": "authorizationRules",
                            "dependsOn": [
                                "[parameters('serviceBusQueueName')]"
                            ],
                            "properties": {
                                "Rights": ["Listen"]
                            }
                        }
                    ]
                }
            ]
        }, {
            "apiVersion": "[variables('sbVersion')]",
            "name": "[variables('namespaceAuthRuleName')]",
            "type": "Microsoft.ServiceBus/namespaces/authorizationRules",
            "dependsOn": ["[concat('Microsoft.ServiceBus/namespaces/', parameters('serviceBusNamespaceName'))]"],
            "location": "[resourceGroup().location]",
            "properties": {
                "Rights": ["Send"]
            }
        }
    ]

Сведения о синтаксисе и свойствах JSON см. в разделах о пространствах имен и очередях и правилах авторизации.

Команды для выполнения развертывания

Чтобы развернуть ресурсы в Azure, необходимо войти в учетную запись Azure и воспользоваться модулем Azure Resource Manager. Информацию об использовании диспетчера ресурсов Azure с помощью Azure PowerShell или интерфейса командной строки Azure см. в следующих статьях:

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

PowerShell

New-AzResourceGroupDeployment -ResourceGroupName \<resource-group-name\> -TemplateFile <https://raw.githubusercontent.com/azure/azure-quickstart-templates/master/quickstarts/microsoft.servicebus/servicebus-create-authrule-namespace-and-queue/azuredeploy.json>

Azure CLI

azure config mode arm

azure group deployment create \<my-resource-group\> \<my-deployment-name\> --template-uri <https://raw.githubusercontent.com/azure/azure-quickstart-templates/master/quickstarts/microsoft.servicebus/servicebus-create-authrule-namespace-and-queue/azuredeploy.json>

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

Теперь, когда вы создали и развернули ресурсы с помощью диспетчера ресурсов Azure, узнайте, как управлять этими ресурсами, изучив следующие статьи: