Sdílet prostřednictvím


Správa identit, oprávnění a privilegií pro úlohy Databricks

Tento článek obsahuje doporučení a pokyny pro správu identit, oprávnění a práv pro úlohy Databricks.

Poznámka:

Tajné informace nejsou odstraňovány z protokolu a streamů Spark driveru clusteru. Aby bylo možné chránit citlivá data, protokoly ovladačů Sparku se ve výchozím nastavení dají zobrazit jenom uživatelům s oprávněním CAN MANAGE pro úlohy, vyhrazený režim přístupu a clustery standardního režimu přístupu. Pokud chcete uživatelům s oprávněním MOHOU PŘIPOJIT nebo MOHOU RESTARTOVAT povolit zobrazení protokolů v těchto clusterech, nastavte v nastavení clusteru následující vlastnost konfigurace Sparku: spark.databricks.acl.needAdminPermissionToViewLogs false.

V clusterech s režimem sdíleného přístupu bez izolace můžou uživatelé zobrazit protokoly ovladačů Spark s oprávněním MŮŽE PŘIPOJIT nebo MŮŽE SPRAVOVAT. Chcete-li omezit, kdo může číst protokoly pouze uživatelům s oprávněním CAN MANAGE, nastavte spark.databricks.acl.needAdminPermissionToViewLogs na true.

Informace o přidání vlastností Sparku do konfigurace clusteru najdete v konfiguraci Sparku.

Výchozí oprávnění pro úlohy

Úlohy mají ve výchozím nastavení následující oprávnění:

  • Autor úlohy má udělené oprávnění IS OWNER.
  • Správci pracovního prostoru mají udělené oprávnění CAN MANAGE (SPRAVOVAT).
  • Tvůrce úlohy je nastaven na Spustit jako.

Oprávnění správce pro úlohy

Ve výchozím nastavení mohou správci pracovního prostoru změnit vlastníka úlohy nebo konfiguraci Spustit jako na libovolného uživatele nebo služební objekt v pracovním prostoru. Správci účtu mohou nakonfigurovat nastavení RestrictWorkspaceAdmins pro změnu tohoto chování. Viz Omezení správců pracovního prostoru.

Jak úlohy pracují s oprávněními katalogu Unity?

Úlohy se spouští pod identitou uživatele v nastavení Spustit jako. Tato identita se vyhodnocuje ve vztahu k udělení oprávnění pro následující:

  • Prostředky spravované katalogem Unity, včetně tabulek, svazků, modelů a zobrazení.
  • Seznamy řízení přístupu (ACL) ke starším tabulkám pro prostředky registrované ve starém metastoru Hive.
  • Seznamy řízení přístupu pro výpočetní zdroje, poznámkové bloky, dotazy a další prostředky pracovního prostoru.
  • Tajné kódy Databricks Viz Správa tajemství.

Poznámka:

Katalog Unity a starší tabulkové ACL vyžadují kompatibilní režimy přístupu k výpočetním prostředkům. Viz Konfigurace výpočetních prostředků pro úlohy.

Úlohy a oprávnění SQL

Úloha souboru je jediným typem úlohy SQL, který plně respektuje identitu Spustit jako .

Dotazy SQL, upozornění a starší úlohy řídicího panelu respektují nakonfigurovaná nastavení sdílení.

  • Spustit jako vlastník: Spuštění naplánované úlohy SQL vždy používají identitu vlastníka nakonfigurovaného prostředku SQL.
  • Spustit jako divák: Při spuštění naplánované úlohy SQL se vždy používá uživatelská identita nastavená v poli Spustit jako.

Další informace o nastavení sdílení dotazů najdete v tématu Konfigurace oprávnění dotazu.

Příklad

Následující scénář znázorňuje interakci nastavení sdílení SQL a nastavení Spustit jako úlohy:

  • Uživatel A je vlastníkem dotazu SQL s názvem my_query.
  • Uživatel A nakonfiguruje my_query se sdílecím nastavením Spustit jako vlastník.
  • Uživatel B plánuje my_query jako úkol v úloze s názvem my_job.
  • Uživatel B nakonfiguruje my_job ke spuštění pomocí servisního principálu s názvem prod_sp.
  • Při spuštění my_job používá identitu uživatele A ke spuštění my_query.

Nyní předpokládejme, že uživatel B toto chování nechce. Počínaje stávající konfigurací dochází k následujícímu:

  • Uživatel A změní nastavení sdílení pro my_query na Spustit jako divák.
  • Pokud se my_job spustí, využívá identifikaci prod_sp.

Konfigurace identity pro spuštění úloh

Pro změnu nastavení Spustit jako musíte mít u úlohy oprávnění CAN MANAGE nebo IS OWNER.

Nastavení Spustit jako můžete nastavit sami sobě nebo jakémukoli služebnímu principálu v pracovním prostoru, kde máte oprávnění uživatele služebního principálu.

Pokud chcete nakonfigurovat nastavení Spustit jako pro úlohu v uživatelském rozhraní pracovního prostoru, vyberte existující úlohu pomocí následujícího postupu:

  1. Na bočním panelu klikněte na Ikona Pracovních postupůPracovní postupy.
  2. Ve sloupci Název klikněte na název úlohy.
  3. Na bočním panelu Podrobnosti úlohy klikněte na ikonu tužky vedle pole Spustit jako.
  4. Vyhledejte a vyberte uživatele nebo principál služby.
  5. Klikněte na Uložit.

Další informace o práci s objekty služby najdete v následujících:

Osvědčené postupy pro řízení úloh

Databricks doporučuje pro všechny produkční úlohy následující:

  • Přiřazení vlastnictví úlohy principálovi služby

    Pokud uživatel, který vlastní danou úlohu, opustí vaši organizaci, tato úloha může selhat. Používejte zástupce služby k zajištění odolnosti úloh vůči změnám zaměstnanců.

    Správci pracovního prostoru můžou ve výchozím nastavení spravovat oprávnění k úlohám a v případě potřeby znovu přiřadit vlastnictví.

  • Spouštění produkčních úloh pomocí principála služby

    Úlohy se spouští pomocí oprávnění vlastníka úlohy ve výchozím nastavení. Pokud přiřadíte vlastnictví služebnímu principalu, spouštění úloh probíhá s oprávněními služebního principalu.

    Použití servisních principálů pro produkční úlohy umožňuje omezit oprávnění pro zápis do produkčních dat. Pokud spouštíte úlohy pomocí oprávnění uživatele, potřebuje tento uživatel stejná oprávnění k úpravě produkčních dat vyžadovaných úlohou.

  • vždy používat výpočetní konfigurace kompatibilní s katalogem Unity

    Zásady správného řízení dat v Katalogu Unity vyžadují, abyste použili podporovanou výpočetní konfiguraci.

    Bezserverové výpočetní prostředky pro úlohy a SQL sklady vždy používají Unity Catalog.

    Pro úlohy s klasickým výpočetním prostředím doporučuje Databricks pro podporované úlohy standardní režim přístupu. V případě potřeby použijte vyhrazený režim přístupu.

    Kanály DLT nakonfigurované s katalogem Unity mají určitá omezení. Viz Omezení.

  • Omezení oprávnění pro produkční úlohy

    Uživatelé, kteří aktivují spuštění úlohy, zastavují je nebo restartují, potřebují oprávnění Správa spuštění.

    Uživatelé, kteří zobrazují konfiguraci úlohy nebo monitorují běhy, potřebují oprávnění Zobrazit.

    Udělit Může spravovat nebo Je vlastníkem oprávnění pouze uživatelům důvěryhodným k úpravě produkčního kódu.

Řízení přístupu k úloze

Řízení přístupu k úlohám umožňuje vlastníkům úloh a správcům udělit jemně odstupňovaná oprávnění k úlohám. K dispozici jsou následující oprávnění:

Poznámka:

Každé oprávnění zahrnuje udělení oprávnění pod ním v následující tabulce.

Povolení Grant
Je vlastníkem Identita používaná pro Spustit jako ve výchozím nastavení.
Může spravovat Uživatelé mohou upravit definici úlohy, včetně oprávnění. Uživatelé můžou plán pozastavit a obnovit.
Může spravovat spuštění Uživatelé můžou aktivovat a zrušit spuštění úloh.
Má povolení k zobrazení Uživatelé můžou zobrazit výsledky spuštění úlohy.

Informace o úrovních oprávnění úloh najdete v tématu ACL úloh.

Konfigurace oprávnění úlohy

Pokud chcete nakonfigurovat oprávnění pro úlohu v uživatelském rozhraní pracovního prostoru, vyberte existující úlohu pomocí následujícího postupu:

  1. Na bočním panelu klikněte na Ikona Pracovních postupůPracovní postupy.
  2. Ve sloupci Název klikněte na název úlohy.
  3. Na panelu Podrobnosti úlohy klikněte na Upravit oprávnění. Zobrazí se dialogové okno Nastavení oprávnění.
  4. Klikněte na pole Vyberte uživatele, skupinu nebo služební objekt... a začněte psát uživatele, skupinu nebo služební objekt. Pole prohledává všechny dostupné identity v pracovním prostoru.
  5. Klikněte na tlačítko Přidat.
  6. Klikněte na Uložit.

Správa vlastníka úlohy

Vlastníka úlohy můžou upravovat jenom správci pracovního prostoru. Musí být přiřazen přesně jeden vlastník pozice. Vlastníci úloh můžou být uživatelé nebo instanční objekty.