Dela via


Hantera identiteter, behörigheter och behörigheter för Databricks-jobb

Den här artikeln innehåller rekommendationer och instruktioner för hantering av identiteter, behörigheter och behörigheter för Databricks-jobb.

Kommentar

Hemligheter redigeras inte från ett klusters Spark-drivrutinslogg stdout och stderr -strömmar. För att skydda känsliga data kan Spark-drivrutinsloggar som standard endast visas av användare med CAN MANAGE-behörighet för jobb, åtkomstläge för en användare och kluster för delat åtkomstläge. Om du vill tillåta användare med behörigheten CAN ATTACH TO eller CAN RESTART att visa loggarna i dessa kluster anger du följande Spark-konfigurationsegenskap i klusterkonfigurationen: spark.databricks.acl.needAdminPermissionToViewLogs false.

På kluster för delat åtkomstläge utan isolering kan Spark-drivrutinsloggarna visas av användare med behörigheten KAN KOPPLA TILL eller KAN HANTERA. Om du vill begränsa vem som kan läsa loggarna till endast användare med behörigheten CAN MANAGE anger du spark.databricks.acl.needAdminPermissionToViewLogs till true.

Se Spark-konfiguration för att lära dig hur du lägger till Spark-egenskaper i en klusterkonfiguration.

Standardbehörigheter för jobb

Jobb har följande behörigheter inställda som standard:

  • Skaparen av jobbet beviljas behörigheten IS OWNER.
  • Arbetsyteadministratörer beviljas behörigheten CAN MANAGE.
  • Skaparen av jobbet har angetts för Kör som.

Administratörsbehörigheter för jobb

Som standard kan arbetsyteadministratörer ändra jobbägaren eller Kör som konfiguration till valfri användare eller tjänsthuvudnamn på arbetsytan. Kontoadministratörer kan konfigurera inställningen RestrictWorkspaceAdmins för att ändra det här beteendet. Se Begränsa administratörer för arbetsytor.

Hur interagerar jobb med behörigheter för Unity Catalog?

Jobb körs som användarens identitet i inställningen Kör som . Den här identiteten utvärderas mot behörighetsbidrag för följande:

  • Unity Catalog-hanterade tillgångar, inklusive tabeller, volymer, modeller och vyer.
  • Åtkomstkontrollistor för äldre tabeller (ACL: er) för tillgångar som registrerats i det äldre Hive-metaarkivet.
  • ACL:er för beräkning, notebook-filer, frågor och andra arbetsytetillgångar.
  • Databricks-hemligheter. Se Hemlig hantering.

Kommentar

Unity Catalog-bidrag och äldre tabell-ACL:er kräver kompatibla beräkningsåtkomstlägen. Se Konfigurera beräkning för jobb.

SQL-uppgifter och -behörigheter

Filuppgiften är den enda SQL-uppgiftstypen som respekterar Kör som-identitet helt.

SQL-frågor, aviseringar och äldre instrumentpanelsuppgifter respekterar konfigurerade delningsinställningar.

  • Kör som ägare: Körningar av den schemalagda SQL-aktiviteten använder alltid identiteten för ägaren av den konfigurerade SQL-tillgången.
  • Kör som visningsprogram: Körningar av den schemalagda SQL-aktiviteten använder alltid den identitet som angetts i jobbet Kör som-fältet .

Mer information om inställningar för frågedelning finns i Konfigurera frågebehörigheter.

Exempel

Följande scenario illustrerar interaktionen mellan SQL-delningsinställningar och jobbinställningen Kör som :

  • Användare A är ägare till SQL-frågan med namnet my_query.
  • Användare A konfigurerar med delningsinställningen my_query Kör som ägare.
  • Användare B schemalägger my_query som en uppgift i ett jobb med namnet my_job.
  • Användare B konfigurerar att köras my_job med en tjänstprincip med namnet prod_sp.
  • När my_job körs använder den identiteten för användare A för att köra my_query.

Anta nu att användare B inte vill ha det här beteendet. Från och med den befintliga konfigurationen sker följande:

  • Användare A ändrar delningsinställningen för my_query till Kör som visningsprogram.
  • När my_job körs använder den identifieringen prod_sp.

Konfigurera identitet för jobbkörningar

Om du vill ändra inställningen Kör som måste du ha behörigheten CAN MANAGE eller IS OWNER för jobbet.

Du kan ange inställningen Kör som till dig själv eller ett huvudnamn för tjänsten på arbetsytan där du har behörigheten För tjänstens huvudnamn.

Om du vill konfigurera inställningen Kör som för ett jobb i arbetsytans användargränssnitt väljer du ett befintligt jobb med hjälp av följande steg:

  1. Klicka på Ikon för arbetsflöden Arbetsflöden i sidofältet.
  2. Klicka på jobbnamnet i kolumnen Namn.
  3. I panelen Jobbinformation klickar du på pennikonen bredvid fältet Kör som .
  4. Sök efter och välj en användare eller tjänstens huvudnamn.
  5. Klicka på Spara.

Mer information om hur du arbetar med tjänstens huvudnamn finns i följande:

Metodtips för jobbstyrning

Databricks rekommenderar följande för alla produktionsjobb:

  • Tilldela jobbägarskap till ett huvudnamn för tjänsten

    Om användaren som äger ett jobb lämnar organisationen kan jobbet misslyckas. Använd tjänstens huvudnamn för att göra jobben robusta för anställdas omsättning.

    Som standard kan arbetsyteadministratörer hantera jobbbehörigheter och omtilldela ägarskap om det behövs.

  • Köra produktionsjobb med hjälp av tjänstens huvudnamn

    Jobb körs som standard med hjälp av jobbägarens behörigheter. Om du tilldelar ägarskap till ett huvudnamn för tjänsten använder jobbkörningar behörigheterna för tjänstens huvudnamn.

    Med hjälp av tjänstens huvudnamn för produktionsjobb kan du begränsa skrivbehörigheter för produktionsdata. Om du kör jobb med en användares behörigheter behöver användaren samma behörigheter för att redigera de produktionsdata som krävs av jobbet.

  • Använd alltid Unity Catalog-kompatibla beräkningskonfigurationer

    Datastyrning i Unity Catalog kräver att du använder en beräkningskonfiguration som stöds.

    Serverlös beräkning för jobb och SQL-lager använder alltid Unity Catalog.

    För jobb med klassisk beräkning rekommenderar Databricks läget för delad åtkomst för arbetsbelastningar som stöds. Använd åtkomstläge för en användare när det behövs.

    Delta Live Tables-pipelines som konfigurerats med Unity Catalog har vissa begränsningar. Se Begränsningar.

  • Begränsa behörigheter för produktionsjobb

    Användare som utlöser, stoppar eller startar om jobbkörningar behöver behörigheten Kan hantera körning .

    Användare som visar jobbkonfigurationen eller övervakarkörningar behöver behörigheten Kan visa .

    Bevilja endast behörigheten Kan hantera eller Är ägare till användare som är betrodda att ändra produktionskoden.

Kontrollera åtkomsten till ett jobb

Med åtkomstkontroll för jobb kan jobbägare och administratörer bevilja detaljerad behörighet för jobb. Följande behörigheter är tillgängliga:

Kommentar

Varje behörighet innehåller behörigheter under den i följande tabell.

Behörighet Bevilja
Är ägare Den identitet som används för Kör som standard.
Kan hantera Användare kan redigera jobbdefinitionen, inklusive behörigheter. Användare kan pausa och återuppta ett schema.
Kan hantera körning Användare kan utlösa och avbryta jobbkörningar.
Kan visa Användare kan visa jobbkörningsresultat.

Information om jobbbehörighetsnivåer finns i Jobb-ACL:er.

Konfigurera jobbbehörigheter

Om du vill konfigurera behörigheter för ett jobb i arbetsytans användargränssnitt väljer du ett befintligt jobb med hjälp av följande steg:

  1. Klicka på Ikon för arbetsflöden Arbetsflöden i sidofältet.
  2. Klicka på jobbnamnet i kolumnen Namn.
  3. I panelen Jobbinformation klickar du på Redigera behörigheter. Dialogrutan Behörighetsinställningar visas.
  4. Klicka på fältet Välj användare, grupp eller tjänsthuvudnamn... och börja skriva in en användare, grupp eller tjänstens huvudnamn. Fältet söker igenom alla tillgängliga identiteter på arbetsytan.
  5. Klicka på Lägg till.
  6. Klicka på Spara.

Hantera jobbägaren

Endast arbetsyteadministratörer kan redigera jobbägaren. Exakt en jobbägare måste tilldelas. Jobbägare kan vara användare eller tjänstens huvudnamn.