カスタマー マネージド キーのトラブルシューティング
この記事は、4 部構成のチュートリアル シリーズのパート 4 です。 パート 1 では、カスタマー マネージド キーの概要、その機能、レジストリで有効にする前の考慮事項について説明します。 パート 2 では、Azure CLI、Azure portal、または Azure Resource Manager テンプレートを使用してカスタマー マネージド キーを有効にする方法について説明します。 パート 3 では、カスタマー マネージド キーのローテーション、更新、取り消しの方法について説明します。 この記事は、カスタマー マネージド キーに関する一般的な問題のトラブルシューティングと解決に役立ちます。
マネージド ID を削除するときのエラー
レジストリの暗号化を構成するために使用したユーザー割り当てまたはシステム割り当てのマネージド ID を削除しようとすると、エラーが表示されることがあります。
Azure resource '/subscriptions/xxxx/resourcegroups/myGroup/providers/Microsoft.ContainerRegistry/registries/myRegistry' does not have access to identity 'xxxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxx' Try forcibly adding the identity to the registry <registry name>. For more information on bring your own key, please visit 'https://aka.ms/acr/cmk'.
暗号化キーを変更 (ローテーション) することはできません。 解決手順は、暗号化に使用した ID の種類によって異なります。
ユーザー割り当て ID の削除
ユーザー割り当て ID を削除しようとしたときにエラーが発生する場合は、次の手順に従います。
az acr identity assign コマンドを使用してユーザー割り当て ID を再割り当てします。
ユーザー割り当て ID のリソース ID を渡すか、ID がレジストリと同じリソース グループにある場合はその名前を使用します。
次に例を示します。
az acr identity assign -n myRegistry \ --identities "/subscriptions/mysubscription/resourcegroups/myresourcegroup/providers/Microsoft.ManagedIdentity/userAssignedIdentities/myidentity"
キーを変更し、別の ID を割り当てます。
これで、元のユーザー割り当て ID を削除できるようになりました。
システム割り当て ID の削除
システム割り当て ID を削除しようとしたときにエラーが発生する場合は、ID の復元に関するサポートのための Azure サポート チケットを作成します。
キー コンテナー ファイアウォールを有効にした後のエラー
暗号化されたレジストリを作成した後でキー コンテナー ファイアウォールまたは仮想ネットワークを有効にすると、イメージのインポートまたはキーの自動ローテーションで HTTP 403 などのエラーが発生する場合があります。 この問題を解決するには、最初に暗号化に使用したマネージ ID とキーを再構成します。 カスタマー マネージド キーのローテーションに関する記事の手順を参照してください。
問題が解決しない場合は、Azure サポートにお問い合わせください。
ID の有効期限エラー
レジストリに関連付けられている ID は、有効期限切れを回避するために自動更新に設定されています。 レジストリから ID の関連付けを解除すると、CMK で使用されている ID を削除できないことを説明するエラー メッセージが表示されます。 ID を削除しようとすると、ID の自動更新ができなくなる恐れがあります。 成果物のプル/プッシュ操作は、ID の有効期限が切れるまで機能します (通常は 3 か月)。 ID の有効期限が切れた後、HTTP 403 で次のエラー メッセージが表示されます: "The identity associated with the registry is inactive." (レジストリに関連付けられている ID が非アクティブです。) "This could be due to attempted removal of the identity." (これは、ID の削除が試行されたことが原因である可能性があります。) "Reassign the identity manually" (ID を手動で再割り当てしてください)。
ID をレジストリに明示的に再割り当てする必要があります。
az acr identity assign コマンドを実行して、ID を手動で再割り当てします。
- たとえば、次のように入力します。
az acr identity assign -n myRegistry \ --identities "/subscriptions/mysubscription/resourcegroups/myresourcegroup/providers/Microsoft.ManagedIdentity/userAssignedIdentities/myidentity"
キー コンテナーまたはキーの誤削除
カスタマー マネージド キーによるレジストリの暗号化に使用されるキー コンテナーまたはキーが削除されると、レジストリの内容にアクセスできなくなります。 キー コンテナーで論理的な削除が有効になっている場合 (既定のオプション)、削除されたコンテナーまたはキー コンテナー オブジェクトを回復して、レジストリ操作を再開することができます。
次の手順
キー コンテナーの削除と回復のシナリオについては、「論理的な削除と消去保護を使用した Azure Key Vault の回復の管理」を参照してください。