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。

前提条件

ACR で authentication-as-arm を無効にする - Azure CLI

azureADAuthenticationAsArmPolicy を無効にすると、レジストリで ACR 対象ユーザー トークンが強制的に使用されます。 Azure CLI バージョン 2.40.0 以降を使用できます。バージョンを確認するには az --version を実行します。

  1. レジストリでの ARM トークンを使用した認証のためのレジストリのポリシーの現在の構成を表示するコマンドを実行します。 状態が enabled の場合は、APR と ARM の両方の対象ユーザー トークンを認証に使用できます。 状態が disabled の場合は、ACR の対象ユーザー トークンのみを認証に使用できることを意味します。

    az acr config authentication-as-arm show -r <registry>
    
  2. レジストリのポリシーの状態を更新するコマンドを実行します。

    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 を無効にするには、次の手順に従います。

  1. Azure portal にサインインします。

  2. azure-container-registry-built-in-policy 定義の ACR の組み込みポリシー定義を参照してください。

  3. 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. - このポリシーは、修復を提供し、準拠していないリソースを準拠しているリソースに更新します。

    1. Azure portal にサインインします。

    2. [Azure Container Registry]>[リソース グループ]>[設定]>[ポリシー] に移動します。

      Screenshot showing how to navigate Azure policies.

    3. [Azure Policy] に移動し、[割り当て][ポリシーの割り当て] を選択します。

      Screenshot showing how to assign a policy.

    4. [ポリシーの割り当て] で、フィルターを使用して、[スコープ][ポリシー定義][割り当て名] を検索します。

      Screenshot of the assign policy tab.

    5. [スコープ] を選択し、[サブスクリプション][リソース グループ] をフィルター処理して検索し、[選択] を選択します。

      Screenshot of the Scope tab.

    6. [ポリシー定義] を選択して、条件付きアクセス ポリシーの組み込みポリシー定義をフィルター処理して検索します。

      Screenshot of built-in-policy-definitions.

    7. フィルターを使用して、[スコープ][ポリシー定義][割り当て名] を選択して確認します。

    8. フィルターを使用し、コンプライアンスの状態を限定するか、ポリシーを検索します。

    9. 設定を確認し、ポリシーの適用を [有効] に設定します。

    10. [確認および作成] を選択します。

      Screenshot to activate a Conditional Access policy.

次のステップ