Sdílet prostřednictvím


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

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

Poznámka:

Tajné kódy nejsou redactovány z protokolu stdout stderr a streamů ovladačů Spark 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 úlohu, režim přístupu jednoho uživatele a clustery režimu sdíleného přístupu. Chcete-li uživatelům, kteří mají oprávnění PŘIPOJIT SE K nebo MŮŽE RESTARTOVAT, můžete zobrazit protokoly v těchto clusterech, nastavte v konfiguraci 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 na truehodnotu spark.databricks.acl.needAdminPermissionToViewLogs .

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ý pro Spustit jako.

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

Ve výchozím nastavení můžou správci pracovního prostoru změnit vlastníka úlohy nebo konfiguraci Spustit jako na libovolného uživatele nebo instančního objektu v pracovním prostoru. Správci účtu můžou toto chování nakonfigurovat RestrictWorkspaceAdmins tak, aby toto chování změnili. Viz Omezení správců pracovního prostoru.

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

Úlohy se spouští jako identita uživatele v nastavení Spustit jako . Tato identita se vyhodnocuje proti 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 k tabulce (ACL) starší verze tabulek pro prostředky zaregistrované ve starším metastoru Hive
  • Seznamy ACL pro výpočetní prostředky, poznámkové bloky, dotazy a další prostředky pracovního prostoru.
  • Tajné kódy Databricks Viz Správa tajných kódů.

Poznámka:

Katalog Unity uděluje a starší seznamy ACL tabulek 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 prohlížeč: Spuštění naplánované úlohy SQL vždy používají identitu nastavenou v poli Spustit jako úlohu.

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 nastavení sdílení spustit jako vlastníka.
  • Uživatel B plánuje my_query jako úkol v úloze s názvem my_job.
  • Uživatel B konfiguruje my_job spuštění pomocí instance s názvem prod_sp.
  • Při my_job spuštění používá identitu ke spuštění my_queryuživatele A .

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 prohlížeč Spustit jako.
  • Při my_job spuštění používá identifikaci prod_sp.

Konfigurace identity pro spuštění úloh

Pokud chcete změnit 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 libovolnému instančnímu objektu v pracovním prostoru, na kterém máte nárok uživatele instančního objektu.

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 instanční objekt.
  5. Klikněte na Uložit.

Další informace o práci s instančními objekty najdete v následujících tématech:

Osvědčené postupy pro zásady správného řízení úloh

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

  • Přiřazení vlastnictví úlohy k instančnímu objektu

    Pokud uživatel, který vlastní úlohu, opustí vaši organizaci, může selhat. Instanční objekty slouží k zajištění robustních úloh pro četnost změn 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í instančního objektu

    Úlohy se spouští pomocí oprávnění vlastníka úlohy ve výchozím nastavení. Pokud přiřadíte vlastnictví instančnímu objektu, spustí se úloha s oprávněními instančního objektu.

    Použití instančních objektů pro produkční úlohy umožňuje omezit oprávnění k zápisu 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 warehouse vždy používají Katalog Unity.

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

    Kanály Delta Live Tables nakonfigurované pomocí katalogu Unity mají určitá omezení. Viz Omezení.

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

    Uživatelé, kteří aktivují, zastavují nebo restartují spuštění úlohy, potřebují oprávnění Může spravovat spuštění .

    Uživatelé, kteří si zobrazí konfiguraci úlohy nebo spuštění monitorování, potřebují oprávnění Může zobrazit .

    Udělit oprávnění Může spravovat nebo je vlastník 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.

Oprávnění 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ůže zobrazit Uživatelé můžou zobrazit výsledky spuštění úlohy.

Informace o úrovních oprávnění úlohy najdete v tématu Seznamy 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 Vybrat uživatele, skupinu nebo instanční objekt... a začněte psát uživatele, skupinu nebo instanční objekt. Pole prohledá 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 úlohy. Vlastníci úloh můžou být uživatelé nebo instanční objekty.