Azure Resource Manager şablonu kullanarak ad alanı ve kuyruk için Service Bus yetkilendirme kuralı oluşturma
Bu makalede, Service Bus ad alanı ve kuyruğu için yetkilendirme kuralı oluşturan bir Azure Resource Manager şablonunun nasıl kullanılacağı gösterilmektedir. Makalede dağıtılacak kaynakların nasıl belirtildiği ve dağıtım yürütürken belirtilen parametrelerin nasıl tanımlanacağı açıklanır. Bu şablonu kendi dağıtımlarınız için kullanabilir veya kendi gereksinimlerinize göre özelleştirebilirsiniz.
Şablon oluşturma hakkında daha fazla bilgi için bkz . Azure Resource Manager şablonları yazma.
Şablonun tamamı için GitHub'da Service Bus yetkilendirme kuralı şablonuna bakın.
Not
Aşağıdaki Azure Resource Manager şablonları indirme ve dağıtım için kullanılabilir.
- Service Bus ad alanı oluşturma
- Service Bus ad alanı ve kuyruğu oluşturma
- Konu ve abonelikle bir Service Bus ad alanı oluşturma
- Konu, abonelik ve kural ile bir Service Bus ad alanı oluşturma
En son şablonları denetlemek için Azure Hızlı Başlangıç Şablonları galerisini ziyaret edin ve Service Bus'ı arayın.
Not
Azure ile etkileşim kurmak için Azure Az PowerShell modülünü kullanmanızı öneririz. Başlamak için bkz . Azure PowerShell'i yükleme. Az PowerShell modülüne nasıl geçeceğinizi öğrenmek için bkz. Azure PowerShell’i AzureRM’den Az’ye geçirme.
Ne dağıtacaksınız?
Bu şablonla, bir ad alanı ve mesajlaşma varlığı (bu örnekte bir kuyruk) için Service Bus yetkilendirme kuralı dağıtırsınız.
Bu şablon kimlik doğrulaması için Paylaşılan Erişim İmzası (SAS) kullanır. SAS, uygulamaların ad alanında veya belirli hakların ilişkilendirildiği mesajlaşma varlığında (kuyruk veya konu) yapılandırılmış bir erişim anahtarı kullanarak Service Bus'ta kimlik doğrulaması gerçekleştirmesini sağlar. Ardından bu anahtarı kullanarak istemcilerin Service Bus'ta kimlik doğrulaması yapmak için kullanabileceği bir SAS belirteci oluşturabilirsiniz.
Dağıtımı otomatik olarak çalıştırmak için aşağıdaki düğmeye tıklayın:
Parametreler
Azure Resource Manager sayesinde, şablon dağıtıldığında belirtmek istediğiniz değerlerin parametrelerini siz tanımlarsınız. Şablon, tüm parametre değerlerini içeren adlı Parameters
bir bölüm içerir. Bu değerler için, dağıttığınız projeye veya dağıttığınız ortama göre değişiklik gösterecek bir parametre tanımlamanız gerekir. Her zaman aynı kalacak değerler için parametre tanımlamayın. Her parametre değeri, dağıtılan kaynakları tanımlamak için şablonda kullanılır.
Şablon aşağıdaki parametreleri tanımlar.
serviceBusNamespaceName
Oluşturulacak Service Bus ad alanının adı.
"serviceBusNamespaceName": {
"type": "string"
}
namespaceAuthorizationRuleName
Ad alanı için yetkilendirme kuralının adı.
"namespaceAuthorizationRuleName ": {
"type": "string"
}
serviceBusQueueName
Service Bus ad alanında kuyruğun adı.
"serviceBusQueueName": {
"type": "string"
}
serviceBusApiVersion
Şablonun Service Bus API sürümü.
"serviceBusApiVersion": {
"type": "string",
"defaultValue": "2017-04-01",
"metadata": {
"description": "Service Bus ApiVersion used by the template"
}
Dağıtılacak kaynaklar
Mesajlaşma türünde standart bir Service Bus ad alanı ve ad alanı ve varlık için bir Service Bus yetkilendirme kuralı oluşturur.
"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 söz dizimi ve özellikleri için bkz . ad alanları, kuyruklar ve AuthorizationRules.
Dağıtımı çalıştırma komutları
Kaynakları Azure’da dağıtmak için, Azure hesabınızda oturum açmış olmanız ve Azure Resource Manager modülünü kullanıyor olmanız gerekir. Azure Resource Manager’ı Azure PowerShell veya Azure CLI ile kullanmayı öğrenmek için bkz:
- Azure PowerShell kullanarak Azure kaynaklarını yönetme
- Azure CLI kullanarak Azure kaynaklarını yönetme.
Aşağıdaki örnekler, hesabınızda belirtilen adlara sahip bir kaynak grubunun olduğunu varsaymaktadır.
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>
Sonraki adımlar
Azure Resource Manager'ı kullanarak kaynakları oluşturup dağıttığınız için şu makaleleri görüntüleyerek bu kaynakları yönetmeyi öğrenin: