Entità e provider di identitàPrincipals and Identity Providers

Il modello di autorizzazione kusto supporta diversi provider di identità (IDP) e più tipi di entità.Kusto Authorization model supports several Identity Providers (IdPs) and multiple principal types. Questo articolo esamina i tipi di entità supportati e ne illustra l'uso con i comandi di assegnazione di ruolo.This article reviews the supported principal types and demonstrates their use with role assignment commands.

Azure Active DirectoryAzure Active Directory

Azure Active Directory (AAD) è il provider di identità e il servizio directory cloud multi-tenant preferito di Azure, in grado di autenticare entità di sicurezza o di eseguire la Federazione con altri provider di identità, ad esempio Active Directory di Microsoft.Azure Active Directory (AAD) is Azure's preferred multi-tenant cloud directory service and Identity Provider, capable of authenticating security principals or federating with other identity providers, such as Microsoft's Active Directory.

AAD è il metodo preferito per l'autenticazione a kusto.AAD is the preferred method for authenticating to Kusto. Supporta diversi scenari di autenticazione:It supports a number of authentication scenarios:

  • Autenticazione utente (accesso interattivo): usata per autenticare le entità umane.User authentication (interactive logon): Used to authenticate human principals.
  • Autenticazione applicazione (accesso non interattivo): usata per autenticare i servizi e le applicazioni che devono essere eseguiti o autenticati senza che sia presente un utente umano.Application authentication (non-interactive logon): Used to authenticate services and applications that have to run/authenticate with no human user being present.

Nota

Azure Active Directory non consente l'autenticazione degli account del servizio, ovvero per definizione di entità AD locali.Azure Active Directory does not allow authentication of service accounts (that are by definition on-prem AD entities). L'equivalente di AAD dell'account del servizio Active Directory è l'applicazione di AAD.The AAD equivalent of AD service account is the AAD application.

Entità gruppo AADAAD Group principals

Kusto supporta solo le entità del gruppo di sicurezza e non quelle del gruppo di distribuzione.Kusto only supports Security Group principals (and not Distribution Group ones). Il tentativo di configurare l'accesso per una DG in un cluster kusto comporterà un errore.Attempt to set up access for a DG on a Kusto cluster will result in an error.

Tenant di AADAAD Tenants

Se il tenant AAD non viene specificato in modo esplicito, kusto tenterà di risolverlo dall'UPN (UniversalPrincipalName, ad esempio, johndoe@fabrikam.com ), se specificato.If AAD tenant is not explicitly specified, Kusto will attempt to resolve it from the UPN (UniversalPrincipalName, e.g., johndoe@fabrikam.com), if provided. Se l'entità non include le informazioni sul tenant (non in formato UPN), è necessario menzionarle in modo esplicito aggiungendo l'ID o il nome del tenant al descrittore principale.If your principal doesn't include the tenant information (not in UPN form), you must explicitly mention it by appending the tenant ID or name to the principal descriptor.

Esempi per le entità AADExamples for AAD principals

Tenant AADAAD Tenant TypeType SintassiSyntax
Implicito (UPN)Implicit (UPN) UtenteUser aaduser=UserEmailAddressaaduser=UserEmailAddress
Esplicito (ID)Explicit (ID) UtenteUser aaduser=UserEmailAddress ; TenantId o aaduser= ObjectID ; TenantIdaaduser=UserEmailAddress;TenantId or aaduser=ObjectID;TenantId
Esplicito (nome)Explicit (Name) UtenteUser aaduser=UserEmailAddress ; TenantName o aaduser= objectidname ; TenantNameaaduser=UserEmailAddress;TenantName or aaduser=ObjectID;TenantName
Implicito (UPN)Implicit (UPN) GruppoGroup aadgroup=GroupEmailAddressaadgroup=GroupEmailAddress
Esplicito (ID)Explicit (ID) GruppoGroup aadgroup=GroupObjectId ; TenantId o aadgroup= GroupDisplayName ; TenantIdaadgroup=GroupObjectId;TenantId oraadgroup=GroupDisplayName;TenantId
Esplicito (nome)Explicit (Name) GruppoGroup aadgroup=GroupObjectId ; TenantName o aadgroup= GroupDisplayName ; TenantNameaadgroup=GroupObjectId;TenantName oraadgroup=GroupDisplayName;TenantName
Esplicito (UPN)Explicit (UPN) AppApp aadapp=ApplicationDisplayName ; TenantIdaadapp=ApplicationDisplayName;TenantId
Esplicito (nome)Explicit (Name) AppApp aadapp=ApplicationID ; TenantNameaadapp=ApplicationId;TenantName
// No need to specify AAD tenant for UPN, as Kusto performs the resolution by itself
.add database Test users ('aaduser=imikeoein@fabrikam.com') 'Test user (AAD)'

// AAD SG on 'fabrikam.com' tenant
.add database Test users ('aadgroup=SGDisplayName;fabrikam.com') 'Test group @fabrikam.com (AAD)'

// AAD App on 'fabrikam.com' tenant - by tenant name
.add database Test users ('aadapp=4c7e82bd-6adb-46c3-b413-fdd44834c69b;fabrikam.com') 'Test app @fabrikam.com (AAD)'

Account MicrosoftMicrosoft Accounts (MSAs)

Con account Microsoft si intendono tutti gli account utente non aziendali gestiti da Microsoft, ad esempio hotmail.com, live.com, outlook.com.Microsoft Accounts (MSAs) is the term for all the Microsoft-managed non-organizational user accounts, e.g. hotmail.com, live.com, outlook.com. Kusto supporta l'autenticazione utente per gli account Microsoft (si noti che non esiste alcun concetto di gruppi di sicurezza), identificati dal nome dell'entità utente (UPN).Kusto supports user authentication for MSAs (note, that there is no security groups concept), which are identified by their UPN (Universal Principal Name). Quando un'entità di sicurezza account Microsoft viene configurata su una risorsa Kusto, Kusto non tenterà di risolvere l'UPN fornito.When an MSA principal is configured on a Kusto resource, Kusto will not attempt to resolve the UPN provided.

Esempi per le entità MSAExamples for MSA principals

IdPIdP TypeType SintassiSyntax
Live.comLive.com UtenteUser msauser=john.doe@live.com\`msauser=john.doe@live.com\`
.add database Test users ('msauser=john.doe@live.com') 'Test user (live.com)'