Kiracılar arası veri bağlantısı
Farklı bir kiracıdaki Azure Event Hubs veya Azure Event Grid hizmeti için veri bağlantısı oluşturmanız gerektiğinde, bağlantıyı oluşturmak için Veri Bağlantıları Oluşturma API kullanın.
Bu makalede PowerShell kullanarak kiracılar arası Event Hubs veri bağlantısı oluşturmayı ve kimlik doğrulaması yardımcı belirteçleri öğreneceksiniz.
- Azure aboneliğiniz yoksa başlamadan önce ücretsiz bir Azure hesabı oluşturun.
- Kiracı1bir Olay Hub'ı oluşturun. Bu, kaynak Event Hubs'ı barındıran kiracıdır.
- Tenant2içinde bir test kümesi ve veritabanı oluşturun. Bu, hedef kümeyi barındıran kiracıdır.
- Hem kiracılara hem de çok kiracılı hizmet sorumlusuna erişimi olan tek bir Entra hesabı.
Entra hesabı veya çok kiracılı hizmet sorumlusu en az aşağıdaki izinlere sahip olmalıdır:
Not
Hesap, önkoşul izinlerine sahip olduğu sürece yerel veya Kiracı1 veya Kiracı2'ye konuk olabilir. İzinler Event Hubs düzeyinde değil Ad Alanı düzeyinde olmalıdır.
Azure portalında Event Hubs ad alanınıza göz atın.
Sol menüde Erişim denetimi (IAM) >rol atamaları ekle'yi seçin.
Rol ataması ekle penceresinde, tabloya ayarları girin ve ardından kaydet seçin.
Ayar Önerilen değer Role Azure Event Hubs Veri Sahibi Şu kişiye erişim ata: Kullanıcı, grup veya hizmet sorumlusu Seç Entra kullanıcısının veya Hizmet Sorumlusu Kimliğinin e-posta adresi
Azure portalında Veri Gezgini kümenize göz atın.
Sol menüde Erişim denetimi (IAM) >rol atamaları ekle'yi seçin.
Rol ataması ekle penceresinde, tablodaki ayarları girin ve ardından kaydet seçin.
Ayar Önerilen değer Role Katkıda Bulunan Şu kişiye erişim ata: Kullanıcı, grup veya hizmet sorumlusu Seç Entra kullanıcısının veya Hizmet Sorumlusu Kimliğinin e-posta adresi
PowerShell kullanarak küme ile Event Hubs arasında kiracılar arası veri bağlantısı kurun.
başlamadan önce
Tenant1erişim belirtecini almak için Get-AzCachedAccessToken
işlevini oluşturun. İşlevin kaynak kodu PowerShell galerisinde bulunabilir. Aramayı kolaylaştırmak için bu kodu kişisel PowerShell profilinize ekleyebilir veya çalıştırıp bu adımlarda kullanabilirsiniz.
- Entra hesabı
- hizmet sorumlusu hesabı
Tenant1Event Hubs aboneliğine bağlanmak için aşağıdaki komutu çalıştırın:
Connect-AzAccount -TenantId <Tenant ID> -Subscription "<SubscriptionName>"
Tenant1erişim belirtecini depolamak için bir değişken ekleyin:
$tokenfromtenant1 = Get-AzCachedAccessToken
Tenant1 için bir yardımcı belirteç değişkeni ekleyin:
$auxpat="Bearer $tokenfromtenant1"
Tenant2küme aboneliğine bağlanmak için aşağıdaki komutu çalıştırın:
Connect-AzAccount -TenantId <Tenant ID> -SubscriptionId "<SubscriptionName>"
Tenant2 belirteciyle bir değişken ekleyin:
$tokenfromtenant2 = Get-AzCachedAccessToken
Birincil belirteç olarak kullanılacak bir
pat
değişken ekleyin:$pat="Bearer $tokenfromtenant2"
Web isteği çağrılırken Olay Hub'ı kaynağı olarak kullanmak üzere bir HTTP gövde isteği değişkeni ekleyin:
$requestbody ='{"location": "Australia East","kind": "EventHub","properties": { "eventHubResourceId": "/subscriptions/<subscription ID>/resourceGroups/<ResourceGroupName>/providers/Microsoft.EventHub/namespaces/<EventHubNamespaceName>/eventhubs/<EventHubName>","consumerGroup": "$Default","dataFormat": "JSON", "tableName": "<ADXTableName>", "mappingRuleName": "<ADXTableMappingName>"}}'
Web isteğini çağırırken küme kaynağı olarak kullanmak için bir URI değişkeni ekleyin:
$adxdcuri="https://management.azure.com/subscriptions/<subscriptionID>/resourceGroups/<resource group name>/providers/Microsoft.Kusto/clusters/<ADXClusterName>/databases/<ADXdbName>/dataconnections/<ADXDataConnectionName>?api-version=2020-02-15"
Veri bağlantısını oluşturmak için önceden tanımlanmış değişkenleri kullanan aşağıdaki web isteğini çağırın:
Invoke-WebRequest -Headers @{Authorization = $pat; 'x-ms-authorization-auxiliary' = $auxpat} -Uri $adxdcuri -Body $requestbody -Method PUT -ContentType 'application/json'
bitirdikten sonra
Azure portalında yeni oluşturulan veri bağlantısını görebildiğinizi doğrulayın.
İsteğe bağlı: Veri bağlantısını kurduktan sonra, Entra Hesabı veya Hizmet Sorumlusu için daha önce verilen izinleri iptal edebilir veya silebilirsiniz. Küme alımı Event Hubs anahtarlarını kullandığından bu izinler artık gerekli değildir.
Önemli
Birincil veya ikincil Event Hubs anahtarları döndürülürse, veri alımı çalışmayı durdurabilir. Bu durumda veri bağlantısını bırakmanız ve yeniden oluşturmanız gerekir.