我已經設定了一個 Synapse 環境,并用一些 Parquet 示例檔案填充了我的存盤帳戶。然后,我創建了一個無服務器 SQL 資料庫,并在 Parquet 檔案上創建了一些外部表。所有這些作業正常,我可以使用 AD 身份驗證從 Synapse UI 和 SSMS 很好地查詢這些表。
問題是我想將一個應用程式連接到不支持 AD 身份驗證的無服務器 SQL 資料庫。因此,我想使用標準 SQL 帳戶連接它。我已經設定了一個 SQL 帳戶(用戶名和密碼)并且我能夠通過 SSMS 進行連接,但由于此錯誤而無法查詢任何表...
無法訪問外部表“TableName”,因為無法列出目錄的內容。
我認為這是一個雙跳身份驗證問題,因為 SQL 用戶無權訪問存盤帳戶?我似乎找不到任何有關如何執行此操作的指南。有人知道嗎?
uj5u.com熱心網友回復:
我寫了一篇博客文章解決了這個問題,因為我幾天前也遇到了這個問題。你可以在這里閱讀。
基本上,歸結為您必須:
- 為您的用戶創建 SQL 登錄
- 在 SQL 中創建一個憑據,該憑據與指向資料湖中包含要查詢的檔案的容器的 URL 同名
- 將對該憑據的參考權限授予您的 SQL 登錄
- 在您的資料庫上為該登錄創建一個用戶
除此之外,您還需要創建一些特定的角色分配。
轉載請註明出處,本文鏈接:https://www.uj5u.com/qianduan/461518.html
標籤:天蓝色 天蓝色突触 天蓝色数据湖-gen2 azure-sql-数据仓库
