Aprovisionamiento dinámico de espacios de nombres y entidades de Service Bus

Azure Service Bus proporciona bibliotecas para facilitar el aprovisionamiento dinámico de las entidades y los espacios de nombres de Service Bus. Esto posibilita escenarios complejos de implementación y mensajería, y permite determinar mediante programación qué entidades aprovisionar.

Información general

Puede seguir dos enfoques para administrar recursos de Azure Service Bus mediante programación. El primero consiste en usar las bibliotecas basadas en Azure Resource Manager, que permiten administrar espacios de nombres, colas, temas, suscripciones, reglas y directivas SAS. Las bibliotecas basadas en Azure Resource Manager tienen compatibilidad para la autenticación mediante Microsoft Entra ID, pero no mediante cadenas de conexión. El segundo enfoque consiste en aprovechar las mismas bibliotecas cliente de Service Bus que se usan para enviar y recibir mensajes. Las bibliotecas cliente también proporcionan API para ayudarle a administrar colas, temas, suscripciones y reglas en un espacio de nombres existente. Admiten la autenticación con cadenas de conexión. Al decidir el enfoque que adoptar, tenga en cuenta lo siguiente.

Las bibliotecas basadas en Azure Resource Manager ofrecen la misma funcionalidad que Azure Portal, la CLI y PowerShell cuando se trata de administrar espacios de nombres y entidades de Service Bus como colas, temas, suscripciones, etc. Si ha usado Azure Portal, la CLI o PowerShell para las operaciones de administración y quiere una forma dinámica de hacerlo, estas bibliotecas podrían ser una mejor opción.

Pero si ya usa una biblioteca cliente de Service Bus para operaciones específicas del servicio como enviar y recibir mensajes, y también necesita administrar entidades de Service Bus, es posible que el uso de la misma biblioteca le resulte más cómodo. Las bibliotecas cliente tienen un elemento ServiceBusAdministrationClient (denominado ServiceBusManagementClient en las bibliotecas anteriores) que ofrece un subconjunto de las características de administración proporcionadas por las bibliotecas basadas en Azure Resource Manager. Debe destacarse que, aunque las bibliotecas basadas en Azure Resource Manager permiten administrar espacios de nombres y entidades de Service Bus, las bibliotecas cliente solo permiten administrar entidades en un espacio de nombres existente, pero no el propio espacio de nombres.

Administración mediante bibliotecas basadas en Azure Resource Manager

Las bibliotecas basadas en Azure Resource Manager permiten administrar espacios de nombres, colas, temas, suscripciones, reglas y directivas SAS. Solo admiten la autenticación con Azure Microsoft Entra ID; no admiten cadenas de conexión.

Idioma Paquete Documentación Ejemplos
.NET Azure.ResourceManager.ServiceBus Referencia de API para Microsoft.Azure.Management.ServiceBus .NET
Java azure-resourcemanager-servicebus Referencia de API para com.azure.resourcemanager.servicebus Java
JavaScript @azure/arm-servicebus API reference for @azure/arm-servicebus
Python azure-mgmt-servicebus Referencia de API para azure-mgmt-servicebus

Bibliotecas de Fluent en .NET y Java

Existe una versión de Fluent de las bibliotecas basadas en Azure Resource Manager.

Idioma Paquete Documentación
.NET Microsoft.Azure.Management.ServiceBus.Fluent Referencia de API para Microsoft.Azure.Management.ServiceBus.Fluent
Java azure-resourcemanager-servicebus Referencia de API para com.azure.resourcemanager.servicebus.fluent

Administración mediante bibliotecas cliente de Service Bus

La bibliotecas cliente de Service Bus que se usan para operaciones como enviar y recibir mensajes también se pueden utilizar para administrar colas, temas, suscripciones y reglas en un espacio de nombres de Service Bus existente. Esta característica está disponible por medio de ServiceBusAdministrationClient en las bibliotecas más recientes y con ServiceBusManagementClient en las bibliotecas anteriores. Se recomienda encarecidamente usar las bibliotecas más recientes.

Bibliotecas de Service Bus más recientes

Idioma Paquete Documentación Ejemplos
.NET Azure.Messaging.ServiceBus ServiceBusAdministrationClient .NET
Java azure-messaging-servicebus ServiceBusAdministrationAsyncClient, ServiceBusAdministrationClient Java
JavaScript @azure/service-bus ServiceBusAdministrationClient JavaScript/TypeScript
Python azure-servicebus ServiceBusAdministrationClient Python

Bibliotecas de Service Bus heredadas

Idioma Paquete Documentación Ejemplos
.NET Microsoft.Azure.ServiceBus ManagementClient .NET
Java azure-mgmt-servicebus ManagementClientAsync, ManagementClient Java

El 30 de septiembre de 2026, retiraremos las bibliotecas del SDK de Azure Service Bus WindowsAzure.ServiceBus, Microsoft.Azure.ServiceBus y com.microsoft.azure.servicebus, que no se ajustan a las directrices del SDK de Azure. También finalizaremos la compatibilidad con el protocolo SBMP, por lo que ya no podrá usar este protocolo después del 30 de septiembre de 2026. Migre a las bibliotecas más recientes del SDK de Azure, que ofrecen actualizaciones de seguridad críticas y funcionalidades mejoradas, antes de esa fecha.

Aunque las bibliotecas anteriores todavía se pueden usar después del 30 de septiembre de 2026, ya no recibirán soporte técnico oficial ni actualizaciones de Microsoft. Para obtener más información, consulte el anuncio de retirada de soporte técnico.

Pasos siguientes

  • Envío y recepción de mensajes desde la cola mediante la biblioteca de Service Bus más reciente: .NET, Java, JavaScript, Python
  • Envío de mensajes a un tema y recepción de mensajes desde una suscripción mediante la biblioteca de Service Bus más reciente: .NET, Java, JavaScript y Python