Een Service Bus-autorisatieregel voor naamruimte en wachtrij maken met behulp van een Azure Resource Manager-sjabloon

In dit artikel wordt beschreven hoe u een Azure Resource Manager-sjabloon gebruikt waarmee een autorisatieregel wordt gemaakt voor een Service Bus-naamruimte en -wachtrij. In het artikel wordt uitgelegd hoe u kunt opgeven welke resources worden geïmplementeerd en hoe u de parameters definieert die bij de uitvoering van de implementatie zijn opgegeven. U kunt deze sjabloon gebruiken voor uw eigen implementaties of de sjabloon aanpassen aan uw eisen.

Zie Azure Resource Manager-sjablonen ontwerpen voor meer informatie over het maken van sjablonen.

Zie de sjabloon Service Bus-autorisatieregel op GitHub voor de volledige sjabloon.

Notitie

De volgende Azure Resource Manager-sjablonen zijn beschikbaar om te downloaden en te implementeren.

Als u op de meest recente sjablonen wilt controleren, gaat u naar de galerie Azure-quickstart-sjablonen en zoekt u naar Service Bus.

Notitie

U wordt aangeraden de Azure Az PowerShell-module te gebruiken om te communiceren met Azure. Zie Azure PowerShell installeren om aan de slag te gaan. Raadpleeg Azure PowerShell migreren van AzureRM naar Az om te leren hoe u naar de Azure PowerShell-module migreert.

Wat wilt u implementeren?

Met deze sjabloon implementeert u een Service Bus-autorisatieregel voor een naamruimte en berichtenentiteit (in dit geval een wachtrij).

Deze sjabloon maakt gebruik van Shared Access Signature (SAS) voor verificatie. MET SAS kunnen toepassingen zich verifiëren bij Service Bus met behulp van een toegangssleutel die is geconfigureerd voor de naamruimte of op de berichtenentiteit (wachtrij of onderwerp) waaraan specifieke rechten zijn gekoppeld. U kunt deze sleutel vervolgens gebruiken om een SAS-token te genereren dat clients op hun beurt kunnen gebruiken om te verifiëren bij Service Bus.

Klik op de volgende knop om de implementatie automatisch uit te voeren:

Implementeren op Azure

Parameters

Met Azure Resource Manager kunt u parameters definiëren voor waarden die u wilt opgeven wanneer de sjabloon wordt geïmplementeerd. De sjabloon bevat een sectie met de naam Parameters die alle parameterwaarden bevat. U moet een parameter definiëren voor de waarden die variëren op basis van het project dat u implementeert of op basis van de omgeving waarnaar u implementeert. Definieer geen parameters voor waarden die altijd hetzelfde blijven. De waarde van elke parameter wordt gebruikt in de sjabloon voor het definiëren van de resources die worden geïmplementeerd.

De sjabloon definieert de volgende parameters.

serviceBusNamespaceName

De naam van de Service Bus-naamruimte die moet worden gemaakt.

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

namespaceAuthorizationRuleName

De naam van de autorisatieregel voor de naamruimte.

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

serviceBusQueueName

De naam van de wachtrij in de Service Bus-naamruimte.

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

serviceBusApiVersion

De Service Bus-API-versie van de sjabloon.

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

Resources om te implementeren

Hiermee maakt u een standaard Service Bus-naamruimte van het type Messaging en een Service Bus-autorisatieregel voor naamruimte en entiteit.

"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"]
            }
        }
    ]

Zie naamruimten, wachtrijen en AuthorizationRules voor JSON-syntaxis en eigenschappen.

Opdrachten om implementatie uit te voeren

Als u resources in Azure wilt implementeren, moet u zijn aangemeld bij uw Azure-account en moet u de Azure Resource Manager-module gebruiken. Voor meer informatie over het gebruik van Azure Resource Manager in combinatie met Azure PowerShell of de Azure CLI raadpleegt u:

In de volgende voorbeelden wordt ervan uitgegaan dat u in uw account al een resourcegroep hebt met de opgegeven naam.

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>

Volgende stappen

Nu u resources hebt gemaakt en geïmplementeerd met behulp van Azure Resource Manager, kunt u in de volgende artikelen lezen hoe u deze resources kunt beheren: