ARM テンプレートとしての認証を無効にする
Azure AD トークンは、レジストリ ユーザーが ACR で認証されるときに使用されます。 既定では、Azure Container Registry (ACR) は、Azure リソースを管理するためのコントロール プレーン管理レイヤーである Azure Resource Manager (ARM) の対象ユーザー スコープが設定された Azure AD トークンを受け入れます。
ARM 対象ユーザー トークンを無効にし、ACR 対象ユーザー トークンを適用することで、受け入れられたトークンのスコープを絞り込んで認証プロセス中のコンテナー レジストリのセキュリティを強化できます。
ACR 対象ユーザー トークンの適用では、レジストリ認証とサインイン プロセス中に、ACR に対して明示的に設定された対象ユーザー スコープを持つ Azure AD トークンのみが受け入れられます。 これは、以前に受け入れられた ARM 対象ユーザー トークンはレジストリ認証に対して有効ではなくなるため、コンテナー レジストリのセキュリティが強化されることを意味します。
このチュートリアルでは、次の作業を行う方法について説明します。
- ACR で authentication-as-arm を無効にする - Azure CLI。
- ACR で authentication-as-arm を無効にする - Azure portal。
前提条件
- バージョン 2.40.0 以降の Azure CLI をインストールするかアップグレードします。 バージョンを確認するには、
az --version
を実行します。 - Azure portal にサインインします。
ACR で authentication-as-arm を無効にする - Azure CLI
azureADAuthenticationAsArmPolicy
を無効にすると、レジストリで ACR 対象ユーザー トークンが強制的に使用されます。 Azure CLI バージョン 2.40.0 以降を使用できます。バージョンを確認するには az --version
を実行します。
レジストリでの ARM トークンを使用した認証のためのレジストリのポリシーの現在の構成を表示するコマンドを実行します。 状態が
enabled
の場合は、APR と 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 で authentication-as-arm を無効にする - Azure portal
組み込みポリシーを割り当てて authentication-as-arm
プロパティを無効にすると、現在および将来のレジストリのレジストリ プロパティが自動的に無効になります。 この自動動作は、ポリシー スコープ内に作成されたレジストリに対して行われます。 使用可能なポリシー スコープには、テナント内のリソース グループ レベルのスコープまたはサブスクリプション ID レベルのスコープが含まれます。
ACR で authentication-as-arm を無効にするには、次の手順に従います。
Azure portal にサインインします。
azure-container-registry-built-in-policy 定義の ACR の組み込みポリシー定義を参照してください。
authentication-as-arm 定義を無効にする組み込みポリシーを割り当てる - Azure portal。
ARM 対象ユーザー トークン認証を無効にするための組み込みのポリシー定義を割り当てる - Azure portal。
レジストリの条件付きアクセス ポリシーは、Azure portal で有効にすることができます。
Azure Container Registry には、次のように authentication-as-arm を無効にする 2 つの組み込みポリシー定義があります。
Container registries should have ARM audience token authentication disabled.
- このポリシーは、準拠していないリソースを報告してブロックし、準拠していないリソースを準拠しているリソースに更新する要求も送信します。Configure container registries to disable ARM audience token authentication.
- このポリシーは、修復を提供し、準拠していないリソースを準拠しているリソースに更新します。Azure portal にサインインします。
[Azure Container Registry]>[リソース グループ]>[設定]>[ポリシー] に移動します。
[Azure Policy] に移動し、[割り当て] で [ポリシーの割り当て] を選択します。
[ポリシーの割り当て] で、フィルターを使用して、[スコープ]、[ポリシー定義]、[割り当て名] を検索します。
[スコープ] を選択し、[サブスクリプション] と [リソース グループ] をフィルター処理して検索し、[選択] を選択します。
[ポリシー定義] を選択して、条件付きアクセス ポリシーの組み込みポリシー定義をフィルター処理して検索します。
フィルターを使用して、[スコープ]、[ポリシー定義]、[割り当て名] を選択して確認します。
フィルターを使用し、コンプライアンスの状態を限定するか、ポリシーを検索します。
設定を確認し、ポリシーの適用を [有効] に設定します。
[確認および作成] を選択します。