Partilhar via


Adicionar principais de cluster para o Azure Data Explorer

O Azure Data Explorer é um serviço de exploração de dados rápido e altamente dimensionável para dados telemétricos e de registo. Neste artigo, irá aprender a adicionar principais de cluster para o Azure Data Explorer através de C#, Python ou um modelo do Azure Resource Manager (ARM).

Pré-requisitos

Os pré-requisitos variam consoante o método utilizado para adicionar o principal. Selecione o separador relevante para o seu método preferencial.

A lista seguinte descreve os pré-requisitos para adicionar um principal de cluster com C#.

Adicionar um principal de cluster

Execute o seguinte código para adicionar um principal de cluster:

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
);
Definição Valor sugerido Descrição do campo
tenantId xxxxxxxx-xxxxx-xxxx-xxxx-xxxxxxxxxxx O ID do inquilino. Também conhecido como ID de diretório.
subscriptionId xxxxxxxx-xxxxx-xxxx-xxxx-xxxxxxxxxxx O ID da subscrição que utiliza para a criação de recursos.
clientId xxxxxxxx-xxxxx-xxxx-xxxx-xxxxxxxxxxx O ID de cliente da aplicação que pode aceder aos recursos no seu inquilino.
clientSecret Marcador de PosiçãoClientSecret O segredo do cliente da aplicação que pode aceder aos recursos no seu inquilino.
resourceGroupName testrg O nome do grupo de recursos que contém o cluster.
clusterName mykustocluster O nome do cluster.
principalAssignmentName clusterPrincipalAssignment1 O nome do recurso principal do cluster.
principalId xxxxxxxx-xxxxx-xxxx-xxxx-xxxxxxxxxxx O ID principal, que pode ser o e-mail de utilizador, o ID da aplicação ou o nome do grupo de segurança.
role AllDatabasesAdmin A função do principal de cluster, que pode ser "AllDatabasesAdmin", "AllDatabasesMonitor" ou "AllDatabasesViewer".
tenantIdForPrincipal xxxxxxxx-xxxxx-xxxx-xxxx-xxxxxxxxxxx O ID do inquilino do principal.
principalType Aplicação O tipo do principal, que pode ser "Utilizador", "Aplicação" ou "Grupo"

Passos seguintes