管理 Azure 自動化執行身分帳戶

重要

Azure 自動化執行身分帳戶將于 2023 年 9 月 30 日淘汰,並將取代為受控識別。 在該日期之前,您必須開始移轉 Runbook 以使用 受控識別。 如需詳細資訊,請參閱 從現有的執行身分帳戶移轉至受控識別 ,以開始將 Runbook 從執行身分帳戶移轉至 2023 年 9 月 30 日之前的受控識別。

Azure 自動化中的執行身分帳戶會提供驗證,以使用自動化 Runbook 和其他自動化功能來管理 Azure Resource Manager 或 Azure 傳統部署模型上的資源。

在本文中,我們將討論如何管理執行身分或傳統執行身分帳戶,包括:

  • 如何更新自我簽署憑證
  • 如何從企業或協力廠商憑證授權單位單位 (CA) 更新憑證
  • 管理執行身分帳戶的許可權

若要深入瞭解Azure 自動化帳戶驗證、管理執行身分帳戶所需的許可權,以及處理自動化案例的相關指引,請參閱自動化帳戶驗證概觀

更新自我簽署憑證

您為執行身分帳戶建立的自我簽署憑證,會在建立日起算一年後到期。 有時您必須在執行身分帳戶到期前更新憑證。 您可以在該憑證到期前隨時更新憑證。

當您更新自我簽署憑證時,系統會保留目前的有效憑證,以確保已排入佇列或正在執行以及使用該「執行身分」帳戶進行驗證的所有 Runbook,都不會受到負面影響。 憑證在到期日之前會保持有效。

注意

如果您認為執行身分帳戶遭到盜用,您可以刪除自我簽署憑證並重新加以建立。

注意

如果您已將執行身分帳戶設定為使用企業或協力廠商 CA 所簽發的憑證,而且您可以使用 選項來更新自我簽署憑證選項,則企業憑證會取代為自我簽署憑證。 若要在此案例中更新您的憑證,請參閱 更新企業或協力廠商憑證

使用下列步驟來更新自我簽署憑證。

  1. 登入 Azure 入口網站

  2. 移至您的自動化帳戶,然後選取 [帳戶設定] 區段中的 [執行身分帳戶]。

    自動化帳戶屬性窗格。

  3. 在 [ 執行身分帳戶 ] 屬性頁面上,根據您需要更新憑證的帳戶,選取 [ 執行身分帳戶 ] 或 [ 傳統執行身分帳戶 ]。

  4. 在所選帳戶的 [ 屬性 ] 頁面上,選取 [ 更新憑證]。

    更新執行身分帳戶的憑證。

  5. 更新憑證時,您可以在功能表的 [通知] 底下追蹤進度。

更新企業或協力廠商憑證

每個憑證都有內建到期日。 如果您指派給執行身分帳戶的憑證是由憑證授權單位單位 (CA) 所發行,您必須執行一組不同的步驟,以在新憑證到期之前設定執行身分帳戶。 您可以在該憑證到期前隨時更新憑證。

  1. 遵循 建立新憑證的步驟匯入更新的憑證。 自動化需要憑證具有下列設定:

    • 指定Microsoft增強型 RSA 和 AES 密碼編譯提供者的提供者
    • 標示為可匯出
    • 設定為使用 SHA256 演算法
    • *.pfx以 或 *.cer 格式儲存。

    匯入憑證之後,請記下或複製憑證 指紋 值。 這個值是用來以新的憑證更新執行身分連接屬性。

  2. 登入 Azure 入口網站

  3. 搜尋並選取 [自動化帳戶]。

  4. 在 [自動化帳戶] 頁面上,從清單中選取您的自動化帳戶。

  5. 在左窗格中,選取 [ 連線]。

  6. 在 [連線]頁面上,選取[AzureRunAsConnection],並使用新的憑證指紋更新憑證指紋。

  7. 選取 [儲存] 以認可變更。

授與其他訂用帳戶的執行身分帳戶許可權

Azure 自動化支援從一個訂用帳戶使用單一自動化帳戶,以及針對跨多個訂用帳戶的 Azure Resource Manager資源執行 Runbook。 此設定不支援 Azure 傳統部署模型。

您會將執行身分帳戶服務主體指派給其他訂用帳戶中的 參與者 角色,或更嚴格的許可權。 如需詳細資訊,請參閱 Azure 自動化 中的角色型存取控制。 若要將執行身分帳戶指派給其他訂用帳戶中的角色,執行此工作的使用者帳戶必須是該訂用帳戶中 擁有者 角色的成員。

注意

此設定僅支援使用一般 Azure AD 租使用者的組織多個訂用帳戶。

授與執行身分帳戶許可權之前,您必須先記下要指派的服務主體顯示名稱。

  1. 登入 Azure 入口網站
  2. 從自動化帳戶中,選取 [帳戶設定] 區段下的 [執行身分帳戶]。
  3. 選取 [Azure 執行身分帳戶]。
  4. 複製或記下[Azure 執行身分帳戶] 頁面上 [顯示名稱] 的值。

如需如何新增角色指派的詳細步驟,請參閱下列文章,視您要使用的方法而定。

將執行身分帳戶指派給角色之後,請在 Runbook 中指定要 Set-AzContext -SubscriptionId "xxxx-xxxx-xxxx-xxxx" 設定要使用的訂用帳戶內容。 如需詳細資訊,請參閱 Set-AzCoNtext

檢查Azure 自動化執行身分帳戶的角色指派

若要檢查指派給自動化執行身分帳戶 Azure AD 的角色,請遵循下列步驟:

  1. 登入 Azure 入口網站

  2. 移至您的自動化帳戶,然後在 [ 帳戶設定]中,選取 [ 執行身分帳戶]。

  3. 選取 [Azure 執行身分帳戶 ] 以檢視 應用程式識別碼

    說明如何複製應用程式識別碼的螢幕擷取畫面。

  4. 移至Azure 入口網站並搜尋Azure Active Directory

  5. 在 [ Active Directory 概觀 ] 頁面的 [ 概觀 ] 索引標籤的搜尋方塊中,輸入應用程式識別碼。

    螢幕擷取畫面,描述在 [概觀] 索引標籤中複製的應用程式識別碼。

    在 [ 企業應用程式 ] 區段中,您會看到執行身分帳戶的顯示名稱。

  6. 選取應用程式識別碼,然後在該識別碼的屬性頁面中,移至 [ 概觀 ] 刀鋒視窗、 [屬性],然後複製企業應用程式的名稱。

  7. 移至Azure 入口網站並搜尋您的訂用帳戶,然後選取您的訂用帳戶。

  8. 移至[存取控制 (IAM) ]、[角色指派],並在搜尋方塊中貼上企業應用程式的名稱,以檢視應用程式,以及指派給它的角色和範圍。 例如:在下列螢幕擷取畫面中,執行身分帳戶 Azure AD 應用程式具有訂用帳戶層級的參與者存取權。

    說明如何檢視指派給企業應用程式之角色和範圍的螢幕擷取畫面。

限制執行身分帳戶權限

若要對 Azure 中的資源控制自動化的目標,您可以執行 Update-AutomationRunAsAccountRoleAssignments.ps1 指令碼。 此指令碼會變更您現有的執行身分帳戶服務主體,以建立及使用自訂角色定義。 此角色具有所有資源的權限 (Key Vault 除外)。

重要

執行 Update-AutomationRunAsAccountRoleAssignments.ps1 指令碼之後,使用執行身分帳戶存取 Key Vault 的 Runbook 即無法再運作。 執行指令碼之前,您應先檢閱帳戶中用來呼叫 Azure Key Vault 的 Runbook。 若要啟用 Azure 自動化 Runbook 對 Key Vault 的存取,您必須將執行身分帳戶新增至 Key Vault 的權限

如果您需要進一步限制執行身分服務主體可以執行的動作,您可以將其他資源類型新增至 NotActions 自訂角色定義的 元素。 下列範例會限制對 Microsoft.Compute/* 的存取。 如果您將此資源類型新增至角色定義的 NotActions,該角色即無法存取任何計算資源。 若要深入了解角色定義,請參閱了解 Azure 資源的角色定義

$roleDefinition = Get-AzRoleDefinition -Name 'Automation RunAs Contributor'
$roleDefinition.NotActions.Add("Microsoft.Compute/*")
$roleDefinition | Set-AzRoleDefinition

您可以判斷執行身分帳戶所使用的服務主體是否已指派 參與者 角色或自訂角色。

  1. 登入 Azure 入口網站
  2. 移至您的自動化帳戶,然後選取 [帳戶設定] 區段中的 [執行身分帳戶]。
  3. 選取 [Azure 執行身分帳戶]。
  4. 選取 [角色],以找出正在使用的角色定義。

確認執行身分帳戶角色。

您也可以針對多個訂用帳戶或自動化帳戶,確認執行身分帳戶所使用的角色定義。 此動作可使用 PowerShell 資源庫中的 Check-AutomationRunAsAccountRoleAssignments.ps1 指令碼來完成。

將權限新增至 Key Vault

您可以允許 Azure 自動化確認 Key Vault 和您的執行身分帳戶服務主體是否使用自訂角色定義。 您必須:

  • 將權限授與 Key Vault。
  • 設定存取原則。

您可以使用PowerShell 資源庫中的Extend-AutomationRunAsAccountRoleAssignmentToKeyVault.ps1腳本,將執行身分帳戶許可權授與金鑰保存庫。 如需設定金鑰保存庫許可權的詳細資訊,請參閱指派金鑰保存庫存取原則。

解決執行身分帳戶設定錯誤的問題

在初始設定期間,可能會不當刪除或建立要讓執行身分或傳統執行身分帳戶正常運作所需的某些設定項目。 可能的設定錯誤實例包括:

  • 憑證資產
  • 連線資產
  • 從參與者角色中移除了執行身分帳戶
  • Azure AD 中的服務主體或應用程式

在這類設定錯誤實例中,自動化帳戶會偵測到變更,並在帳戶的 [執行身分帳戶] 屬性頁面上顯示 [不完整] 狀態。

未完成的執行身分帳戶設定。

當您選取執行身分帳戶時,帳戶的 [屬性] 窗格會顯示下列錯誤訊息:

The Run As account is incomplete. Either one of these was deleted or not created - Azure Active Directory Application, Service Principal, Role, Automation Certificate asset, Automation Connect asset - or the Thumbprint is not identical between Certificate and Connection. Please delete and then re-create the Run As Account.

您可以 刪除重新建立 執行身分帳戶,以快速解決這些執行身分帳戶問題。

後續步驟