Bagikan melalui


Membuat aturan otorisasi Service Bus untuk namespace dan antrean menggunakan templat Azure Resource Manager

Artikel ini menunjukkan cara menggunakan templat Azure Resource Manager yang membuat aturan otorisasi untuk namespace Service Bus dan antrean. Artikel ini menjelaskan cara menentukan sumber daya mana yang disebarkan dan cara menentukan parameter yang ditentukan saat penyebaran dilakukan. Anda dapat menggunakan templat ini untuk penyebaran Anda sendiri, atau mengkustomisasikannya untuk memenuhi kebutuhan Anda.

Untuk informasi selengkapnya tentang membuat templat, lihat Menulis templat Azure Resource Manager.

Untuk templat lengkap, lihat templat aturan otorisasi Service Bus di GitHub.

Catatan

Templat Azure Resource Manager berikut ini tersedia untuk diunduh dan disebarkan.

Untuk memeriksa templat terbaru, kunjungi galeri Templat Mulai Cepat Azure dan cari Service Bus.

Catatan

Sebaiknya Anda menggunakan modul Azure Az PowerShell untuk berinteraksi dengan Azure. Untuk memulai, lihat Menginstal Azure PowerShell. Untuk mempelajari cara bermigrasi ke modul Az PowerShell, lihat Memigrasikan Azure PowerShell dari AzureRM ke Az.

Apa yang akan Anda sebarkan?

Dengan templat ini, Anda menyebarkan aturan otorisasi Service Bus untuk namespace dan entitas pesan (dalam hal ini, antrean).

Templat ini menggunakan Tanda Tangan Akses Bersama (SAS) untuk autentikasi. SAS memungkinkan aplikasi untuk mengautentikasi ke Service Bus menggunakan kunci akses yang dikonfigurasi pada namespace, atau pada entitas pesan (antrean atau topik) yang terkait dengan hak-hak tertentu. Anda nantinya dapat menggunakan kunci ini untuk menghasilkan token SAS yang dapat digunakan klien secara bergiliran untuk mengautentikasi ke Service Bus.

Untuk menjalankan penyebaran secara otomatis, klik tombol berikut:

Sebarkan ke Azure

Parameter

Dengan Azure Resource Manager, Anda menentukan parameter untuk nilai yang ingin Anda tentukan saat templat disebarkan. Templat mencakup bagian yang disebut Parameters berisi semua nilai parameter. Anda harus menentukan parameter untuk nilai-nilai yang bervariasi berdasarkan proyek yang Anda sebarkan atau berdasarkan lingkungan tempat Anda menyebarkan. Jangan menentukan parameter untuk nilai yang selalu tetap sama. Setiap nilai parameter digunakan dalam templat untuk menentukan sumber daya yang disebarkan.

Templat berisi parameter berikut.

serviceBusNamespaceName

Nama namespace Service Bus yang akan dibuat.

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

namespaceAuthorizationRuleName

Nama aturan otorisasi untuk namespace.

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

serviceBusQueueName

Nama antrean di namespace Service Bus yang akan dibuat.

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

serviceBusApiVersion

Templat versi API Bus Layanan.

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

Sumber daya yang akan disebarkan

Membuat namespace Service Bus standar jenis Pesan, dan aturan otorisasi Service Bus untuk namespace dan entitas.

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

Untuk sintaks dan properti JSON, lihat namespace, antrean, dan AuthorizationRules.

Perintah untuk menjalankan penyebaran

Untuk menyebarkan sumber daya ke Azure, Anda harus masuk ke akun Azure dan menggunakan modul Azure Resource Manager. Untuk mempelajari tentang menggunakan Azure Resource Manager dengan Azure PowerShell atau Azure CLI, lihat:

Contoh berikut mengasumsikan Anda sudah memiliki grup sumber daya di akun Anda dengan nama yang ditentukan.

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>

Langkah berikutnya

Setelah Anda membuat dan menyebarkan sumber daya menggunakan Azure Resource Manager, pelajari cara mengelola sumber daya ini dengan melihat artikel berikut: