Autentisering för analys i molnskala i Azure
Autentisering är en process för att verifiera identiteten för en användare eller ett program. Vi rekommenderar att du använder en identitetsprovider med en enda källa för att hantera identitetshantering och autentisering. Den här providern kallas för en katalogtjänst. Den tillhandahåller sätt att lagra katalogdata och gör dessa data tillgängliga för nätverksanvändare och administratörer.
Alla datasjölösningar bör använda och integreras med en befintlig katalogtjänst. För de flesta organisationer är katalogtjänsten för alla identitetsrelaterade tjänster Microsoft Entra-ID. Det är den primära och centraliserade databasen för alla tjänst- och användarkonton.
I molnet är Microsoft Entra ID en centraliserad identitetsprovider och önskad källa för identitetshantering. Delegera autentisering och auktorisering till Microsoft Entra-ID för att använda funktioner som principer för villkorlig åtkomst som kräver att en användare befinner sig på en viss plats. Microsoft Entra-ID stöder också multifaktorautentisering, vilket ökar åtkomstsäkerheten. Du bör konfigurera datatjänster genom att integrera Microsoft Entra-ID när det är möjligt.
Om dina datatjänster inte stöder Microsoft Entra-ID bör du utföra autentisering med hjälp av en åtkomstnyckel eller token. Du bör lagra åtkomstnyckeln i ett nyckelhanteringsarkiv, till exempel Azure Key Vault.
Autentiseringsscenarier för analys i molnskala är:
- Användarautentisering. I det här scenariot autentiserar Microsoft Entra-ID användare med sina autentiseringsuppgifter.
- Tjänst-till-tjänst-autentisering. I det här scenariot autentiserar Azure-resurser tjänster med hjälp av hanterade identiteter, som Azure automatiskt hanterar.
- Program-till-tjänst-autentisering. I det här scenariot autentiserar program tjänster med hjälp av tjänstens huvudnamn.
Autentiseringsscenarier
I följande avsnitt beskrivs var och en av autentiseringsscenarierna: användarautentisering, tjänst-till-tjänst-autentisering och program-till-tjänst-autentisering.
Användarautentisering
Användare som ansluter till en datatjänst eller resurs måste presentera en autentiseringsuppgift. Den här autentiseringsuppgiften bevisar att användarna är de som de påstår sig vara. Sedan kan de komma åt tjänsten eller resursen. Autentisering gör det också möjligt för tjänsten att känna till användarnas identitet. Tjänsten bestämmer vad en användare kan se och göra när identiteten har verifierats.
Azure Data Lake Storage, Azure SQL Database, Azure Synapse Analytics och Azure Databricks stöder Microsoft Entra ID-integrering. Det interaktiva användarautentiseringsläget kräver att användarna anger autentiseringsuppgifter i en dialogruta.
Viktigt!
Hårdkoda inte användarautentiseringsuppgifter i ett program i autentiseringssyfte.
Tjänst-till-tjänst-autentisering
När en tjänst får åtkomst till en annan tjänst utan mänsklig interaktion måste den innehålla en giltig identitet. Denna identitet bevisar tjänstens äkthet och tillåter den tjänst som nås att avgöra vilka åtgärder som tillåts.
I scenarier för tjänst-till-tjänst-autentisering rekommenderar vi att du använder hanterade identiteter för att autentisera Azure-tjänster. Hanterade identiteter för Azure-resurser tillåter autentisering till alla tjänster som stöder Microsoft Entra-autentisering utan några explicita autentiseringsuppgifter. Mer information finns i Vad är hanterade identiteter för Azure-resurser.
Hanterade identiteter är tjänstehuvudnamn som enbart kan användas med Azure-resurser. Du kan till exempel skapa en hanterad identitet för en Azure Data Factory-instans. Microsoft Entra ID registrerar den här hanterade identiteten som ett objekt som representerar Data Factory-instansen. Du kan sedan använda den här identiteten för att autentisera till alla tjänster, till exempel Data Lake Storage, utan några autentiseringsuppgifter i koden. Azure hanterar de autentiseringsuppgifter som tjänstinstansen använder. Identiteten kan autentisera Azure-tjänstresurser, till exempel en mapp i Data Lake Storage. När du tar bort Data Factory-instansen tar Azure bort identiteten i Microsoft Entra-ID:t.
Fördelar med att använda hanterade identiteter
Använd hanterade identiteter för att autentisera en Azure-tjänst till en annan Azure-tjänst eller resurs. Hanterade identiteter ger följande fördelar:
- En hanterad identitet representerar den tjänst som den skapas för. Den representerar inte en interaktiv användare.
- Autentiseringsuppgifter för hanterade identiteter underhålls, hanteras och lagras i Microsoft Entra-ID. Det finns inget lösenord för en användare att behålla.
- När du använder hanterade identiteter använder klienttjänsterna inte lösenord.
- Den systemtilldelade hanterade identiteten tas bort när tjänstinstansen tas bort.
Dessa fördelar innebär att autentiseringsuppgifterna skyddas bättre och att säkerhetskompromisser är mindre sannolika.
Program-till-tjänst-autentisering
Ett annat åtkomstscenario är när ett program, till exempel en mobil- eller webbapp, kommer åt en Azure-tjänst. Programmet måste presentera sin identitet, som sedan måste verifieras.
Azure service principal är ett alternativ för program och tjänster som inte stöder hanterade identiteter för autentisering till Azure-resurser. Ett huvudnamn för tjänsten är en identitet som skapas specifikt för program, värdbaserade tjänster och automatiserade verktyg för åtkomst till Azure-resurser. De roller som tilldelats service principalen styr dess åtkomst. Av säkerhetsskäl rekommenderar vi att du använder tjänstprincipaler med automatiserade verktyg eller program istället för att tillåta dem att logga in med en användaridentitet. Mer information finns i Program- och tjänsthuvudnamnsobjekt i Microsoft Entra-ID.
Skillnader mellan hanterade identiteter och tjänstens huvudnamn
Tjänstens huvudnamn | Hanterade identiteter |
---|---|
En säkerhetsidentitet som du skapar manuellt i Microsoft Entra-ID för program, tjänster och verktyg som behöver åtkomst till specifika Azure-resurser. | En särskild typ av tjänstens huvudnamn. Det är en automatisk identitet som skapas när en Azure-tjänst skapas. |
Används av program eller tjänster och är inte knutna till en specifik Azure-tjänst. | Representerar en azure-tjänstinstans. Det kan inte användas för att representera andra Azure-tjänster. |
Har en oberoende livscykel. Du måste ta bort den explicit. | Tas bort automatiskt när Azure-tjänstinstansen tas bort. |
Lösenordsbaserad eller certifikatbaserad autentisering. | Inget explicit lösenord behöver anges för autentisering. |
Kommentar
Både hanterade identiteter och tjänstens huvudnamn skapas och underhålls endast i Microsoft Entra-ID.
Metodtips för autentisering i analys i molnskala
Det är av största vikt att implementera robusta och säkra autentiseringsmetoder i molnskala. Metodtips för autentisering gäller för olika skikt i en lösning, inklusive databaser, lagring och analystjänster. Genom att använda Microsoft Entra-ID kan organisationer förbättra säkerheten med hjälp av funktioner som multifaktorautentisering och principer för villkorlig åtkomst.
Lager | Tjänst | Rekommendation |
---|---|---|
Databaser | – SQL Database – SQL Managed Instance – Azure Synapse Analytics – Azure Database for MySQL – Azure Database for PostgreSQL |
Använd Microsoft Entra-ID för autentisering med databaser som Azure Database for PostgreSQL, Azure SQLoch Azure Database for MySQL. |
Lagring | Data Lake Storage | Använd Microsoft Entra-ID för autentisering för säkerhetsobjekt, till exempel användare, grupp- och tjänsthuvudnamn eller hanterade identiteter, med Data Lake Storage i stället för en delad nyckel eller signaturer för delad åtkomst. Den här metoden hjälper till att förbättra säkerheten eftersom den stöder principer för multifaktorautentisering och villkorlig åtkomst. |
Lagring | Data Lake Storage från Azure Databricks | Anslut till Data Lake Storage med hjälp av Unity Catalog istället för direkt åtkomst på lagringsnivå genom att skapa en lagringsautentiseringsuppgift som använder en hanterad identitet och en extern location. |
Analytics | Azure Databricks | Använd System for Cross-domain Identity Management för att synkronisera användare och grupper från Microsoft Entra ID. Om du vill komma åt Azure Databricks-resurser med hjälp av REST-API:er använda OAuth med ett Azure Databricks-tjänsthuvudnamn. |
Viktigt!
Genom att ge Azure Databricks-användare direkt åtkomst på lagringsnivå till Data Lake Storage kringgås Unity Catalogs behörigheter, granskningar och säkerhetsfunktioner, inklusive åtkomstkontroll och övervakning. För att skydda och styra data bättre bör Unity Catalog hantera åtkomst till data som lagras i Data Lake Storage för Azure Databricks-arbetsyteanvändare.