Skapa en Service Bus-auktoriseringsregel för namnområde och kö med hjälp av en Azure Resource Manager-mall

Den här artikeln visar hur du använder en Azure Resource Manager-mall som skapar en auktoriseringsregel för ett Service Bus-namnområde och en kö. Artikeln beskriver hur du anger vilka resurser som distribueras och hur du definierar parametrar som anges när distributionen körs. Du kan använda den här mallen för dina egna distributioner eller anpassa den så att den uppfyller dina krav.

Mer information om hur du skapar mallar finns i Redigera Azure Resource Manager-mallar.

Den fullständiga mallen finns i mallen för Service Bus-auktoriseringsregel på GitHub.

Anteckning

Följande Azure-Resource Manager mallar är tillgängliga för nedladdning och distribution.

Om du vill söka efter de senaste mallarna går du till galleriet Azure Snabbstartsmallar och söker efter Service Bus.

Anteckning

Vi rekommenderar att du använder Azure Az PowerShell-modulen för att interagera med Azure. Se Installera Azure PowerShell för att komma igång. Information om hur du migrerar till Az PowerShell-modulen finns i artikeln om att migrera Azure PowerShell från AzureRM till Az.

Vad vill du distribuera?

Med den här mallen distribuerar du en Service Bus-auktoriseringsregel för en namnområdes- och meddelandeentitet (i det här fallet en kö).

Den här mallen använder SIGNATUR för delad åtkomst (SAS) för autentisering. MED SAS kan program autentisera till Service Bus med hjälp av en åtkomstnyckel som konfigurerats i namnområdet eller på meddelandeentiteten (kö eller ämne) som specifika rättigheter är associerade med. Du kan sedan använda den här nyckeln för att generera en SAS-token som klienter i sin tur kan använda för att autentisera till Service Bus.

Klicka på följande knapp för att köra distributionen automatiskt:

Distribuera till Azure

Parametrar

Med Azure Resource Manager kan du definiera parametrar för värden som du vill ange när mallen distribueras. Mallen innehåller ett avsnitt med namnet Parameters som innehåller alla parametervärden. Du bör definiera en parameter för de värden som varierar beroende på vilket projekt du distribuerar eller baserat på den miljö som du distribuerar till. Definiera inte parametrar för värden som alltid förblir desamma. Varje parametervärde används i mallen för att definiera de resurser som distribueras.

Mallen definierar följande parametrar.

serviceBusNamespaceName

Namnet på Service Bus-namnområdet som ska skapas.

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

namespaceAuthorizationRuleName

Namnet på auktoriseringsregeln för namnområdet.

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

serviceBusQueueName

Namnet på kön i Service Bus-namnområdet.

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

serviceBusApiVersion

Service Bus API-versionen av mallen.

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

Resurser som ska distribueras

Skapar ett Service Bus-standardnamnområde av typen Messaging och en Service Bus-auktoriseringsregel för namnområde och entitet.

"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-syntax och egenskaper finns i namnrymder, köer och AuthorizationRules.

Kommandon för att köra distributionen

Om du vill distribuera resurserna till Azure måste du vara inloggad på ditt Azure-konto och använda Azure Resource Manager-modulen. Information om hur du använder Azure Resource Manager med Azure PowerShell eller Azure CLI hittar du här:

Följande exempel förutsätter att du redan har en resursgrupp i ditt konto med det angivna namnet.

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>

Nästa steg

Nu när du har skapat och distribuerat resurser med Hjälp av Azure Resource Manager kan du lära dig hur du hanterar dessa resurser genom att visa följande artiklar: