Sdílet prostřednictvím


Povolení přístupu k externím datům do katalogu Unity

Důležité

Tato funkce je ve verzi Public Preview.

Azure Databricks poskytuje přístup k tabulkám katalogu Unity pomocí rozhraní Rest API Unity a katalogu Rest Apache Iceberg.

Správce metastoru musí povolit externí přístup k datům pro každý metastor, ke které potřebujete přístup externě. Uživatel nebo instanční objekt, který konfiguruje připojení, musí mít EXTERNAL USE SCHEMA oprávnění pro každé schéma, kde potřebují provádět podporované operace: čtení ze spravovaných tabulek nebo vytváření, čtení a zápis do externích tabulek.

Rozhraní Unity REST API podporuje přímé čtení tabulek Delta. Katalog Iceberg REST podporuje čtení tabulek Delta a čtení a zápisy pro tabulky Iceberg. Viz Přístup k datům Databricks pomocí externích systémů.

Povolení přístupu k externím datům v metastoru

Aby externí moduly mohly přistupovat k datům v metastoru, musí správce metastoru povolit přístup k externím datům pro metastor. Tato možnost je ve výchozím nastavení zakázaná, aby se zabránilo neoprávněnému externímu přístupu.

Pokud chcete povolit přístup k externím datům, postupujte takto:

  1. V pracovním prostoru Azure Databricks připojeném k metastoru klikněte na ikonu Data.Katalog.
  2. Klikněte na ikonu ozubeného kola. Ikona ozubeného kolečka v horní části podokna Katalog a vyberte Metastore.
  3. Na kartě Podrobnosti povolte přístup k externím datům.

Poznámka

Tyto možnosti se zobrazují jenom pro dostatečně privilegované uživatele. Pokud tyto možnosti nevidíte, nemáte oprávnění k povolení přístupu k externím datům pro metastor.

Udělení oprávnění hlavního katalogu Unity

Externí klienti připojující se k Azure Databricks potřebují oprávnění od dostatečně privilegovaného principálu.

Azure Databricks podporuje ověřování pomocí OAuth a osobních přístupových tokenů (PAT). Viz Autorizace přístupu k prostředkům Azure Databricks.

Subjekt, který požaduje dočasné přihlašovací údaje, musí mít:

  • Oprávnění EXTERNAL USE SCHEMA pro schéma, které obsahuje, nebo jeho nadřazený katalog.

    Toto oprávnění musí být vždy uděleno explicitně. Pouze vlastník nadřazeného katalogu může udělit oprávnění. Aby nedošlo k náhodnému exfiltraci, ALL PRIVILEGES nezahrnuje oprávnění EXTERNAL USE SCHEMA a vlastníci schématu ve výchozím nastavení toto oprávnění nemají.

  • SELECT oprávnění k tabulce, USE CATALOG v nadřazeném katalogu a USE SCHEMA v nadřazeném schématu.

  • Při vytváření externích tabulek musí mít objekt zabezpečení také CREATE TABLE oprávnění ke schématu a CREATE EXTERNAL TABLEEXTERNAL USE LOCATION oprávněním v cílovém externím umístění.

    EXTERNAL USE LOCATION musí být vždy udělena explicitně. Oprávnění k externímu umístění můžou udělit jenom uživatelé s MANAGE oprávněním. Aby nedošlo k náhodnému exfiltraci, ALL PRIVILEGES nezahrnuje EXTERNAL USE LOCATION oprávnění a vlastníci umístění ve výchozím nastavení toto oprávnění nemají.

Následující příklad syntaxe ukazuje udělení EXTERNAL USE SCHEMA uživateli:

GRANT EXTERNAL USE SCHEMA ON SCHEMA catalog_name.schema_name TO `user@company.com`

Následující příklad syntaxe ukazuje udělení EXTERNAL USE LOCATION uživateli:

GRANT EXTERNAL USE LOCATION ON EXTERNAL LOCATION external_location_name TO `user@company.com`

Za předpokladu, že má uživatel oprávnění ke čtení všech požadovaných tabulek ve schématu, nejsou potřeba žádná další oprávnění. Pokud potřebujete udělit další oprávnění ke čtení tabulek, přečtěte si privilegia katalogu Unity a zabezpečené objekty.