为 Azure 数据资源管理器 添加群集主体

Azure 数据资源管理器是一项快速且高度可缩放的数据探索服务,适用于日志和遥测数据。 本文介绍如何使用 C#、Python 或 Azure 资源管理器 (ARM) 模板为 Azure 数据资源管理器 添加群集主体。

先决条件

先决条件因用于添加主体的方法而异。 请选择与你的首选方法相关的选项卡。

以下列表概述了使用 C# 添加群集主体的先决条件。

添加群集主体

运行以下代码以添加群集主体:

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 = await ApplicationTokenProvider.LoginSilentAsync(tenantId, clientId, clientSecret);
var kustoManagementClient = new KustoManagementClient(credentials) { SubscriptionId = subscriptionId };
var resourceGroupName = "testrg";
//The cluster that is created as part of the Prerequisites
var clusterName = "mykustocluster";
var clusterPrincipalAssignmentName = "mykustoclusterprincipalassignment";
var principalId = "xxxxxxxx-xxxxx-xxxx-xxxx-xxxxxxxxx"; //User email, application ID, or security group name
var role = "AllDatabasesAdmin"; //AllDatabasesAdmin or AllDatabasesViewer
var tenantIdForPrincipal = "xxxxxxxx-xxxxx-xxxx-xxxx-xxxxxxxxx";
var principalType = "App"; //User, App, or Group
var clusterPrincipalAssignmentData = new ClusterPrincipalAssignment(
    principalId: principalId, role: role, principalType: principalType, tenantId: tenantIdForPrincipal
);
await kustoManagementClient.ClusterPrincipalAssignments.CreateOrUpdateAsync(
    resourceGroupName, clusterName, clusterPrincipalAssignmentName, clusterPrincipalAssignmentData
);
设置 建议的值 字段说明
tenantId xxxxxxxx-xxxxx-xxxx-xxxx-xxxxxxxxx 租户 ID。 也称为目录 ID。
subscriptionId xxxxxxxx-xxxxx-xxxx-xxxx-xxxxxxxxx 用于创建资源的订阅 ID。
clientId xxxxxxxx-xxxxx-xxxx-xxxx-xxxxxxxxx 可以访问租户中资源的应用程序的客户端 ID。
clientSecret PlaceholderClientSecret 可以访问租户中资源的应用程序的客户端密码。
resourceGroupName testrg 包含群集的资源组的名称。
clusterName mykustocluster 群集的名称。
principalAssignmentName clusterPrincipalAssignment1 群集主体资源的名称。
principalId xxxxxxxx-xxxxx-xxxx-xxxx-xxxxxxxxx 主体 ID,可以是用户电子邮件、应用程序 ID 或安全组名称。
角色 (role) AllDatabasesAdmin 群集主体的角色,可以是“AllDatabasesAdmin”、“AllDatabasesMonitor”或“AllDatabasesViewer”。
tenantIdForPrincipal xxxxxxxx-xxxxx-xxxx-xxxx-xxxxxxxxx 主体的租户 ID。
principalType 应用 主体的类型,可以是“User”、“App”或“Group”

后续步骤