Azure Service Bus Enumeration
Namespace Enumeration
az servicebus namespace list -o table --query "[].{name:name,publicNetworkAccess:publicNetworkAccess,serviceBusEndpoint:serviceBusEndpoint,disableLocalAuth:disableLocalAuth,resourceGroup:resourceGroup}"
az servicebus namespace network-rule-set list --resource-group $RESOURCE_GROUP --namespace-name $BUS_NAME
az servicebus namespace show --resource-group $RESOURCE_GROUP --name $BUS_NAME
az servicebus namespace private-endpoint-connection list --resource-group $RESOURCE_GROUP --namespace-name $BUS_NAME
az servicebus namespace exists --name $BUS_NAME
Authorization Rule Enumeration
az servicebus namespace authorization-rule list --resource-group $RESOURCE_GROUP --namespace-name $BUS_NAME
az servicebus namespace authorization-rule list --resource-group $RESOURCE_GROUP --namespace-name $BUS_NAME --query "[].{name:name,rights:rights}"
az servicebus queue authorization-rule list --resource-group $RESOURCE_GROUP --namespace-name $BUS_NAME --queue-name <MyQueue>
az servicebus topic authorization-rule list --resource-group $RESOURCE_GROUP --namespace-name $BUS_NAME --topic-name $TOPIC_NAME
Get keys
az servicebus namespace authorization-rule keys list --resource-group $RESOURCE_GROUP --namespace-name $BUS_NAME [--authorization-rule-name RootManageSharedAccessKey]
az servicebus topic authorization-rule keys list --resource-group $RESOURCE_GROUP --namespace-name $BUS_NAME --topic-name $TOPIC_NAME --name <auth-rule-name>
az servicebus queue authorization-rule keys list --resource-group $RESOURCE_GROUP --namespace-name $BUS_NAME --queue-name $TOPIC_NAME --name <auth-rule-name>
Queue Enumeration
az servicebus queue list --resource-group $RESOURCE_GROUP --namespace-name $BUS_NAME
az servicebus queue show --resource-group $RESOURCE_GROUP --namespace-name $BUS_NAME --name $TOPIC_NAME
Topic Enumeration
az servicebus topic list \
--resource-group $RESOURCE_GROUP \
--namespace-name $BUS_NAME \
--query "[].{TopicName:name, Status:status, ActiveMsgs:countDetails.activeMessageCount, DeadLetterMsgs:countDetails.deadLetterMessageCount, Partitioning:enablePartitioning}" \
--output table
az servicebus topic show --resource-group $RESOURCE_GROUP --namespace-name $BUS_NAME --name $TOPIC_NAME
Subscription Enumeration
az servicebus topic subscription list --resource-group $RESOURCE_GROUP --namespace-name $BUS_NAME --topic-name $TOPIC_NAME
az servicebus topic subscription list \
--resource-group $RESOURCE_GROUP \
--namespace-name $BUS_NAME \
--topic-name labtopic \
--query "[].{Subscription:name, Status:status, ActiveCount:countDetails.activeMessageCount, DeadLetterCount:countDetails.deadLetterMessageCount, RequiresSession:requiresSession}" \
--output table
az servicebus topic subscription show --resource-group $RESOURCE_GROUP --namespace-name $BUS_NAME --topic-name $TOPIC_NAME --name <MySubscription>