Aracılığıyla paylaş


Azure Veri Gezgini için küme sorumluları ekleme

Azure Veri Gezgini, günlük ve telemetri verileri için hızlı ve üst düzeyde ölçeklenebilir veri keşfetme hizmetidir. Bu makalede C#, Python veya Azure Resource Manager (ARM) şablonu kullanarak Azure Veri Gezgini için küme sorumluları eklemeyi öğreneceksiniz.

Önceki SDK sürümlerini temel alan kod örnekleri için arşivlenmiş makaleye bakın.

Önkoşullar

Önkoşullar, sorumluyu eklemek için kullanılan yönteme göre değişir. Tercih ettiğiniz yöntem için ilgili sekmeyi seçin.

Aşağıdaki listede C# ile küme sorumlusu ekleme önkoşulları özetlenmiştir.

Küme sorumlusu ekleme

Küme sorumlusu eklemek için aşağıdaki kodu çalıştırın:

var tenantId = "xxxxxxxx-xxxxx-xxxx-xxxx-xxxxxxxxx"; //Directory (tenant) ID
var clientId = "xxxxxxxx-xxxxx-xxxx-xxxx-xxxxxxxxx"; //Application ID
var clientSecret = "PlaceholderClientSecret"; //Client Secret
var subscriptionId = "xxxxxxxx-xxxxx-xxxx-xxxx-xxxxxxxxx";
var credentials = new ClientSecretCredential(tenantId, clientId, clientSecret);
var resourceManagementClient = new ArmClient(credentials, subscriptionId);
var resourceGroupName = "testrg";
//The cluster that is created as part of the Prerequisites
var clusterName = "mykustocluster";
var subscription = await resourceManagementClient.GetDefaultSubscriptionAsync();
var resourceGroup = (await subscription.GetResourceGroupAsync(resourceGroupName)).Value;
var cluster = (await resourceGroup.GetKustoClusterAsync(clusterName)).Value;
var clusterPrincipalAssignments = cluster.GetKustoClusterPrincipalAssignments(); 
var clusterPrincipalAssignmentName = "mykustoclusterprincipalassignment";
var principalId = "xxxxxxxx-xxxxx-xxxx-xxxx-xxxxxxxxx"; //User email, application ID, or security group name
var role = KustoClusterPrincipalRole.AllDatabasesAdmin; //AllDatabasesAdmin or AllDatabasesViewer
var tenantIdForPrincipal = new Guid("xxxxxxxx-xxxxx-xxxx-xxxx-xxxxxxxxx");
var principalType = KustoPrincipalAssignmentType.App; //User, App, or Group
var clusterPrincipalAssignmentData = new KustoClusterPrincipalAssignmentData
{
    ClusterPrincipalId = principalId, Role = role, PrincipalType = principalType, TenantId = tenantIdForPrincipal
};
await clusterPrincipalAssignments.CreateOrUpdateAsync(
    WaitUntil.Completed, clusterPrincipalAssignmentName, clusterPrincipalAssignmentData
);
Ayar Önerilen değer Alan açıklaması
tenantId xxxxxxxx-xxxxx-xxxx-xxxx-xxxxxxxxx Kiracı kimliğiniz. Dizin kimliği olarak da bilinir.
subscriptionId xxxxxxxx-xxxxx-xxxx-xxxx-xxxxxxxxx Kaynak oluşturmak için kullandığınız abonelik kimliği.
clientId xxxxxxxx-xxxxx-xxxx-xxxx-xxxxxxxxx Kiracınızdaki kaynaklara erişebilen uygulamanın istemci kimliği.
clientSecret PlaceholderClientSecret Kiracınızdaki kaynaklara erişebilen uygulamanın istemci gizli dizisi.
resourceGroupName testrg Kümenizi içeren kaynak grubunun adı.
clusterName mykustocluster Kümenizin adı.
clusterPrincipalAssignmentName mykustoclusterprincipalassignment Küme asıl kaynağınızın adı.
principalId xxxxxxxx-xxxxx-xxxx-xxxx-xxxxxxxxx Kullanıcı e-postası, uygulama kimliği veya güvenlik grubu adı olabilecek asıl kimlik.
rol AllDatabasesAdmin 'AllDatabasesAdmin', 'AllDatabasesMonitor' veya 'AllDatabasesViewer' olabilecek küme sorumlunuzun rolü.
tenantIdForPrincipal xxxxxxxx-xxxxx-xxxx-xxxx-xxxxxxxxx Sorumlunun kiracı kimliği.
principalType Uygulama 'Kullanıcı', 'Uygulama' veya 'Grup' olabilecek sorumlunun türü