儲存體連接字串
Azure 資料總管可以與外部儲存體服務互動。 例如,您可以 建立 Azure 儲存體外部資料表 ,以查詢儲存在外部儲存體上的資料。
支援下列類型的外部儲存體:
- Azure Blob 儲存體
- Azure Data Lake Storage Gen2
- Azure Data Lake Storage Gen1
- Amazon S3
每種儲存體類型都有對應的連接字串格式,可用來描述儲存體資源及其存取方式。 Azure 資料總管會使用 URI 格式來描述這些儲存體資源,以及存取這些資源所需的屬性,例如安全性認證。
注意
即使 HTTP Web 服務似乎在某些案例中運作,也不會支援實作整個 API 集合Azure Blob 儲存體。
儲存體連接字串範本
每個儲存體類型都有不同的連接字串格式。 請參閱下表,以了解每個儲存體類型的連接字串範本。
儲存類型 | 配置 | URI 範本 |
---|---|---|
Azure Blob 儲存體 | https:// |
https:// StorageAccountName.blob.core.windows.net/ Container[/ BlobName][CallerCredentials] |
Azure Data Lake Storage Gen2 | https:// |
https:// StorageAccountName.dfs.core.windows.net/ Filesystem[/ PathToDirectoryOrFile][CallerCredentials] |
Azure Data Lake Storage Gen2 | abfss:// |
abfss:// Filesystem@ StorageAccountName.dfs.core.windows.net/ [PathToDirectoryOrFile][CallerCredentials] |
Azure Data Lake Storage Gen1 | adl:// |
adl:// StorageAccountName.azuredatalakestore.net/PathToDirectoryOrFile[CallerCredentials] |
Amazon S3 | https:// |
https:// BucketName.s3. RegionName.amazonaws.com/ ObjectKey[CallerCredentials] |
注意
若要防止秘密顯示在追蹤中,請使用 模糊字串常值。
儲存體驗證方法
若要與來自 Azure Data Explorer的非公用外部儲存體互動,您必須將驗證方式指定為外部儲存體連接字串的一部分。 連接字串會定義要存取的資源及其驗證資訊。
Azure Data Explorer支援下列驗證方法:
- 模擬
- 受控識別
- 共用存取 (SAS) 金鑰
- Microsoft Entra存取權杖
- 儲存體帳戶存取金鑰
- Amazon Web Services 程式設計存取金鑰
- Amazon Web Services S3 預先簽署的 URL
依儲存體類型支援的驗證
下表摘要說明不同外部儲存體類型的可用驗證方法。
驗證方法 | 可在 Blob 儲存體中使用嗎? | 可在 Azure Data Lake Storage Gen 2 中使用嗎? | 可在 Azure Data Lake Storage Gen 1 中使用嗎? | 可在 Amazon S3 中使用? | 何時應該使用此方法? |
---|---|---|---|---|---|
模擬 | ✔️ | ✔️ | ✔️ | ❌ | 當您需要對外部儲存體進行複雜的存取控制時,可用於非自動流程。 例如,用於連續匯出流程。 您也可以限制使用者層級的儲存體存取。 |
受控識別 | ✔️ | ✔️ | ✔️ | ❌ | 在自動流程中使用,其中無法衍生任何Microsoft Entra主體來執行查詢和命令。 受控識別是唯一的驗證解決方案。 |
共用存取 (SAS) 金鑰 | ✔️ | ✔️ | ❌ | ❌ | SAS 權杖有到期時間。 用於在有限的時間內存取儲存體。 |
Microsoft Entra存取權杖 | ✔️ | ✔️ | ✔️ | ❌ | Microsoft Entra權杖有到期時間。 用於在有限的時間內存取儲存體。 |
儲存體帳戶存取金鑰 | ✔️ | ✔️ | ❌ | ❌ | 當您需要不斷地存取資源時。 |
Amazon Web Services 程式設計存取金鑰 | ❌ | ❌ | ❌ | ✔️ | 當您需要持續存取 Amazon S3 資源時。 |
Amazon Web Services S3 預先簽署的 URL | ❌ | ❌ | ❌ | ✔️ | 當您需要使用暫存預先簽署 URL 存取 Amazon S3 資源時。 |
模擬
Azure Data Explorer模擬要求者主體身分識別來存取資源。 若要使用模擬,請將 ;impersonate
附加至連接字串。
範例 |
---|
"https://fabrikam.blob.core.windows.net/container/path/to/file.csv;impersonate" |
主體必須具有執行作業的必要許可權。 例如,Azure Blob 儲存體,若要從 Blob 讀取,主體需要儲存體 Blob 資料讀取器角色,並匯出至主體需要儲存體 Blob 資料參與者角色的 Blob。 若要深入瞭解,請參閱存取控制Azure Blob 儲存體/Data Lake Storage Gen2存取控制或Data Lake Storage Gen1存取控制。
受控識別
Azure Data Explorer代表受控識別提出要求,並使用其身分識別來存取資源。 針對系統指派的受控識別,請將 附加 ;managed_identity=system
至連接字串。 針對使用者指派的受控識別,請將 附加 ;managed_identity={object_id}
至連接字串。
受控識別類型 | 範例 |
---|---|
系統指派 | "https://fabrikam.blob.core.windows.net/container/path/to/file.csv;managed_identity=system" |
使用者指派 | "https://fabrikam.blob.core.windows.net/container/path/to/file.csv;managed_identity=12345678-1234-1234-1234-1234567890ab" |
受控識別必須具有執行作業的必要許可權。 例如,在Azure Blob 儲存體中,若要從 Blob 讀取,受控識別需要儲存體 Blob 資料讀取者角色,以及匯出至受控識別需要儲存體 Blob 資料參與者角色的 Blob。 若要深入瞭解,請參閱Azure Blob 儲存體/Data Lake Storage Gen2存取控制或Data Lake Storage Gen1存取控制。
注意
只有特定 Azure Data Explorer流程才支援受控識別,而且需要設定受控識別原則。 如需詳細資訊,請參閱受控識別概觀。
共用存取 (SAS) 權杖
在Azure 入口網站中,產生具有所需許可權的SAS 權杖。
例如,若要從外部儲存體讀取,請指定讀取和列出許可權,以及匯出至外部儲存體,請指定寫入權限。 若要深入瞭解,請參閱 使用共用存取簽章委派存取。
使用 SAS URL 作為連接字串。
範例 |
---|
"https://fabrikam.blob.core.windows.net/container/path/to/file.csv?sv=...&sp=rwd" |
Microsoft Entra存取權杖
若要新增 base-64 編碼Microsoft Entra存取權杖,請將 附加 ;token={AadToken}
至連接字串。 權杖必須是資源 https://storage.azure.com/
。
如需如何產生Microsoft Entra存取權杖的詳細資訊,請參閱取得授權的存取權杖。
範例 |
---|
"https://fabrikam.blob.core.windows.net/container/path/to/file.csv;token=1234567890abcdef1234567890abcdef1234567890abc..." |
儲存體帳戶存取金鑰
若要新增儲存體帳戶存取金鑰,請將金鑰附加至連接字串。 在 Azure Blob 儲存體 中,附加 ;{key}
至連接字串。 針對 Azure Data Lake Storage Gen 2,請將 附加 ;sharedkey={key}
至 連接字串。
儲存體帳戶 | 範例 |
---|---|
Azure Blob 儲存體 | "https://fabrikam.blob.core.windows.net/container/path/to/file.csv;ljkAkl...==" |
Azure Data Lake Storage Gen2 | "abfss://fs@fabrikam.dfs.core.windows.net/path/to/file.csv;sharedkey=sv=...&sp=rwd" |
Amazon Web Services 以程式設計方式存取金鑰
若要新增 Amazon Web Services 存取金鑰,請將 附加 ;AwsCredentials={ACCESS_KEY_ID},{SECRET_ACCESS_KEY}
至連接字串。
範例 |
---|
"https://yourbucketname.s3.us-east-1.amazonaws.com/path/to/file.csv;AwsCredentials=AWS1234567890EXAMPLE,1234567890abc/1234567/12345678EXAMPLEKEY" |
Amazon Web Services S3 預先簽署的 URL
使用S3 預先簽署的 URL作為連接字串。
範例 |
---|
"https://yourbucketname.s3.us-east-1.amazonaws.com/file.csv?12345678PRESIGNEDTOKEN" |
意見反應
https://aka.ms/ContentUserFeedback。
即將登場:在 2024 年,我們將逐步淘汰 GitHub 問題作為內容的意見反應機制,並將它取代為新的意見反應系統。 如需詳細資訊,請參閱:提交並檢視相關的意見反應