Přihlašovací údaje k úložišti
Platí pro: Pouze katalog Unity Pro Databricks SQL Databricks
Katalog Unity a integrovaný metastore Azure Databricks Hive používají výchozí umístění pro spravované tabulky. Katalog Unity zavádí několik nových zabezpečitelných objektů pro udělení oprávnění k datům v cloudovém úložišti objektů.
-
Objekt katalogu Unity používaný k abstrakci dlouhodobých přihlašovacích údajů od poskytovatelů cloudového úložiště.
-
Objekt katalogu Unity použitý k přidružení identifikátoru URI cloudového úložiště objektů k přihlašovacím údajům úložiště.
-
Tabulka katalogu Unity vytvořená v externím umístění spravovaném katalogem Unity.
Přihlašovací údaje úložiště
Přihlašovací údaje úložiště jsou zabezpečitelný objekt představující spravovanou identitu Azure nebo instanční objekt Microsoft Entra ID.
Po vytvoření přihlašovacích údajů úložiště k němu může být udělen objekt zabezpečení (uživatelům a skupinám).
Přihlašovací údaje k úložišti se primárně používají k vytváření externích umístění, která oborují přístup ke konkrétní cestě úložiště.
Názvy přihlašovacích údajů úložiště jsou nekvalifikované a musí být jedinečné v rámci metastoru.
Grafické znázornění relací
Následující diagram popisuje vztah mezi:
- přihlašovací údaje k úložišti
- externí umístění
- externí tabulky
- cesty k úložišti
- Entity IAM
- Účty služeb Azure
Příklady
Pomocí rozhraní příkazového řádku vytvořte přihlašovací údaje my_azure_storage_cred
úložiště pro instanční objekt Microsoft Entra ID.
databricks storage-credentials create --json '{"name": "my_azure_storage_cred", "azure_service_principal": {"directory_id": "12345678-9abc-def0-1234-56789abcdef0", "application_id": "23456789-9abc-def0-1234-56789abcdef0", "client_secret": "Cli3nt5ecr3t"}}'
Zbývající příkazy je možné spustit v rámci SQL.
-- Grant access to the storage credential
> GRANT READ FILES ON STORAGE CREDENTIAL my_azure_storage_cred TO ceo;
-- ceo can directly read from any storage path using myazure_storage_cred
> SELECT count(1) FROM `delta`.`abfss://container@storageaccount.dfs.core.windows.net/depts/finance/forecast/somefile` WITH (CREDENTIAL my_azure_storage_cred);
100
> SELECT count(1) FROM `delta`.`abfss://container@storageaccount.dfs.core.windows.net/depts/hr/employees` WITH (CREDENTIAL my_azure_storage_cred);
2017
-- Create an external location on specific path to which `my_azure_storage_cred` has access
> CREATE EXTERNAL LOCATION finance_loc URL 'abfss://container@storageaccount.dfs.core.windows.net/depts/finance'
WITH (CREDENTIAL my_azure_storage_cred)
COMMENT 'finance';