排除關鍵保險庫訪問問題

排除Azure密鑰庫訪問問題。驗證防火牆。使秘密。

寫的arvind.ravish

最後發布日期:2022年5月17日

當您試圖訪問機密時,您收到了一條錯誤消息。

com.www.eheci.common.client.DatabricksServiceException: INVALID_STATE: Databricks無法訪問keyvault: https://xxxxxxx.vault.azure.net/。

此錯誤消息沒有單一的根本原因,因此您必須進行一些故障排除。

確認密鑰庫上的權限設置正確

  1. 加載Azure門戶。
  2. 開放關鍵的金庫
  3. 單擊密鑰庫。
  4. 點擊訪問策略
  5. 驗證得到而且列表應用權限。

檢查密鑰庫上的防火牆配置

  1. 加載Azure門戶。
  2. 開放關鍵的金庫
  3. 單擊密鑰庫。
  4. 點擊網絡
  5. 點擊防火牆和虛擬網絡
  6. 選擇私有端點和選定的網絡
  7. 驗證允許受信任的微軟服務繞過此防火牆?設置為是的
  8. 嚐試訪問這些秘密。

Azure密鑰庫防火牆配置屏幕。

如果您可以查看秘密,問題就解決了。

如果你還在INVALID_STATE:數據庫無法訪問密鑰庫錯誤,請繼續排除故障。

列出秘密範圍內的所有秘密

  1. 打開筆記本。
  2. 列出範圍內的所有秘密。
% python dbutils.secrets.list(“< scopename >”)

試著了解個人的秘密

嚐試訪問一些不同的,隨機的秘密。

python dbutils.secrets %。get (" < KeyvaultSecretScope >”、“< SecretName >”)

如果某些秘密可以獲取,而其他秘密失敗,則失敗的秘密要麼是禁用的,要麼是不活動的。

啟用個人秘密

  1. 加載Azure門戶。
  2. 開放關鍵的金庫
  3. 單擊密鑰庫。
  4. 點擊秘密
  5. 單擊秘密並驗證狀態是否設置為啟用

啟用Azure密鑰庫秘密。

如果秘密是禁用的,啟用它,或創建一個新版本。

驗證個人秘密是否有效

嚐試訪問之前失敗的秘密。

python dbutils.secrets %。get (" < KeyvaultSecretScope >”、“< SecretName >”)

你可以把它們都取回來。