Integrieren von Azure Event Hubs mit dem Dienstconnector
Artikel
Diese Seite zeigt unterstützte Authentifizierungsmethoden und -clients und zeigt Beispielcode an, mit dem Sie Azure Event Hubs mit anderen Clouddiensten mithilfe von Service Verbinden or verbinden können. Möglicherweise können Sie auch in anderen Programmiersprachen eine Verbindung mit Event Hubs herstellen, ohne den Dienstconnector zu verwenden. Auf dieser Seite werden auch Die Namen und Werte der Standardumgebungsvariablen (oder Spring Boot-Konfiguration) angezeigt, die Sie beim Erstellen von Dienstverbindungen erhalten.
Unterstützte Computedienste
Der Dienst Verbinden or kann verwendet werden, um die folgenden Computedienste mit Azure Event Hubs zu verbinden:
Azure App Service
Azure-Funktionen
Azure Container Apps
Azure Spring Apps
Unterstützte Authentifizierungstypen und Clienttypen
Die folgende Tabelle zeigt, welche Kombinationen von Clienttypen und Authentifizierungsmethoden unterstützt werden, um Ihren Computedienst mit Azure Event Hubs mithilfe von Service Verbinden or zu verbinden. Ein "Ja" gibt an, dass die Kombination unterstützt wird, während ein "Nein" angibt, dass sie nicht unterstützt wird.
Clienttyp
Systemseitig zugewiesene verwaltete Identität
Benutzerseitig zugewiesene verwaltete Identität
Geheimnis/Verbindungszeichenfolge
Dienstprinzipal
.NET
Ja
Ja
Ja
Ja
Go
Ja
Ja
Ja
Ja
Java
Ja
Ja
Ja
Ja
Java - Spring Boot
Ja
Ja
Ja
Ja
Kafka - Spring Boot
Ja
Ja
Ja
Ja
Node.js
Ja
Ja
Ja
Ja
Python
Ja
Ja
Ja
Ja
Keine
Ja
Ja
Ja
Ja
Diese Tabelle gibt an, dass alle Kombinationen von Clienttypen und Authentifizierungsmethoden in der Tabelle unterstützt werden. Alle Clienttypen können jede der Authentifizierungsmethoden verwenden, um mithilfe von Service Verbinden or eine Verbindung mit Azure Event Hubs herzustellen.
Standardnamen von Umgebungsvariablen oder Anwendungseigenschaften
Verwenden Sie die nachstehenden Verbindungsdetails, um Computedienste mit Event Hubs zu verbinden. Ersetzen Sie für jedes Beispiel unten die Platzhaltertexte<Event-Hubs-namespace>, <access-key-name>, <access-key-value><client-ID>, <client-secret> und <tenant-id> mit Ihrem Event Hubs-Namespace, dem Namen des freigegebenen Zugriffsschlüssels, dem Wert des Schlüssels für den gemeinsamen Zugriff, der Client-ID, dem geheimen Clientschlüssel und der Mandanten-ID. Weitere Informationen zu Benennungskonventionen finden Sie im Artikel "Service Verbinden or internals".
Systemseitig zugewiesene verwaltete Identität
SpringBoot-Clienttyp
Standardname der Umgebungsvariablen
Beschreibung
Beispielwert
spring.cloud.azure.eventhub.namespace
Event Hubs-Namespace
<Event-Hub-namespace>.servicebus.windows.net
spring.cloud.azure.eventhubs.namespace
Event Hubs-Namespace für Spring Cloud Azure Version über 4.0
Gibt an, ob verwaltete Identität aktiviert werden soll
true
Kafka-SpringBoot-Clienttyp
Standardname der Umgebungsvariablen
Beschreibung
Beispielwert
spring.kafka.bootstrap-servers
Kafka-Bootstrapserver
<Event-Hub-namespace>.servicebus.windows.net
Andere Clienttypen
Standardname der Umgebungsvariablen
Beschreibung
Beispielwert
AZURE_EVENTHUB_FULLYQUALIFIEDNAMESPACE
Event Hubs-Namespace
<Event-Hubs-namespace>.servicebus.windows.net
Beispielcode
Lesen Sie die schritte und den folgenden Code, um eine Verbindung mit Azure Event Hubs mithilfe einer vom System zugewiesenen verwalteten Identität herzustellen.
Authentifizieren Sie sich mithilfe Azure.Identity des Azure Event Hubs-Namespaces aus den Von Service Verbinden or hinzugefügten Umgebungsvariablen. Wenn Sie den folgenden Code verwenden, heben Sie die Auskommentierung des Teils des Codeschnipsels für den Authentifizierungstyp auf, den Sie verwenden möchten.
using System;
sing Azure.Identity;
using Azure.Messaging.EventHubs;
// Uncomment the following lines according to the authentication type.
// system-assigned managed identity
// var credential = new DefaultAzureCredential();
// user-assigned managed identity
// var credential = new DefaultAzureCredential(
// new DefaultAzureCredentialOptions
// {
// ManagedIdentityClientId = Environment.GetEnvironmentVariable("AZURE_EVENTHUB_CLIENTID");
// });
// service principal
// var tenantId = Environment.GetEnvironmentVariable("AZURE_EVENTHUB_TENANTID");
// var clientId = Environment.GetEnvironmentVariable("AZURE_EVENTHUB_CLIENTID");
// var clientSecret = Environment.GetEnvironmentVariable("AZURE_EVENTHUB_CLIENTSECRET");
// var credential = new ClientSecretCredential(tenantId, clientId, clientSecret);
var fullyQualifiedNamespace = Environment.GetEnvironmentVariable("AZURE_EVENTHUB_FULLYQUALIFIEDNAMESPACE");
var eventHubName = "<NAME OF THE EVENT HUB>";
// Example of sending events
var producer = new EventHubProducerClient(fullyQualifiedNamespace, eventHubName, credential);
Fügen Sie der Datei pom.xml die folgenden Abhängigkeiten hinzu:
Authentifizieren Sie sich mithilfe azure-identity des Azure Event Hubs-Namespaces aus den Von Service Verbinden or hinzugefügten Umgebungsvariablen. Wenn Sie den folgenden Code verwenden, heben Sie die Auskommentierung des Teils des Codeschnipsels für den Authentifizierungstyp auf, den Sie verwenden möchten.
// Uncomment the following lines according to the authentication type.
// for system-managed identity
// DefaultAzureCredential credential = new DefaultAzureCredentialBuilder().build();
// for user-assigned managed identity
// DefaultAzureCredential credential = new DefaultAzureCredentialBuilder()
// .managedIdentityClientId(System.getenv("AZURE_EVENTHUB_CLIENTID"))
// .build();
// for service principal
// ClientSecretCredential credential = new ClientSecretCredentialBuilder()
// .clientId(System.getenv("AZURE_EVENTHUB_CLIENTID"))
// .clientSecret(System.getenv("AZURE_EVENTHUB_CLIENTSECRET"))
// .tenantId(System.getenv("AZURE_EVENTHUB_TENANTID"))
// .build();
String namespace = System.getenv("AZURE_EVENTHUB_FULLYQUALIFIEDNAMESPACE");
// Example of sending events
EventProcessorClientBuilder eventProcessorClientBuilder = new EventProcessorClientBuilder()
.consumerGroup(EventHubClientBuilder.DEFAULT_CONSUMER_GROUP_NAME)
.credential(namespace, "<event-hub-name>", credential)
EventProcessorClient eventProcessorClient = eventProcessorClientBuilder.buildEventProcessorClient();
Authentifizieren Sie sich mithilfe azure-identity des Azure Event Hubs-Namespaces aus den Von Service Verbinden or hinzugefügten Umgebungsvariablen. Wenn Sie den folgenden Code verwenden, heben Sie die Auskommentierung des Teils des Codeschnipsels für den Authentifizierungstyp auf, den Sie verwenden möchten.
import os
from azure.eventhub import EventData
from azure.eventhub.aio import EventHubProducerClient
# Uncomment the following lines according to the authentication type.
# system-assigned managed identity
# cred = ManagedIdentityCredential()
# user-assigned managed identity
# managed_identity_client_id = os.getenv('AZURE_EVENTHUB_CLIENTID')
# cred = ManagedIdentityCredential(client_id=managed_identity_client_id)
# service principal
# tenant_id = os.getenv('AZURE_EVENTHUB_TENANTID')
# client_id = os.getenv('AZURE_EVENTHUB_CLIENTID')
# client_secret = os.getenv('AZURE_EVENTHUB_CLIENTSECRET')
# cred = ClientSecretCredential(tenant_id=tenant_id, client_id=client_id, client_secret=client_secret)
namespace = os.getenv("AZURE_EVENTHUB_FULLYQUALIFIEDNAMESPACE")
EVENT_HUB_NAME = "EVENT_HUB_NAME"
# Example of sending events
producer = EventHubProducerClient(
fully_qualified_namespace=namespace,
eventhub_name=EVENT_HUB_NAME,
credential=cred,
)
Installieren Sie Abhängigkeiten.
go get github.com/Azure/azure-sdk-for-go/sdk/messaging/azeventhubs
go get github.com/Azure/azure-sdk-for-go/sdk/azidentity
Authentifizieren Sie sich mithilfe azidentity des Azure Event Hubs-Namespaces aus den Von Service Verbinden or hinzugefügten Umgebungsvariablen. Wenn Sie den folgenden Code verwenden, heben Sie die Auskommentierung des Teils des Codeschnipsels für den Authentifizierungstyp auf, den Sie verwenden möchten.
import (
"github.com/Azure/azure-sdk-for-go/sdk/azidentity"
"github.com/Azure/azure-sdk-for-go/sdk/messaging/azeventhubs"
)
// Uncomment the following lines according to the authentication type.
// for system-assigned managed identity
// cred, err := azidentity.NewDefaultAzureCredential(nil)
// for user-assigned managed identity
// clientid := os.Getenv("AZURE_EVENTHUB_CLIENTID")
// azidentity.ManagedIdentityCredentialOptions.ID := clientid
// options := &azidentity.ManagedIdentityCredentialOptions{ID: clientid}
// cred, err := azidentity.NewManagedIdentityCredential(options)
// for service principal
// clientid := os.Getenv("AZURE_EVENTHUB_CLIENTID")
// tenantid := os.Getenv("AZURE_EVENTHUB_TENANTID")
// clientsecret := os.Getenv("AZURE_EVENTHUB_CLIENTSECRET")
// cred, err := azidentity.NewClientSecretCredential(tenantid, clientid, clientsecret, &azidentity.ClientSecretCredentialOptions{})
namespace := os.Getenv("AZURE_EVENTHUB_FULLYQUALIFIEDNAMESPACE")
// Example of sending events
producerClient, err := azeventhubs.NewProducerClient(namespace, "<eventhub-name>", defaultAzureCred, nil)
if err != nil {
panic(err)
}
Authentifizieren Sie sich mithilfe @azure/identity des Azure Event Hubs-Namespaces aus den Von Service Verbinden or hinzugefügten Umgebungsvariablen. Wenn Sie den folgenden Code verwenden, heben Sie die Auskommentierung des Teils des Codeschnipsels für den Authentifizierungstyp auf, den Sie verwenden möchten.
const { EventHubProducerClient } = require("@azure/event-hubs");
import { DefaultAzureCredential,ClientSecretCredential } from "@azure/identity";
// Uncomment the following lines according to the authentication type.
// for system-assigned managed identity
// const credential = new DefaultAzureCredential();
// for user-assigned managed identity
// const clientId = process.env.AZURE_EVENTHUB_CLIENTID;
// const credential = new DefaultAzureCredential({
// managedIdentityClientId: clientId
// });
// for service principal
// const tenantId = process.env.AZURE_EVENTHUB_TENANTID;
// const clientId = process.env.AZURE_EVENTHUB_CLIENTID;
// const clientSecret = process.env.AZURE_EVENTHUB_CLIENTSECRET;
// const credential = new ClientSecretCredential(tenantId, clientId, clientSecret);
const namespace = process.env.AZURE_EVENTHUB_FULLYQUALIFIEDNAMESPACE;
const eventHubName = "EVENT HUB NAME";
// Example of sending events
const producer = new EventHubProducerClient(fullyQualifiedNamespace, eventHubName, credential);
Für andere Sprachen können Sie die Verbindungskonfigurationseigenschaften verwenden, die Service Verbinden or auf die Umgebungsvariablen festlegt, um eine Verbindung mit Azure Event Hubs herzustellen. Details zu Umgebungsvariablen finden Sie unter Integrieren von Azure Event Hubs in Service Verbinden or.
Benutzerseitig zugewiesene verwaltete Identität
SpringBoot-Clienttyp
Standardname der Umgebungsvariablen
Beschreibung
Beispielwert
spring.cloud.azure.eventhub.namespace
Event Hubs-Namespace
<Event-Hub-namespace>.servicebus.windows.net
spring.cloud.azure.client-id
Ihre Client-ID
<client-ID>
spring.cloud.azure.eventhubs.namespace
Event Hubs-Namespace für Spring Cloud Azure Version über 4.0
<Event-Hub-namespace>.servicebus.windows.net
spring.cloud.azure.eventhubs.credential.client-id
Ihre Client-ID für Spring Cloud Azure Version über 4.0
Lesen Sie die schritte und den folgenden Code, um mithilfe einer vom Benutzer zugewiesenen verwalteten Identität eine Verbindung mit Azure Event Hubs herzustellen.
Authentifizieren Sie sich mithilfe Azure.Identity des Azure Event Hubs-Namespaces aus den Von Service Verbinden or hinzugefügten Umgebungsvariablen. Wenn Sie den folgenden Code verwenden, heben Sie die Auskommentierung des Teils des Codeschnipsels für den Authentifizierungstyp auf, den Sie verwenden möchten.
using System;
sing Azure.Identity;
using Azure.Messaging.EventHubs;
// Uncomment the following lines according to the authentication type.
// system-assigned managed identity
// var credential = new DefaultAzureCredential();
// user-assigned managed identity
// var credential = new DefaultAzureCredential(
// new DefaultAzureCredentialOptions
// {
// ManagedIdentityClientId = Environment.GetEnvironmentVariable("AZURE_EVENTHUB_CLIENTID");
// });
// service principal
// var tenantId = Environment.GetEnvironmentVariable("AZURE_EVENTHUB_TENANTID");
// var clientId = Environment.GetEnvironmentVariable("AZURE_EVENTHUB_CLIENTID");
// var clientSecret = Environment.GetEnvironmentVariable("AZURE_EVENTHUB_CLIENTSECRET");
// var credential = new ClientSecretCredential(tenantId, clientId, clientSecret);
var fullyQualifiedNamespace = Environment.GetEnvironmentVariable("AZURE_EVENTHUB_FULLYQUALIFIEDNAMESPACE");
var eventHubName = "<NAME OF THE EVENT HUB>";
// Example of sending events
var producer = new EventHubProducerClient(fullyQualifiedNamespace, eventHubName, credential);
Fügen Sie der Datei pom.xml die folgenden Abhängigkeiten hinzu:
Authentifizieren Sie sich mithilfe azure-identity des Azure Event Hubs-Namespaces aus den Von Service Verbinden or hinzugefügten Umgebungsvariablen. Wenn Sie den folgenden Code verwenden, heben Sie die Auskommentierung des Teils des Codeschnipsels für den Authentifizierungstyp auf, den Sie verwenden möchten.
// Uncomment the following lines according to the authentication type.
// for system-managed identity
// DefaultAzureCredential credential = new DefaultAzureCredentialBuilder().build();
// for user-assigned managed identity
// DefaultAzureCredential credential = new DefaultAzureCredentialBuilder()
// .managedIdentityClientId(System.getenv("AZURE_EVENTHUB_CLIENTID"))
// .build();
// for service principal
// ClientSecretCredential credential = new ClientSecretCredentialBuilder()
// .clientId(System.getenv("AZURE_EVENTHUB_CLIENTID"))
// .clientSecret(System.getenv("AZURE_EVENTHUB_CLIENTSECRET"))
// .tenantId(System.getenv("AZURE_EVENTHUB_TENANTID"))
// .build();
String namespace = System.getenv("AZURE_EVENTHUB_FULLYQUALIFIEDNAMESPACE");
// Example of sending events
EventProcessorClientBuilder eventProcessorClientBuilder = new EventProcessorClientBuilder()
.consumerGroup(EventHubClientBuilder.DEFAULT_CONSUMER_GROUP_NAME)
.credential(namespace, "<event-hub-name>", credential)
EventProcessorClient eventProcessorClient = eventProcessorClientBuilder.buildEventProcessorClient();
Authentifizieren Sie sich mithilfe azure-identity des Azure Event Hubs-Namespaces aus den Von Service Verbinden or hinzugefügten Umgebungsvariablen. Wenn Sie den folgenden Code verwenden, heben Sie die Auskommentierung des Teils des Codeschnipsels für den Authentifizierungstyp auf, den Sie verwenden möchten.
import os
from azure.eventhub import EventData
from azure.eventhub.aio import EventHubProducerClient
# Uncomment the following lines according to the authentication type.
# system-assigned managed identity
# cred = ManagedIdentityCredential()
# user-assigned managed identity
# managed_identity_client_id = os.getenv('AZURE_EVENTHUB_CLIENTID')
# cred = ManagedIdentityCredential(client_id=managed_identity_client_id)
# service principal
# tenant_id = os.getenv('AZURE_EVENTHUB_TENANTID')
# client_id = os.getenv('AZURE_EVENTHUB_CLIENTID')
# client_secret = os.getenv('AZURE_EVENTHUB_CLIENTSECRET')
# cred = ClientSecretCredential(tenant_id=tenant_id, client_id=client_id, client_secret=client_secret)
namespace = os.getenv("AZURE_EVENTHUB_FULLYQUALIFIEDNAMESPACE")
EVENT_HUB_NAME = "EVENT_HUB_NAME"
# Example of sending events
producer = EventHubProducerClient(
fully_qualified_namespace=namespace,
eventhub_name=EVENT_HUB_NAME,
credential=cred,
)
Installieren Sie Abhängigkeiten.
go get github.com/Azure/azure-sdk-for-go/sdk/messaging/azeventhubs
go get github.com/Azure/azure-sdk-for-go/sdk/azidentity
Authentifizieren Sie sich mithilfe azidentity des Azure Event Hubs-Namespaces aus den Von Service Verbinden or hinzugefügten Umgebungsvariablen. Wenn Sie den folgenden Code verwenden, heben Sie die Auskommentierung des Teils des Codeschnipsels für den Authentifizierungstyp auf, den Sie verwenden möchten.
import (
"github.com/Azure/azure-sdk-for-go/sdk/azidentity"
"github.com/Azure/azure-sdk-for-go/sdk/messaging/azeventhubs"
)
// Uncomment the following lines according to the authentication type.
// for system-assigned managed identity
// cred, err := azidentity.NewDefaultAzureCredential(nil)
// for user-assigned managed identity
// clientid := os.Getenv("AZURE_EVENTHUB_CLIENTID")
// azidentity.ManagedIdentityCredentialOptions.ID := clientid
// options := &azidentity.ManagedIdentityCredentialOptions{ID: clientid}
// cred, err := azidentity.NewManagedIdentityCredential(options)
// for service principal
// clientid := os.Getenv("AZURE_EVENTHUB_CLIENTID")
// tenantid := os.Getenv("AZURE_EVENTHUB_TENANTID")
// clientsecret := os.Getenv("AZURE_EVENTHUB_CLIENTSECRET")
// cred, err := azidentity.NewClientSecretCredential(tenantid, clientid, clientsecret, &azidentity.ClientSecretCredentialOptions{})
namespace := os.Getenv("AZURE_EVENTHUB_FULLYQUALIFIEDNAMESPACE")
// Example of sending events
producerClient, err := azeventhubs.NewProducerClient(namespace, "<eventhub-name>", defaultAzureCred, nil)
if err != nil {
panic(err)
}
Authentifizieren Sie sich mithilfe @azure/identity des Azure Event Hubs-Namespaces aus den Von Service Verbinden or hinzugefügten Umgebungsvariablen. Wenn Sie den folgenden Code verwenden, heben Sie die Auskommentierung des Teils des Codeschnipsels für den Authentifizierungstyp auf, den Sie verwenden möchten.
const { EventHubProducerClient } = require("@azure/event-hubs");
import { DefaultAzureCredential,ClientSecretCredential } from "@azure/identity";
// Uncomment the following lines according to the authentication type.
// for system-assigned managed identity
// const credential = new DefaultAzureCredential();
// for user-assigned managed identity
// const clientId = process.env.AZURE_EVENTHUB_CLIENTID;
// const credential = new DefaultAzureCredential({
// managedIdentityClientId: clientId
// });
// for service principal
// const tenantId = process.env.AZURE_EVENTHUB_TENANTID;
// const clientId = process.env.AZURE_EVENTHUB_CLIENTID;
// const clientSecret = process.env.AZURE_EVENTHUB_CLIENTSECRET;
// const credential = new ClientSecretCredential(tenantId, clientId, clientSecret);
const namespace = process.env.AZURE_EVENTHUB_FULLYQUALIFIEDNAMESPACE;
const eventHubName = "EVENT HUB NAME";
// Example of sending events
const producer = new EventHubProducerClient(fullyQualifiedNamespace, eventHubName, credential);
Für andere Sprachen können Sie die Verbindungskonfigurationseigenschaften verwenden, die Service Verbinden or auf die Umgebungsvariablen festlegt, um eine Verbindung mit Azure Event Hubs herzustellen. Details zu Umgebungsvariablen finden Sie unter Integrieren von Azure Event Hubs in Service Verbinden or.
Rufen Sie die Verbindungszeichenfolge aus der Umgebungsvariable ab, die von Service Verbinden or hinzugefügt wurde.
using System;
using Azure.Messaging.EventHubs;
string connectionString = Environment.GetEnvironmentVariable("AZURE_EVENTHUB_CONNECTIONSTRING");
var eventHubName = "<NAME OF THE EVENT HUB>";
var consumerGroup = EventHubConsumerClient.DefaultConsumerGroupName;
var producer = new EventHubProducerClient(connectionString, eventHubName);
var consumer = new EventHubConsumerClient(consumerGroup, connectionString, eventHubName);
Fügen Sie die folgende Abhängigkeit in Ihrer pom.xml-Datei hinzu:
Rufen Sie die Verbindungszeichenfolge aus der Umgebungsvariable ab, die von Service Verbinden or hinzugefügt wurde.
const { EventHubProducerClient } = require("@azure/event-hubs");
const eventHubName = "EVENT HUB NAME";
const connection_string = process.env.AZURE_EVENTHUB_CONNECTIONSTRING;
// Example of sending events
const producer = new EventHubProducerClient(connectionString, eventHubName);
Für andere Sprachen können Sie die Verbindungskonfigurationseigenschaften verwenden, die Service Verbinden or auf die Umgebungsvariablen festlegt, um eine Verbindung mit Azure Event Hubs herzustellen. Details zu Umgebungsvariablen finden Sie unter Integrieren von Azure Event Hubs in Service Verbinden or.
Dienstprinzipal
SpringBoot-Clienttyp
Standardname der Umgebungsvariablen
Beschreibung
Beispielwert
spring.cloud.azure.eventhub.namespace
Event Hubs-Namespace
<Event-Hub-namespace>.servicebus.windows.net
spring.cloud.azure.client-id
Ihre Client-ID
<client-ID>
spring.cloud.azure.tenant-id
Ihr geheimer Clientschlüssel
<client-secret>
spring.cloud.azure.client-secret
Ihre Mandanten-ID
<tenant-id>
spring.cloud.azure.eventhubs.namespace
Event Hubs-Namespace für Spring Cloud Azure Version über 4.0
<Event-Hub-namespace>.servicebus.windows.net
spring.cloud.azure.eventhubs.credential.client-id
Ihre Client-ID für Spring Cloud Azure Version über 4.0
Authentifizieren Sie sich mithilfe Azure.Identity des Azure Event Hubs-Namespaces aus den Von Service Verbinden or hinzugefügten Umgebungsvariablen. Wenn Sie den folgenden Code verwenden, heben Sie die Auskommentierung des Teils des Codeschnipsels für den Authentifizierungstyp auf, den Sie verwenden möchten.
using System;
sing Azure.Identity;
using Azure.Messaging.EventHubs;
// Uncomment the following lines according to the authentication type.
// system-assigned managed identity
// var credential = new DefaultAzureCredential();
// user-assigned managed identity
// var credential = new DefaultAzureCredential(
// new DefaultAzureCredentialOptions
// {
// ManagedIdentityClientId = Environment.GetEnvironmentVariable("AZURE_EVENTHUB_CLIENTID");
// });
// service principal
// var tenantId = Environment.GetEnvironmentVariable("AZURE_EVENTHUB_TENANTID");
// var clientId = Environment.GetEnvironmentVariable("AZURE_EVENTHUB_CLIENTID");
// var clientSecret = Environment.GetEnvironmentVariable("AZURE_EVENTHUB_CLIENTSECRET");
// var credential = new ClientSecretCredential(tenantId, clientId, clientSecret);
var fullyQualifiedNamespace = Environment.GetEnvironmentVariable("AZURE_EVENTHUB_FULLYQUALIFIEDNAMESPACE");
var eventHubName = "<NAME OF THE EVENT HUB>";
// Example of sending events
var producer = new EventHubProducerClient(fullyQualifiedNamespace, eventHubName, credential);
Fügen Sie der Datei pom.xml die folgenden Abhängigkeiten hinzu:
Authentifizieren Sie sich mithilfe azure-identity des Azure Event Hubs-Namespaces aus den Von Service Verbinden or hinzugefügten Umgebungsvariablen. Wenn Sie den folgenden Code verwenden, heben Sie die Auskommentierung des Teils des Codeschnipsels für den Authentifizierungstyp auf, den Sie verwenden möchten.
// Uncomment the following lines according to the authentication type.
// for system-managed identity
// DefaultAzureCredential credential = new DefaultAzureCredentialBuilder().build();
// for user-assigned managed identity
// DefaultAzureCredential credential = new DefaultAzureCredentialBuilder()
// .managedIdentityClientId(System.getenv("AZURE_EVENTHUB_CLIENTID"))
// .build();
// for service principal
// ClientSecretCredential credential = new ClientSecretCredentialBuilder()
// .clientId(System.getenv("AZURE_EVENTHUB_CLIENTID"))
// .clientSecret(System.getenv("AZURE_EVENTHUB_CLIENTSECRET"))
// .tenantId(System.getenv("AZURE_EVENTHUB_TENANTID"))
// .build();
String namespace = System.getenv("AZURE_EVENTHUB_FULLYQUALIFIEDNAMESPACE");
// Example of sending events
EventProcessorClientBuilder eventProcessorClientBuilder = new EventProcessorClientBuilder()
.consumerGroup(EventHubClientBuilder.DEFAULT_CONSUMER_GROUP_NAME)
.credential(namespace, "<event-hub-name>", credential)
EventProcessorClient eventProcessorClient = eventProcessorClientBuilder.buildEventProcessorClient();
Authentifizieren Sie sich mithilfe azure-identity des Azure Event Hubs-Namespaces aus den Von Service Verbinden or hinzugefügten Umgebungsvariablen. Wenn Sie den folgenden Code verwenden, heben Sie die Auskommentierung des Teils des Codeschnipsels für den Authentifizierungstyp auf, den Sie verwenden möchten.
import os
from azure.eventhub import EventData
from azure.eventhub.aio import EventHubProducerClient
# Uncomment the following lines according to the authentication type.
# system-assigned managed identity
# cred = ManagedIdentityCredential()
# user-assigned managed identity
# managed_identity_client_id = os.getenv('AZURE_EVENTHUB_CLIENTID')
# cred = ManagedIdentityCredential(client_id=managed_identity_client_id)
# service principal
# tenant_id = os.getenv('AZURE_EVENTHUB_TENANTID')
# client_id = os.getenv('AZURE_EVENTHUB_CLIENTID')
# client_secret = os.getenv('AZURE_EVENTHUB_CLIENTSECRET')
# cred = ClientSecretCredential(tenant_id=tenant_id, client_id=client_id, client_secret=client_secret)
namespace = os.getenv("AZURE_EVENTHUB_FULLYQUALIFIEDNAMESPACE")
EVENT_HUB_NAME = "EVENT_HUB_NAME"
# Example of sending events
producer = EventHubProducerClient(
fully_qualified_namespace=namespace,
eventhub_name=EVENT_HUB_NAME,
credential=cred,
)
Installieren Sie Abhängigkeiten.
go get github.com/Azure/azure-sdk-for-go/sdk/messaging/azeventhubs
go get github.com/Azure/azure-sdk-for-go/sdk/azidentity
Authentifizieren Sie sich mithilfe azidentity des Azure Event Hubs-Namespaces aus den Von Service Verbinden or hinzugefügten Umgebungsvariablen. Wenn Sie den folgenden Code verwenden, heben Sie die Auskommentierung des Teils des Codeschnipsels für den Authentifizierungstyp auf, den Sie verwenden möchten.
import (
"github.com/Azure/azure-sdk-for-go/sdk/azidentity"
"github.com/Azure/azure-sdk-for-go/sdk/messaging/azeventhubs"
)
// Uncomment the following lines according to the authentication type.
// for system-assigned managed identity
// cred, err := azidentity.NewDefaultAzureCredential(nil)
// for user-assigned managed identity
// clientid := os.Getenv("AZURE_EVENTHUB_CLIENTID")
// azidentity.ManagedIdentityCredentialOptions.ID := clientid
// options := &azidentity.ManagedIdentityCredentialOptions{ID: clientid}
// cred, err := azidentity.NewManagedIdentityCredential(options)
// for service principal
// clientid := os.Getenv("AZURE_EVENTHUB_CLIENTID")
// tenantid := os.Getenv("AZURE_EVENTHUB_TENANTID")
// clientsecret := os.Getenv("AZURE_EVENTHUB_CLIENTSECRET")
// cred, err := azidentity.NewClientSecretCredential(tenantid, clientid, clientsecret, &azidentity.ClientSecretCredentialOptions{})
namespace := os.Getenv("AZURE_EVENTHUB_FULLYQUALIFIEDNAMESPACE")
// Example of sending events
producerClient, err := azeventhubs.NewProducerClient(namespace, "<eventhub-name>", defaultAzureCred, nil)
if err != nil {
panic(err)
}
Authentifizieren Sie sich mithilfe @azure/identity des Azure Event Hubs-Namespaces aus den Von Service Verbinden or hinzugefügten Umgebungsvariablen. Wenn Sie den folgenden Code verwenden, heben Sie die Auskommentierung des Teils des Codeschnipsels für den Authentifizierungstyp auf, den Sie verwenden möchten.
const { EventHubProducerClient } = require("@azure/event-hubs");
import { DefaultAzureCredential,ClientSecretCredential } from "@azure/identity";
// Uncomment the following lines according to the authentication type.
// for system-assigned managed identity
// const credential = new DefaultAzureCredential();
// for user-assigned managed identity
// const clientId = process.env.AZURE_EVENTHUB_CLIENTID;
// const credential = new DefaultAzureCredential({
// managedIdentityClientId: clientId
// });
// for service principal
// const tenantId = process.env.AZURE_EVENTHUB_TENANTID;
// const clientId = process.env.AZURE_EVENTHUB_CLIENTID;
// const clientSecret = process.env.AZURE_EVENTHUB_CLIENTSECRET;
// const credential = new ClientSecretCredential(tenantId, clientId, clientSecret);
const namespace = process.env.AZURE_EVENTHUB_FULLYQUALIFIEDNAMESPACE;
const eventHubName = "EVENT HUB NAME";
// Example of sending events
const producer = new EventHubProducerClient(fullyQualifiedNamespace, eventHubName, credential);
Für andere Sprachen können Sie die Verbindungskonfigurationseigenschaften verwenden, die Service Verbinden or auf die Umgebungsvariablen festlegt, um eine Verbindung mit Azure Event Hubs herzustellen. Details zu Umgebungsvariablen finden Sie unter Integrieren von Azure Event Hubs in Service Verbinden or.
Nächste Schritte
Arbeiten Sie das unten aufgeführte Tutorial durch, um mehr über den Dienstconnector zu erfahren.