Modellens exklusiva åtkomst

Exklusiv åtkomst är ett mönster som innebär att dataåtkomst kräver aktivt val i stället för att vara implicit. Med vanliga behörigheter i Unity Catalog följer behörigheterna användaren: en användare samlar på sig behörigheter över tid och tar med sig dem överallt, så deras åtkomst utgörs av summan av de behörigheter som de har tilldelats direkt och de behörigheter de ärver från alla grupper som de är medlemmar i. Med det exklusiva åtkomstmönstret kan kunder modellera åtkomst till känsliga data som kräver en avsiktlig åtgärd – en användare måste aktivt ta på sig en roll för att nå data i stället för att ha stående åtkomst till dem. Detta hindrar dem från att komma åt data som sin egen identitet och från att blanda data mellan användningsfall, kliniska prövningar, projekt eller klienter.

Exempel på exklusiv åtkomst: Användare 1 kan anta gruppen Studie 1 eller gruppen Studie 2. När Användare 1 agerar som sin egen identitet kan användaren inte köra frågor mot data från någon av studierna. När Användare 1 agerar som gruppen Studie 1 kan användaren endast köra frågor mot data från Studie 1; när användaren agerar som gruppen Studie 2, endast mot data från Studie 2.

För att beskriva det här mönstret använder vi två termer för de olika identiteter som ingår. Dessa är förklarande etiketter, inte formella Azure Databricks terminologi:

  • Åtkomstroll: en grupp utan medlemmar som har behörighet för känsliga data. Användarna antar den här rollen för att få åtkomst till data. Åtkomstrollen måste vara tom: alla medlemmar i åtkomstrollen ärver sina behörigheter direkt och kan nå känsliga data utan att ta på sig rollen, vilket förhindrar exklusiv åtkomst. I Azure Databricks implementeras en åtkomstroll som en grupp.
  • Medlemsgrupp: en grupp vars medlemmar är de användare som får ta på sig åtkomstrollen. Att bevilja behörigheten Assume på åtkomstrollen till medlemsgruppen gör att alla dess medlemmar kan anta rollen. En medlemsgrupp är en förenkling, inte ett krav — du kan också bevilja behörigheten Assume direkt till enskilda användare eller tjänsthuvudnamn. Du slipper hantera Assume-behörigheter för en identitet i taget.

När de har konfigurerats antar användarna åtkomstrollen via någon av de metoder som stöds: rollväxlaren, dedikerade åtkomstlägeskluster som tilldelats till en grupp, CLI, API:et eller BI-verktyg från tredje part. Se Växla roller.

Azure Databricks stöder två metoder för att skapa åtkomstrollen. Välj den som passar bäst för hur din organisation hanterar identiteter:

  • Kontolokal åtkomstroll: Skapa en Azure Databricks kontolokal grupp som åtkomstroll. Lämpligast när det är enklare att skapa en grupp i Azure Databricks än att skapa en ny Microsoft Entra ID-grupp (till exempel när ändringar i Microsoft Entra ID kräver ett IT-ärende eller en intern granskning).
  • Åtkomstroll som synkroniserats från Microsoft Entra ID: Använd en tom Microsoft Entra ID grupp som åtkomstroll, synkroniserad till Azure Databricks via SCIM. Bäst när du redan hanterar grupper i Microsoft Entra ID och föredrar att behålla alla grupplivscykler där.

Requirements

  • En Unity Catalog-aktiverad arbetsyta.
  • Behörighet som kontoadministratör eller arbetsyteadministratör för att skapa grupper och ge åtkomst till Assume.

Metod 1: åtkomstroll lokal för kontot

I den här metoden är åtkomstrollen en Azure Databricks-grupp på kontonivå som hanteras helt i Azure Databricks. Medlemsgruppen kan vara vilken grupp som helst med behörighet att anta åtkomstrollen: vanligtvis en grupp som synkroniseras från Microsoft Entra ID som innehåller de användare som har behörighet att komma åt känsliga data.

Kontolokal åtkomstroll: en Databricks-kontolokal grupp används som åtkomstroll, där en medlemsgrupp har behörighet att anta den.

Steg 1: Skapa åtkomstrollen och tilldela den till din arbetsyta

Skapa en grupp på kontonivå utan medlemmar som ska fungera som åtkomstroll. Databricks rekommenderar att du använder ett konsekvent namngivningsprefix (till exempel role-) för att skilja åtkomstroller från vanliga grupper. Om din medlemsgrupp för tillåtna användare till exempel är clinical-trial-1-dskan du ge åtkomstrollen role-clinical-trial-1-dsnamnet .

Så här skapar du åtkomstrollen:

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 åtkomstrollen. Lägg inte till medlemmar.
  5. Klicka på Bekräfta.

API för kontogrupper

databricks api post /api/2.0/account/scim/v2/Groups --json '{
  "displayName": "<access-role-name>"
}'

När du har skapat åtkomstrollen tilldelar du den till arbetsytorna där den ska vara tillgänglig. Se Tilldela en grupp till en arbetsyta.

Steg 2: Bevilja åtkomst till data- och arbetsytetillgångar

Ge åtkomstrollen behörighet för dina känsliga data och arbetsytetillgångar med hjälp av standardverktyg för Azure Databricks:

  • Skyddsbara enhetskataloger: Använd GRANT instruktioner eller Katalogutforskaren för att bevilja UC-behörigheter till åtkomstrollen.
  • Arbetsytetillgångar: Använd åtkomstkontrollistor (ACL: er) för att ge åtkomstrollbehörigheter för notebook-filer, jobb, SQL-lager och andra arbetsyteobjekt.

Om du till exempel vill ge åtkomstrollen behörighet att läsa en Unity Catalog-tabell:

GRANT USE SCHEMA ON <catalog>.<schema> TO `<access-role-name>`;
GRANT SELECT ON TABLE <catalog>.<schema>.<table> TO `<access-role-name>`;

Steg 3: Bevilja behörigheten Anta

Ge de användare, tjänstens huvudnamn eller medlemsgrupper som ska kunna anta den här rollen behörigheten Anta . Se Hantera behörigheter för en grupp.

Steg 4: Användare tar på sig rollen

Användare som har behörighet att anta åtkomstrollen kan anta den. Se Växla roller för tillgängliga metoder.

Metod 2: Åtkomstroll synkroniserad från Microsoft Entra ID

Använd den här metoden för att hantera åtkomstrollen i Microsoft Entra ID och synkronisera den till Azure Databricks med hjälp av SCIM, i stället för att skapa en separat Azure Databricks-hanterad åtkomstroll. Både åtkomstrollen och medlemsgruppen kommer från Microsoft Entra ID.

Åtkomstroll som synkroniserats från identitetsleverantören: en tom IdP-grupp som synkroniserats med Databricks används som åtkomstroll, där en IdP-medlemsgrupp har beviljats behörighet att överta den.

I den här metoden:

  • Åtkomstrollen är en tom Microsoft Entra ID grupp som synkroniserats med Azure Databricks och beviljat behörigheter för känsliga data.
  • Medlemsgruppen är en befintlig Microsoft Entra ID grupp vars medlemmar är de användare som får anta åtkomstrollen. Du ger medlemsgruppen behörigheten Assume för åtkomstrollen, så att alla dess medlemmar automatiskt ärver behörigheten Assume.

Note

Åtkomstrollen måste vara tom i Microsoft Entra ID. Medlemmar som läggs till i åtkomstrollen i Microsoft Entra ID synkroniseras till Azure Databricks och ärver rollens behörigheter direkt, vilket innebär att de kan komma åt känsliga data utan att behöva ta rollen. Detta bryter den exklusiva åtkomstmodellen.

Steg 1: Konfigurera grupper i Microsoft Entra ID

Hur du konfigurerar grupperna beror på om du börjar om från början eller återanvänder en befintlig Microsoft Entra ID grupp som redan har behörigheter i Azure Databricks.

Ny installation

I din identitetsprovider:

  1. Skapa en tom grupp som ska fungera som åtkomstroll. Till exempel: role-clinical-trial-1-ds.
  2. Identifiera eller skapa den medlemsgrupp vars medlemmar ska kunna ta på sig åtkomstrollen. Till exempel: clinical-trial-1-ds.
  3. Synkronisera båda grupperna till Azure Databricks med din SCIM-koppling. Se Synkronisera användare och grupper från Microsoft Entra-ID med SCIM.

Återanvänd befintliga

Använd den här varianten om du redan har en grupp synkroniserad från Microsoft Entra ID vars medlemmar har beviljats behörighet till känsliga data i Azure Databricks. Om du återanvänder den befintliga gruppen som åtkomstroll undviker du att bevilja alla dess behörigheter till en ny grupp igen.

I din identitetsprovider:

  1. Skapa en ny Microsoft Entra ID grupp som ska fungera som medlemsgrupp. Om din befintliga grupp till exempel är clinical-trial-1-dsskapar du clinical-trial-1-ds-members.
  2. Flytta alla medlemmar i den befintliga Microsoft Entra ID gruppen till den nya medlemsgruppen.
  3. Den befintliga Microsoft Entra ID gruppen är nu tom i Microsoft Entra ID och blir åtkomstrollen. Eftersom den behåller sina befintliga Azure Databricks behörigheter kan du hoppa över steg 3 nedan.
  4. Synkronisera båda grupperna till Azure Databricks med din SCIM-koppling. Se Synkronisera användare och grupper från Microsoft Entra-ID med SCIM.

Steg 2: Tilldela båda grupperna till din arbetsyta

Tilldela både åtkomstrollen och medlemsgruppen till de arbetsytor där de ska vara tillgängliga. Se Tilldela en grupp till en arbetsyta.

Steg 3: Bevilja åtkomst till data- och arbetsytetillgångar

Note

Om du återanvänder en befintlig Microsoft Entra ID grupp i steg 1 har åtkomstrollen redan dess Azure Databricks behörigheter och du kan hoppa över det här steget.

Ge åtkomstrollen behörigheter för dina känsliga data och arbetsytetillgångar genom att följa samma steg som metod 1, steg 2.

Steg 4: Bevilja Anta behörighet till medlemsgruppen

Ge medlemsgruppen behörighet att överta åtkomstrollen. Alla medlemmar i medlemsgruppen ärver automatiskt Assume. Se Hantera behörigheter för en grupp.

Steg 5: Användarna tar på sig rollen

Medlemmar i medlemsgruppen kan anta åtkomstrollen. Se Växla roller för tillgängliga metoder.

Nästa steg