簡體   English   中英

在 Hybrid Worker 上運行的 runbook 中的 Set-AzContext 身份驗證只工作了幾次,最終失敗了

[英]Set-AzContext authentication inside a runbook run on Hybrid Worker works only a few times, eventually fails

我沒有使用 Connect-AzAccount,而是使用本地保存在我的 Hybrid Worker 上的配置文件來針對 Azure 進行身份驗證,並在每次運行 runbook 時加載它。

此方法有效,但在成功運行 2 或 3 次后,以下所有 Runbook 作業最終都處於已暫停狀態 state。
不幸的是,作業停止工作如此隨機,以至於我無法查明可能的原因。

運行手冊中的授權代碼:

$profile = Import-AzContext -path $path

$subscriptionID = $profile.Context.Subscription.SubscriptionID

設置 AzContext -subscriptionID $subscriptionID

在本地運行 Get-AzContext 確認已加載憑據和上下文,但 Microsoft-SMA 日志顯示身份驗證錯誤(407 代理)。

我應該設置 scope 嗎? 我不知道的到期時間? 我是否應該在每次作業運行后清除上下文?

任何輸入將不勝感激。

首先在 Runbook 的開頭運行Clear-AzContext以確保清除任何繼承的上下文,或者在 Runbook 的末尾運行 Disconnect-AzAccount 根據微軟:

默認情況下,保存 Azure 上下文以在 PowerShell 會話之間使用。 當 Hybrid Runbook Worker 上的先前 Runbook 已通過 Azure 身份驗證時,該上下文可能會保留到系統 PowerShell 配置文件中的磁盤,根據 Azure 上下文和登錄憑據 | 微軟文檔。 例如,帶有 Get-AzVM 的 runbook 可以在不調用 Connect-AzAccount 的情況下返回訂閱中的所有 VM,並且用戶將能夠訪問 Azure 資源而無需在該 runbook 中進行身份驗證。 您可以在 Azure PowerShell 中禁用上下文自動保存,詳見此處。

如果這不能解決問題,我將啟用進度日志記錄並逐步查看運行手冊以確定是哪個部分導致了問題。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM