停用驗證作為 ARM 範本
當登錄使用者向 ACR 進行驗證時,會使用 Azure AD 權杖。 根據預設,Azure Container Registry (ACR) 會接受 Azure AD 權杖,其物件範圍設定為 Azure Resource Manager (ARM),這是管理 Azure 資源的控制平面管理層。
藉由停用 ARM 物件權杖並強制執行 ACR 物件權杖,您可以在驗證程式期間增強容器登錄的安全性,方法是縮小已接受權杖的範圍。
透過 ACR 物件權杖強制執行,只有在登錄驗證和登入流程期間,才會接受針對 ACR 特別設定物件的 Azure AD 權杖。 這表示先前接受的 ARM 物件權杖將不再對登錄驗證有效,進而增強容器登錄的安全性。
在本教學課程中,您會了解如何:
- 在 ACR 中停用驗證為 ARM - Azure CLI。
- 在 ACR 中停用驗證為 ARM - Azure 入口網站。
必要條件
- 安裝或升級 Azure CLI 2.40.0 版或更新版本。 若要尋找版本,請執行
az --version
。 - 登入 Azure 入口網站。
在 ACR 中停用驗證為 ARM - Azure CLI
停用 azureADAuthenticationAsArmPolicy
會強制登錄使用 ACR 對象權杖。 您可以使用 Azure CLI 2.40.0 版或更新版本,執行 az --version
來找出版本。
執行命令以顯示登錄原則的目前設定,以使用 ARM 權杖搭配登錄進行驗證。 如果狀態為
enabled
,則 ACR 和 ARM 對象權杖都可以用於驗證。 如果狀態為disabled
,則表示只有 ACR 的對象權杖可用於驗證。az acr config authentication-as-arm show -r <registry>
執行命令來更新登錄原則的狀態。
az acr config authentication-as-arm update -r <registry> --status [enabled/disabled]
在 ACR 中停用驗證為 ARM - Azure 入口網站
藉由指派內建原則來停用 authentication-as-arm
屬性,會自動停用目前和未來登錄的登錄屬性。 此自動行為適用於在原則範圍內建立的登錄。 可能的原則範圍包括資源群組層級範圍或租用戶內的訂用帳戶識別碼層級範圍。
您可以遵循下列步驟,在 ACR 中停用驗證即 ARM:
登入 Azure 入口網站。
請參閱 azure-container-registry-built-in-policy 定義中的 ACR 內建原則定義。
指派內建原則以停用驗證即 ARM 定義 - Azure 入口網站。
指派內建原則定義以停用 ARM 對象權杖驗證 - Azure 入口網站。
您可以在 Azure 入口網站中啟用登錄的條件式存取原則。
Azure Container Registry 有兩個內建原則定義,可停用驗證即 ARM,如下所示:
Container registries should have ARM audience token authentication disabled.
- 此原則會報告、封鎖任何不符合規範的資源,也會傳送要求,將不符合規範的資源更新為符合規範。Configure container registries to disable ARM audience token authentication.
- 此原則提供對不符合規範的資源進行補救和將其更新至符合規範的措施。登入 Azure 入口網站。
瀏覽至 [Azure Container Registry] > [資源群組] > [設定] > [原則]。
瀏覽至 [Azure 原則],在 [指派] 上,選取 [指派原則]。
在 [指派原則] 下,使用篩選條件來搜尋並尋找 [範圍]、[原則定義]、[指派名稱]。
選取 [範圍] 以篩選並搜尋 [訂用帳戶] 和 [資源群組],然後選擇 [選取]。
選取 [原則定義] 以篩選及搜尋條件式存取原則的內建原則定義。
使用篩選條件來選取並確認 [範圍]、[原則定義] 和 [指派名稱]。
使用篩選條件來限制合規性狀態或搜尋原則。
確認設定,並將原則強制執行設定為已啟用。
請選取 [檢閱 + 建立]。