當您試圖訪問機密時,您收到了一條錯誤消息。
com.www.eheci.common.client.DatabricksServiceException: INVALID_STATE: Databricks無法訪問keyvault: https://xxxxxxx.vault.azure.net/。
此錯誤消息沒有單一的根本原因,因此您必須進行一些故障排除。
確認密鑰庫上的權限設置正確
- 加載Azure門戶。
- 開放關鍵的金庫.
- 單擊密鑰庫。
- 點擊訪問策略.
- 驗證得到而且列表應用權限。
檢查密鑰庫上的防火牆配置
- 加載Azure門戶。
- 開放關鍵的金庫.
- 單擊密鑰庫。
- 點擊網絡.
- 點擊防火牆和虛擬網絡.
- 選擇私有端點和選定的網絡.
- 驗證允許受信任的微軟服務繞過此防火牆?設置為是的.
- 嚐試訪問這些秘密。
如果您可以查看秘密,問題就解決了。
如果你還在INVALID_STATE:數據庫無法訪問密鑰庫錯誤,請繼續排除故障。
列出秘密範圍內的所有秘密
- 打開筆記本。
- 列出範圍內的所有秘密。
% python dbutils.secrets.list(“< scopename >”)
試著了解個人的秘密
嚐試訪問一些不同的,隨機的秘密。
python dbutils.secrets %。get (" < KeyvaultSecretScope >”、“< SecretName >”)
如果某些秘密可以獲取,而其他秘密失敗,則失敗的秘密要麼是禁用的,要麼是不活動的。
啟用個人秘密
- 加載Azure門戶。
- 開放關鍵的金庫.
- 單擊密鑰庫。
- 點擊秘密.
- 單擊秘密並驗證狀態是否設置為啟用.
如果秘密是禁用的,啟用它,或創建一個新版本。
驗證個人秘密是否有效
嚐試訪問之前失敗的秘密。
python dbutils.secrets %。get (" < KeyvaultSecretScope >”、“< SecretName >”)
你可以把它們都取回來。