Kom igång med RBAC

Ställ in rollbaserad åtkomstkontroll (RBAC) i Azure Databricks så att användare och tjänsthuvudnamn kan anta roller med de behörigheter de behöver för varje uppgift. Välj en grupp att använda som roll, ge tillstånd att anta den och konfigurera dess åtkomst. För behörighetsmodellen, se Rollbaserad åtkomstkontroll (RBAC).

Kravspecifikation

  • Ett arbetsområde med aktiverad identitetsfederation. Se Identitetsfederation.
  • RBAC aktiverat på konto- och arbetsytsnivå. Se Aktivera RBAC för inställningar och arbetsytans standardinställningar.
  • Behörigheter för kontoadministratör eller arbetsyteadministratör för att skapa grupper och tilldela dem till arbetsytor.
  • Hantera behörighet i rollgruppen för att bevilja eller återkalla Assume-behörigheten. Kontoadministratörer kan hantera alla grupper. Workspace-administratörer får behörigheten Hantera för grupper de skapar. Se Vem kan hantera grupper?.
  • behörigheter för arbetsyteadministratör för att hantera en befintlig grupps behörigheter för arbetsyta.
  • Behörighet att bevilja åtkomst till de data-, beräknings- och arbetsyteresurser som rollen behöver. De nödvändiga behörigheterna beror på vilka resurser du väljer.

Olika administratörer kan utföra dessa uppgifter. Gruppansvariga kan hantera gruppbehörigheter via API:et. Se Hantera behörigheter för en grupp.

Aktivera RBAC

RBAC är redan aktiverat för de flesta kunder. Om du är osäker på om det är aktiverat för ditt konto och dina arbetsytor, kontrollera dessa inställningar:

  1. Som kontoadministratör, se till att rollbaserad åtkomstkontroll (RBAC) på kontonivå är aktiverat på Previews-sidan för kontot.
  2. Som administratör för arbetsytan, se till att rollbaserad åtkomstkontroll (RBAC) är aktiverad på sidan för arbetsytans förhandsvisningar.

Att aktivera kontoinställningen gör arbetsyteinställningen tillgänglig. RBAC är som standard aktiverat i arbetsytor utan säkerhetsprofilen för efterlevnad. I arbetsytor med profilen är RBAC som standard inaktiverat och en arbetsytadministratör måste aktivera det. En uttryckligen sparad arbetsyteinställning går före dessa standardinställningar.

Välj eller skapa en roll

I Azure Databricks implementeras en roll som en kontogrupp. Du kan använda en grupp skapad i Azure Databricks eller en extern grupp från Microsoft Entra ID. Externa grupper är också kontogrupper. För gruppkällor och hur kontogrupper skiljer sig från arbetsplatslokalgrupper, se Gruppkällor.

Bestäm om gruppen ska ha medlemmar:

  • Medlemmarna ärver gruppens behörigheter, inklusive behörigheter från dess modergrupper, som en del av sin egen identitet. Medlemmar kan anta gruppens roll för att begränsa en session till gruppens behörigheter och samarbeta kring tillgångar som ägs av gruppen.
  • Du kan ge Assume-behörigheten direkt till icke-medlemmar utan att lägga till dem som medlemmar, så de ärver inte gruppens behörigheter som sin egen identitet. För ett mönster som kräver ett medvetet övertagande av en roll för att komma åt data, använd en tom grupp och låt den vara tom. Se handledning: modellens exklusiva åtkomst med RBAC.

För att skapa en roll på kontonivå:

Kontokonsol

  1. Logga in på kontokonsolen som kontoadministratör.
  2. I sidofältet klickar du på Användarhantering.
  3. På fliken Grupper klickar du på Lägg till grupp.
  4. Ange ett namn för rollen och klicka sedan på Bekräfta.
  5. Lägg till medlemmar endast om de också ska ärva gruppens behörigheter för sina egna identiteter.

Administratörsinställningar för arbetsyta

  1. Som arbetsyteadministratör loggar du in på Azure Databricks-arbetsytan.
  2. Klicka på ditt användarnamn i det övre fältet och välj Inställningar.
  3. Klicka på fliken Identitet och åtkomst .
  4. Bredvid Grupper klickar du på Hantera.
  5. Klicka på Lägg till grupp, sedan Lägg till ny.
  6. Ange ett namn för rollen och välj de rättigheter den behöver. Se Konfigurera åtkomst till arbetsytan.
  7. Klicka på Lägg till.
  8. Lägg till medlemmar endast om de också ska ärva gruppens behörigheter för sina egna identiteter.

Detta tilldelar också gruppen till arbetsytan. Du får behörigheten Hantera för gruppen, vilket gör att du kan hantera medlemskap och ge behörigheten Assume.

Databricks rekommenderar att använda ett konsekvent prefix, såsom role-, för att särskilja grupper som används som roller. Till exempel, använd role-study-1 för en roll och trial-researchers för en grupp vars medlemmar kan ikläda sig den.

För gruppsynkroniseringsprocedurer, se Hantera Azure Databricks grupper.

Valfritt: Använd Account Groups API

Du kan också skapa och hantera grupper med hjälp av Account Groups API. För endpoints och exempel, se Hantera grupper med API:et.

Hantera behörigheten Assume

Användare och tjänsthuvudnamn kan anta en roll när de har Assume-behörigheten, antingen direkt eller genom gruppmedlemskap. Ge tillstånd till gruppen som implementerar rollen. Gruppmedlemmar har automatiskt tillståndet Assume, så du behöver bara explicita beviljanden för icke-medlemmar.

För att ge Assume-behörigheten, använd antingen kontokonsolen eller administratörsinställningarna för arbetsytan:

Kontokonsol

  1. Som kontoadministratör, öppna Användarhantering> och välj rollens grupp.
  2. Klicka på Behörigheter, sedan Bevilja åtkomst.
  3. Välj användaren, service principal eller kontogruppen som ska kunna anta rollen.
  4. Välj Antag och klicka sedan på Spara.

Administratörsinställningar för arbetsyta

  1. Som arbetsområdesadministratör med behörighet Hantera i rollen, öppna Inställningar>Identitet och åtkomst.
  2. Bredvid Grupper, klicka på Hantera och välj sedan rollens grupp.
  3. Klicka på Behörigheter, sedan Bevilja åtkomst.
  4. Välj användaren, service principal eller kontogruppen som ska kunna anta rollen.
  5. Välj Antag och klicka sedan på Spara.

När du ger behörigheten Assume till en grupp kan dess medlemmar anta rollen. De behöver inte vara medlemmar i själva rollen. Du kan också ge Assume-behörigheten direkt till enskilda användare eller service principals.

För att återkalla behörigheten Assume, ta bort det tillämpliga beviljandet. Kontrollera om huvudobjektet fortfarande kan ta över rollen genom medlemskap i rollen eller genom en annan grupp som fått Assume-behörigheten. Att ta bort ett direkt beviljande tar inte bort de andra sätten.

Begränsa Hantera för rollen till administratörerna som ansvarar för dess medlemskap och behörigheter. En identitet med Manage kan ge andra behörigheten Assume. Se Hantera behörigheter för en grupp för kontokonsol- och workspace-admin-procedurer, eller Ge eller återkalla Assume-behörigheten för en grupp för Access Control API:et.

Konfigurera åtkomst till arbetsytan

Tilldela rollen till varje arbetsyta där den borde vara tillgänglig. Kontoadministratörer och arbetsytsadministratörer kan tilldela grupper till arbetsytor. Se Tilldela en grupp till en arbetsyta.

Varje åtkomsträtt ger tillgång till en specifik uppsättning funktioner i arbetsytan. Välj de behörigheter rollen behöver:

  • Åtkomst till arbetsytan: Ger tillgång till kärnfunktioner i arbetsytan som anteckningsböcker och jobb.
  • Databricks SQL-åtkomst: Ger åtkomst till Databricks SQL-funktioner, inklusive instrumentpaneler, frågor och SQL-lager.

Se Åtkomstberättiganden för alla åtkomstberättiganden, inklusive Consumer access, och hur man hanterar dem. Välj rollens rättigheter explicit istället för att förlita dig på arbetsytans standardrättigheter. Se Översikt.

Bestäm om användare också ska tilldelas arbetsytan som sina egna identiteter:

  • Användare med en direkt eller ärvd arbetsytetilldelning och en åtkomsträtt kan logga in som sig själva och byta till en roll de har behörighet att anta.
  • Användare utan en direkt eller ärvd arbetsytetilldelning måste ha en roll som tilldelats den arbetsytan för att komma in. De behöver behörigheten Assume för rollen, och rollen behöver ett åtkomstberättigande. Se handledning: Kräv att användare antar en roll för åtkomst till arbetsytan.

Behörigheten Assume styr vem som kan använda rollen. Arbetsyte-tilldelningar styr var det är tillgängligt, och åtkomsträttigheter styr vilka arbetsytefunktioner det kan använda. Ge dataåtkomsträttigheter och behörigheter på beräknings- och arbetsytobjekt separat.

Ge åtkomst till resurser

Ge rollen de behörigheter som behövs för dess uppgift:

  • Data: Bevilja Unity Catalog-behörigheter med SQL eller Catalog Explorer. För att kunna läsa en tabell krävs USE CATALOG i katalogen, USE SCHEMA i schemat och SELECT i tabellen. Privilegier som SELECT ges på en katalog eller ett schema gäller också för dess nuvarande och framtida barnobjekt. Se Behörighetsarv och Hantera behörigheter i Unity Catalog.
  • Compute: Ge tillstånd att använda den valda beräkningsresursen. För ett SQL warehouse, bevilja Can use för att låta rollen köra frågor. Se Hantera ett SQL-lager. Information om dedikerad beräkning som har tilldelats en grupp finns i Åtkomst till dedikerad beräkningsgrupp.
  • Workspace-objekt: Använd åtkomstkontrolllistor (ACL) för att ge tillgång till anteckningsböcker, jobb och andra workspace-objekt. Se Åtkomstkontrollistorna.

Roller ärver behörigheter från sina överordnade grupper. Som standard ärver dina roller också behörigheter som ges till arbetsområdets users systemgrupp och kontots account users systemgrupp. Att ändra delade behörigheter påverkar andra användare och roller som ärver dem. Se hur rollbehörigheter gäller.

Om användare som agerar i rollen inte får dela arbetsytstillgångar som rollen äger, konfigurera kontroller för delning av arbetsytstillgångar.

Använd och verifiera roll

En användare eller tjänsteprincipal med tillståndet Anta, autentiserar sig som rollen med en metod i Switch RBAC-roller. Kontrollera att rollen kan komma åt de nödvändiga resurserna och får behörighetsfel för resurser utanför dess avsedda åtkomst. Jämför dessa resultat med samma identitet som agerar utan någon tilldelad roll.

För data som styrs av attributbaserad åtkomstkontroll (ABAC) utvärderar policyer den aktiva rollen. Se Använd RBAC med ABAC för beteendet för identitetsfunktioner och kombinerade användningsmönster.

Verifiera granskningsattribution

Kör en fråga med system.access.audit från en Unity Catalog-aktiverad arbetsyta i samma konto- och molnregion som arbetsytan där du testade rollen. Revisionsläsaren behöver USE CATALOG på system, USE SCHEMA på system.access, SELECT på system.access.audit, och behörighet för att använda query compute. Se Bevilja åtkomst till systemtabeller.

Identitetsmetadatafälten särskiljer identiteterna som är involverade i en händelse:

  • run_by: identiteten som initierade händelsen.
  • run_as: identiteten som används för auktorisationen.
  • run_by_display_name och run_as_display_name: motsvarande mänskligt läsbara namn.

För interaktiva förfrågningar som görs medan man antar en IAM-roll, run_by identifierar användaren och run_as identifierar rollen. För jobbbelastningar identifierar run_by Jobs-tjänstens applikationstjänsthuvudnamn. Se Ange Kör som för en grupp.

Filtrera efter workspace_id och event_date för att hitta din testaktivitet. Tabelldata för revisionssystemet uppdateras under dagen och stöder inte realtidsövervakning. Om en nyligen inträffad händelse saknas, kolla igen senare. Se Referens för systemtabeller för granskningsloggen och Referens för systemtabeller.

Ytterligare resurser

Välj en handledning för en komplett installation och verifieringsprocess:

Innan du tillämpar en roll på andra arbetsbelastningar, granska begränsningarna för rollbaserad åtkomstkontroll (RBAC).