Dela via


Översikt över åtkomstkontroll

Azure Data Explorer åtkomstkontroll baseras på autentisering och auktorisering. Varje fråga och kommando på en Azure-Data Explorer resurs, till exempel ett kluster eller en databas, måste klara både autentiserings- och auktoriseringskontroller.

  • Autentisering: Validerar identiteten för det säkerhetshuvudkonto som genomför en begäran
  • Auktorisering: Validerar att säkerhetsobjektet som gör en begäran tillåts att göra den begäran på målresursen

Autentisering

Om du vill autentisera programmässigt med klustret måste en klient kommunicera med Microsoft Entra ID och begära en åtkomsttoken som är specifik för Azure Data Explorer. Sedan kan klienten använda den förvärvade åtkomsttoken som identitetsbevis när begäranden utfärdas till klustret.

De viktigaste autentiseringsscenarierna är följande:

  • Användarautentisering: Används för att verifiera identiteten för mänskliga användare.
  • Programautentisering: Används för att verifiera identiteten för ett program som behöver komma åt resurser utan mänsklig inblandning med hjälp av konfigurerade autentiseringsuppgifter.
  • OBO-autentisering (å OBO:s vägnar): Tillåter att ett program utbyter en token för det programmet med en token för att få åtkomst till en Kusto-tjänst. Det här flödet måste implementeras med MSAL.
  • Spa-autentisering (Single Page Application): Tillåter att SPA-webbprogram på klientsidan loggar in användare och får token för att komma åt klustret. Det här flödet måste implementeras med MSAL.

Anteckning

För användar- och programautentisering rekommenderar vi att du använder Kusto-klientbiblioteken. Om du behöver obo-autentisering (On-behalf-of) eller Single-Page Application (SPA) måste du använda MSAL direkt eftersom dessa flöden inte stöds av klientbiblioteken. Mer information finns i Autentisera med Microsoft Authentication Library (MSAL).

Användarautentisering

Användarautentisering sker när en användare visar autentiseringsuppgifter för Microsoft Entra ID eller en identitetsprovider som federeras med Microsoft Entra ID, till exempel Active Directory Federation Services (AD FS). Användaren får tillbaka en säkerhetstoken som kan visas för Azure Data Explorer-tjänsten. Azure Data Explorer avgör om token är giltig, om token utfärdas av en betrodd utfärdare och vilka säkerhetsanspråk som token innehåller.

Azure Data Explorer stöder följande metoder för användarautentisering, bland annat via Kusto-klientbiblioteken:

  • Interaktiv användarautentisering med inloggning via användargränssnittet.
  • Användarautentisering med en Microsoft Entra token som utfärdats för Azure Data Explorer.
  • Användarautentisering med en Microsoft Entra token utfärdad för en annan resurs som kan bytas ut mot en Azure-Data Explorer-token med OBO-autentisering (Å-behalf-of).

Programautentisering

Programautentisering krävs när begäranden inte är associerade med en viss användare eller när ingen användare är tillgänglig för att ange autentiseringsuppgifter. I det här fallet autentiserar programmet till Microsoft Entra ID eller federerad IdP genom att presentera hemlig information.

Azure Data Explorer stöder följande metoder för programautentisering, bland annat via Kusto-klientbiblioteken:

  • Programautentisering med en hanterad Azure-identitet.
  • Programautentisering med ett X.509v2-certifikat installerat lokalt.
  • Programautentisering med ett X.509v2-certifikat som ges till klientbiblioteket som en byteström.
  • Programautentisering med ett Microsoft Entra program-ID och en Microsoft Entra programnyckel. Program-ID:t och programnyckeln är som ett användarnamn och lösenord.
  • Programautentisering med en tidigare hämtad giltig Microsoft Entra-token som utfärdats till Azure Data Explorer.
  • Programautentisering med en Microsoft Entra token utfärdad för en annan resurs som kan bytas ut mot en Azure-Data Explorer token med OBO-autentisering (å uppdrag av).

Auktorisering

Innan du utför en åtgärd på en Azure-Data Explorer resurs måste alla autentiserade användare klara en auktoriseringskontroll. Azure Data Explorer använder kusto-rollbaserad åtkomstkontrollmodell, där huvudkontona tillskrivas en eller flera säkerhetsroller. Auktorisering beviljas så länge en av de roller som tilldelats användaren gör att de kan utföra den angivna åtgärden. Rollen Databasanvändare ger till exempel säkerhetsobjekt rätt att läsa data för en viss databas, skapa tabeller i databasen med mera.

Associationen mellan säkerhetsobjekt och säkerhetsroller kan definieras individuellt eller med hjälp av säkerhetsgrupper som definieras i Microsoft Entra ID. Mer information om hur du tilldelar säkerhetsroller finns i Översikt över säkerhetsroller.

Gruppauktorisering

Auktorisering kan beviljas till Microsoft Entra ID grupper genom att tilldela en eller flera roller till gruppen.

När auktoriseringen av en användare eller ett programhuvudnamn kontrolleras söker systemet först efter en explicit rolltilldelning som tillåter den specifika åtgärden. Om det inte finns någon sådan rolltilldelning analyserar systemet huvudkontots medlemskap i alla grupper som potentiellt kan auktorisera åtgärden. Om huvudkontot bekräftas vara medlem i någon av dessa grupper godkänns den begärda åtgärden. Om huvudkontot inte är medlem i några sådana grupper godkänns inte auktoriseringskontrollen och åtgärden är inte tillåten.

Anteckning

Kontroll av gruppmedlemskap kan vara resurskrävande. Eftersom gruppmedlemskap inte ändras ofta cachelagras resultatet av medlemskapskontrollerna. Cachelagringstiden varierar och påverkas av faktorer som medlemskapsresultatet (oavsett om huvudkontot är medlem eller inte), typen av huvudnamn (användare eller program), bland annat. Den maximala cachelagringstiden kan sträcka sig upp till tre timmar, medan den minsta varaktigheten är 30 minuter.