Obtener una cadena de conexión de Azure Event Hubs

Para comunicarse con un centro de eventos en un espacio de nombres, necesita una cadena de conexión para el espacio de nombres o el centro de eventos. Si usas una cadena de conexión para el espacio de nombres desde tu aplicación, la aplicación dispone del acceso concedido (administrar, leer o escribir) a todos los centros de eventos del espacio de nombres. Si utiliza una cadena de conexión al centro de eventos, dispondrá del acceso proporcionado a ese centro de eventos específico.

La cadena de conexión de un espacio de nombres tiene los siguientes componentes incrustados:

  • Nombre de dominio completo del espacio de nombres de Event Hubs que ha creado (incluye el nombre del espacio de nombres de Event Hubs seguido de servicebus.windows.net)
  • El nombre de la clave de acceso compartido
  • El valor de la clave de acceso compartido

La cadena de conexión de un espacio de nombres tiene el siguiente aspecto:

Endpoint=sb://<NamespaceName>.servicebus.windows.net/;SharedAccessKeyName=<KeyName>;SharedAccessKey=<KeyValue>

La cadena de conexión de un event hub tiene un componente extra, es decir, EntityPath=<EventHubName>.

Endpoint=sb://<NamespaceName>.servicebus.windows.net/;SharedAccessKeyName=<KeyName>;SharedAccessKey=<KeyValue>;EntityPath=<EventHubName>

En este artículo se muestra cómo obtener una cadena de conexión para un espacio de nombres o un centro de eventos específico mediante Azure Portal, PowerShell o la CLI.

Prerequisites

Portal de Azure

Cadena de conexión para un espacio de nombres

  1. Inicie sesión en Azure Portal.

  2. En el cuadro de búsqueda en la parte superior del portal, introduce Event Hubs y luego selecciona Event Hubs en los resultados.

  3. En la lista de espacios de nombres de Event Hubs, selecciona tu espacio de nombres.

  4. En la página de espacio de nombres de los Centros de Eventos , selecciona Políticas de acceso compartido en el menú izquierdo bajo Configuración.

  5. Selecciona una política de acceso compartido en la lista de políticas. La política predeterminada se llama RootManageSharedAccessKey. También puedes añadir una política con los permisos apropiados (Enviar, Escuchar) y usar esa política.

  6. Seleccione el botón Copiar junto al campo Cadena de conexión: clave principal.

    Captura de pantalla de Event Hubs: obtención de la cadena de conexión.

Cadena de conexión para un centro de eventos específico en un espacio de nombres

En esta sección se indican los pasos para obtener una cadena de conexión para un centro de eventos específico en un espacio de nombres.

  1. En la página Espacio de nombres de Event Hubs, seleccione Event Hubs en Entidades en el menú de la izquierda y, a continuación, seleccione su centro de eventos.

  2. En la página Instancia de Event Hubs, seleccione Directivas de acceso compartido en el menú de la izquierda en Configuración.

  3. No hay ninguna directiva predeterminada que se haya creado para un centro de eventos. Cree una directiva con el acceso Administrar, Enviar o Escuchar.

  4. Seleccione la política de la lista.

  5. Seleccione el botón Copiar junto al campo Cadena de conexión: clave principal.

    Captura de pantalla de la cadena de conexión a un centro de eventos específico.

Azure PowerShell

Utiliza el cmdlet Get-AzEventHubKey para obtener la cadena de conexión de una política o regla específica.

El siguiente ejemplo obtiene la cadena de conexión de un espacio de nombres. MyAuthRuleName es el nombre de la directiva de acceso compartido. Para un espacio de nombres, la política predeterminada es RootManageSharedAccessKey.

Get-AzEventHubKey -ResourceGroupName MyResourceGroupName -NamespaceName MyNamespaceName -AuthorizationRuleName MyAuthRuleName

El siguiente ejemplo obtiene la cadena de conexión de un centro de eventos específico dentro de un espacio de nombres:

Get-AzEventHubKey -ResourceGroupName MyResourceGroupName -NamespaceName MyNamespaceName -EventHubName MyEventHubName -AuthorizationRuleName MyAuthRuleName

En el ejemplo siguiente se obtiene la cadena de conexión para un espacio de nombres que forma parte de una configuración de recuperación ante desastres geográficos, mediante su alias.

Get-AzEventHubKey -ResourceGroupName MyResourceGroupName -NamespaceName MyNamespaceName -AliasName MyAliasName -AuthorizationRuleName MyAuthRuleName

CLI de Azure

El siguiente ejemplo obtiene la cadena de conexión para un espacio de nombres. MyAuthRuleName es el nombre de la directiva de acceso compartido. Para un espacio de nombres, la política predeterminada es RootManageSharedAccessKey.

az eventhubs namespace authorization-rule keys list --resource-group MyResourceGroupName --namespace-name MyNamespaceName --name RootManageSharedAccessKey

El siguiente ejemplo obtiene la cadena de conexión de un centro de eventos específico dentro de un espacio de nombres:

az eventhubs eventhub authorization-rule keys list --resource-group MyResourceGroupName --namespace-name MyNamespaceName --eventhub-name MyEventHubName --name MyAuthRuleName

En el ejemplo siguiente se obtiene la cadena de conexión para un espacio de nombres que forma parte de una configuración de recuperación ante desastres geográficos, mediante su alias.

az eventhubs georecovery-alias authorization-rule keys list --resource-group MyResourceGroupName --namespace-name MyNamespaceName --alias MyAliasName --name MyAuthRuleName

Para más información sobre los comandos de la CLI de Azure para Event Hubs, consulte CLI de Azure para Event Hubs.

Puedes obtener más información sobre Event Hubs visitando los siguientes artículos: