Sdílet prostřednictvím


Credentials

platí pro:zaškrtnuto jako ano Databricks SQL zaškrtnuto jako ano Databricks Runtime zaškrtnuto jako ano pouze Unity Catalog

Unity Catalog a integrovaný metastore Azure Databricks Hive používají výchozí umístění pro spravované tables. Unity Catalog zavádí několik nových zabezpečitelných objektů pro grant oprávnění externím cloudovým službám a datům v cloudovém úložišti objektů.

Reference

Přihlašovací údaje představují zabezpečitelný objekt představující spravovanou identitu Azure nebo instanční objekt Microsoft Entra ID.

Po vytvoření přihlašovacích údajů je možné k němu udělit přístup objektům zabezpečení (uživatelům a skupinám).

credentials úložiště se primárně používají k vytváření externích umístění, která určují přístup ke konkrétní cestě úložiště.

Názvy přihlašovacích údajů jsou nekvalifikované a musí být jedinečné v rámci metastoru.

Grafické znázornění relací

Následující diagram popisuje vztah mezi:

  • credentials úložiště
  • externí umístění
  • externí tables
  • cesty k úložišti
  • Entity IAM
  • Účty služeb Azure

Diagram ER externího umístění

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';