Créer une règle d’autorisation Service Bus pour l’espace de noms et la file d’attente à l’aide d’un modèle Azure Resource Manager
Cet article montre comment utiliser un modèle Azure Resource Manager qui crée une règle d’autorisation pour un espace de noms Service Bus et une file d’attente. L’article explique comment spécifier les ressources à déployer et définir les paramètres qui sont spécifiés durant l’exécution du déploiement. Vous pouvez utiliser ce modèle pour vos propres déploiements, ou le personnaliser afin qu’il réponde à vos besoins.
Pour en savoir plus sur la création de modèles, consultez la rubrique Création de modèles Azure Resource Manager.
Pour obtenir le modèle complet, consultez le modèle de règle d’autorisation d’espace de noms Service Bus sur GitHub.
Notes
Les modèles Azure Resource Manager suivants sont disponibles au téléchargement et au déploiement.
- Création d'un espace de noms Service Bus
- Créer un espace de noms Service Bus avec file d’attente
- Créer un espace de noms Service Bus par rubrique et abonnement
- Créer un modèle d’espace de noms Service Bus avec rubrique, abonnement et règle
Pour obtenir les derniers modèles, recherchez Service Bus dans la galerie de modèles de démarrage rapide Azure.
Notes
Nous vous recommandons d’utiliser le module Azure Az PowerShell pour interagir avec Azure. Pour bien démarrer, consultez Installer Azure PowerShell. Pour savoir comment migrer vers le module Az PowerShell, consultez Migrer Azure PowerShell depuis AzureRM vers Az.
Qu'allez-vous déployer ?
Avec ce modèle, vous déployez une règle d’autorisation Service Bus pour un espace de noms et une entité de messagerie (une file d’attente, dans le cas présent).
Ce modèle utilise la signature d’accès partagé (SAP) pour l’authentification. SAP permet aux applications de s’authentifier auprès de Service Bus à l’aide d’une clé d’accès sur l’espace de noms, ou sur l’entité de messagerie (file d’attente ou rubrique) avec des droits spécifiques associés. Vous pouvez ensuite utiliser cette clé pour générer un jeton SAS que les clients peuvent ensuite utiliser pour s’authentifier auprès de Service Bus.
Pour exécuter automatiquement le déploiement, cliquez sur le bouton ci-dessous :
Paramètres
Azure Resource Manager vous permet de définir des paramètres pour les valeurs que vous voulez spécifier lorsque le modèle est déployé. Ce modèle inclut une section appelée Parameters
, qui contient toutes les valeurs de paramètres. Vous devez définir un paramètre pour les valeurs qui varient selon le projet que vous déployez, ou de l’environnement dans lequel vous effectuez le déploiement. Ne définissez pas de paramètres pour les valeurs qui restent identiques. Chaque valeur de paramètre est utilisée dans le modèle pour définir les ressources déployées.
Le modèle définit les paramètres suivants.
serviceBusNamespaceName
Nom de l’espace de noms Service Bus à créer.
"serviceBusNamespaceName": {
"type": "string"
}
namespaceAuthorizationRuleName
Nom de la règle d'autorisation pour l'espace de noms.
"namespaceAuthorizationRuleName ": {
"type": "string"
}
serviceBusQueueName
Nom de la file d’attente dans l’espace de noms Service Bus.
"serviceBusQueueName": {
"type": "string"
}
serviceBusApiVersion
La version de l’API Service Bus du modèle.
"serviceBusApiVersion": {
"type": "string",
"defaultValue": "2017-04-01",
"metadata": {
"description": "Service Bus ApiVersion used by the template"
}
Ressources à déployer
Crée un espace de noms Service Bus standard de type Messagerieet une règle d'autorisation Service Bus pour l'espace de noms et l'entité.
"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"]
}
}
]
Pour la syntaxe et les propriétés JSON, consultez espaces de noms, files d’attente, et AuthorizationRules.
Commandes pour l’exécution du déploiement
Pour déployer les ressources sur Azure, vous devez être connecté à votre compte Azure et utiliser le module Azure Resource Manager. Pour en savoir plus sur l'utilisation de ce module avec Azure PowerShell ou la CLI Azure, consultez :
- Gérer des ressources Azure à l’aide d’Azure PowerShell
- Gérer des ressources Azure à l’aide d’Azure CLI
Les exemples suivants supposent que vous disposez déjà d'un groupe de ressources dans votre compte, qui porte le nom spécifié.
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>
Étapes suivantes
Maintenant que vous avez créé et déployé des ressources à l’aide d’Azure Resource Manager, découvrez comment gérer ces ressources en consultant les articles suivants :