資格情報
適用対象: Databricks SQL Databricks Runtime Unity Catalog のみ
Unity Catalog と組み込みの Azure Databricks Hive メタストアでは、マネージド テーブルの既定の場所が使用されます。 Unity Catalog には、クラウド オブジェクト ストレージ内の外部クラウド サービスとデータに権限を付与するための、セキュリティ保護可能な新しいオブジェクトがいくつか導入されています。
-
クラウド サービスおよびストレージ プロバイダーから長期的な資格情報を抽象化するために使用される Unity Catalog オブジェクト。
ストレージの資格情報
外部の場所とテーブルにアクセスするために使用される Unity カタログ資格情報。
サービス資格情報
重要
この機能はパブリック プレビュー段階にあります。
プロバイダー SDK を使用して外部クラウド サービスにアクセスするために使用される Unity カタログ資格情報。 詳細については、「 サービス資格情報を使用した外部クラウド サービスへのアクセスの管理を参照してください。
-
クラウド オブジェクト ストレージ URI をストレージの資格情報に関連付けるために使用される Unity Catalog オブジェクト。
資格情報
資格情報は、Azure マネージド ID または Microsoft Entra ID サービス プリンシパルを表すセキュリティ保護可能なオブジェクトです。
資格情報が作成されたら、その資格情報へのアクセスを principals (ユーザーとグループ) に付与できます。
ストレージ資格情報は、主に、特定のストレージ パスへのアクセスを対象範囲とする外部の場所を作成するために使用されます。
資格情報名 は修飾されておらず、メタストア内で一意である必要があります。
リレーションシップのグラフィック表示
次の図は、以下の項目のリレーションシップを示しています。
- ストレージの資格情報
- 外部の場所
- 外部テーブル
- ストレージ パス
- IAM エンティティ
- Azure サービス アカウント
例
CLI を使用して、Microsoft Entra ID サービス プリンシパルのストレージ資格情報 my_azure_storage_cred
を作成します。
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"}}'
残りのコマンドは 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';