Unity Catalog táblázat erőforrás hozzáadása Databricks-alkalmazáshoz

Adja hozzá a Unity Catalog-táblákat Databricks Apps-erőforrásokként, hogy az alkalmazás szabályozási és hozzáférés-vezérléssel lekérdezhesse és módosíthassa a Unity Katalógusban tárolt adatokat. A Unity Catalog-táblák részletes engedélyekkel rendelkező strukturált adattárolást biztosítanak, így az alkalmazás biztonságosan olvashat és írhat adatokat hitelesítő adatok megadása nélkül.

Jogosultsági követelmények

Egy Unity Catalog-tábla eléréséhez az alkalmazás szolgáltatásnevének rendelkeznie kell a USE CATALOG jogosultsággal a szülőkatalóguson, a USE SCHEMA jogosultsággal a szülősémán, és a SELECT vagy MODIFY jogosultsággal a táblán. A táblaerőforrás hozzáadásakor Azure Databricks automatikusan megadja ezeket a jogosultságokat az alkalmazás szolgáltatásnévnek.

Ahhoz, hogy ez az automatikus engedélyezés sikeres legyen, az alábbiak egyikének igaznak kell lennie az egyes jogosultságokra:

  • A következőhöz USE CATALOG: Vagy minden fiókfelhasználó rendelkezik jogosultsággal USE CATALOG a katalógusban, vagy Ön rendelkezik a MANAGE katalógusban lévő jogosultsággal.
  • A következőhöz USE SCHEMA: Vagy minden fiókfelhasználó rendelkezik USE SCHEMA jogosultsággal a sémán, vagy Ön rendelkezik MANAGE jogosultsággal a sémán.
  • SELECTVagyMODIFY: Vagy az összes fiókfelhasználó rendelkezik a SELECT vagy MODIFY jogosultsággal a táblában, vagy Ön rendelkezik a MANAGE jogosultsággal a táblában.

Lásd a Unity Catalog jogosultságok referencia részt.

Unity Catalog-táblaerőforrás hozzáadása

Mielőtt hozzáad egy táblát erőforrásként, tekintse át az alkalmazáserőforrás előfeltételeit.

  1. Az Alkalmazáserőforrások szakaszban, amikor létrehoz vagy szerkeszt egy alkalmazást, kattintson az +> hozzáadása elemre.
  2. Válasszon egy Unity Catalog-táblát a munkaterületen elérhető táblákból. A táblának már léteznie kell a Unity Katalógusban.
  3. Válassza ki az alkalmazás megfelelő jogosultsági szintjét:
    • Válassza ki: Engedélyt ad az alkalmazásnak az adatok táblából való lekérdezésére és olvasására. Ez olyan alkalmazások esetében megfelelő, amelyeknek csak adatokat kell olvasniuk.
    • Módosítani: Engedélyt ad az alkalmazásnak adatok beszúrására, frissítésére és törlésére a táblában. Ez az engedély implicit módon tartalmaz SELECT, így az alkalmazás adatokat is olvashat.
  4. (Nem kötelező) Adjon meg egy egyéni erőforráskulcsot, így hivatkozhat a táblára az alkalmazáskonfigurációban. Az alapértelmezett kulcs a következő table.

Megjegyzés:

MODIFY nem minden táblatípushoz érhető el. Például a nézetek nem támogatják a MODIFY jogosultságot. Ha a tábla nem támogatja MODIFY, csak SELECT az érhető el.

Környezeti változók

Egy Unity Catalog-táblaerőforrással rendelkező alkalmazás üzembe helyezésekor Azure Databricks a tábla teljes háromszintű nevét környezeti változókon keresztül teszi elérhetővé, amelyekre a valueFrom mező használatával hivatkozhat.

Példakonfiguráció:

env:
  - name: UC_TABLE_NAME
    valueFrom: table # Use your custom resource key if different

A tábla használata az alkalmazásban:

import os
from databricks.sdk import WorkspaceClient

# Access the table name
table_name = os.getenv("UC_TABLE_NAME")

# Initialize workspace client
w = WorkspaceClient()

# Query the table using a SQL warehouse resource
result = w.statement_execution.execute_statement(
    warehouse_id=os.getenv("DATABRICKS_WAREHOUSE_ID"),  # Requires a SQL warehouse resource
    statement=f"SELECT * FROM {table_name} LIMIT 10"
)

További információ: Környezeti változók használata erőforrások eléréséhez.

Unity Catalog-táblaerőforrás eltávolítása

Amikor eltávolít egy Unity Catalog táblaerőforrást egy alkalmazásból, az alkalmazás szolgáltatási főneve elveszíti a SELECT, MODIFY, és ALL PRIVILEGES jogosultságokat a táblára. Azure Databricks megkísérli visszavonni a hierarchikus katalógus- és sémaengedélyeket is. Maga a tábla változatlan marad, és továbbra is elérhető lesz más, megfelelő engedélyekkel rendelkező felhasználók és alkalmazások számára.

Ajánlott eljárások

A Unity Catalog táblaerőforrásaival végzett munka során vegye figyelembe a következőket:

  • Adjon meg minimális engedélyeket. Csak akkor használja SELECT , ha az alkalmazásnak adatokat kell írnia a táblába.
  • Egyesítse a táblaerőforrásokat egy SQL Warehouse-erőforrással , ha az alkalmazásnak SQL-lekérdezéseket kell futtatnia a táblán.
  • A sémaszintű hozzáférés biztosítása helyett használjon külön táblaerőforrásokat a különböző táblákhoz, hogy a legkisebb jogosultság elvét alkalmazza.
  • Fontolja meg a Unity Catalog-kötetek strukturálatlan adatokhoz és a Unity Catalog-táblák strukturált adatokhoz való használatát.