Azure Vault からのアクセスを運用環境の App Services のみに制限する

Azure Vault からのアクセスを運用環境の App Services のみに制限する

運用中のアプリケーションにのみシークレットへのアクセスを制限し、アクセスを許可したい。ファイアウォールと仮想ネットワーク > 選択したネットワークを有効にし、Microsoftの信頼されたサービスを許可するを選択しても

キーにアクセスしようとすると、「操作が無効なステータス コード「禁止」を返しました」というメッセージが表示されます。

仮想ネットワーク

アクセスポリシー

答え1

まず、Key Vault の仮想ネットワーク サービス エンドポイント機能はまだプレビュー段階です。この機能は運用シナリオでは使用しないことを強くお勧めします。

この場合、ファイアウォールをバイパスするには、アプリケーションが配置されている仮想ネットワークまたはパブリック IP アドレス範囲からの接続を許可する必要がある場合があります。

画像アクセスポリシーによると、すべてのネットワークからのトラフィックへのアクセスが拒否されます。これらのソース以外の発信者は、デフォルトの発信者を除いてアクセスが拒否されます。信頼できる Microsoft サービスつまり、これらのサービスからの接続はファイアウォールを通過できますが、そのような呼び出し元は有効な AAD トークンを提示する必要があり、要求された操作を実行するためのアクセス許可を持っている必要があります。

また、App Servicesは近々登場しますが、現在のところ見つかりません。信頼できる Microsoft サービスApp Services では、ASE (App Service Environment) インスタンスのみがサポートされます。

ここに画像の説明を入力してください

参照:Key Vault の仮想ネットワーク サービス エンドポイントの発表 (プレビュー)

アップデート1

これからリンクコメントで提供された内容。

PaaSリソースへのネットワークアクセスを制限する場合は、特定のサブネットで特定のサービスエンドポイント(Microsoft.KeyVault)を有効にしてください。また、ネットワークを選択した場合はサブネットも許可されます。詳細については、こちらをご覧ください。チュートリアル

App ServiceでAzureマネージドサービスIDを使用する場合は、アクセスポリシーを追加していることを確認する必要があります。アプリケーションのIDが含まれます。 参照するこれ

アップデート2

この場合、オンプレミス ネットワークからキー コンテナーにアクセスするのではなく、Web アプリがキー コンテナーにアクセスできるようにするだけの場合は、Web アプリ サービスの送信 IP アドレスをキー コンテナー ファイアウォールに追加する必要があります。

答え2

アプリ サービスでマネージド サービス ID (MSI) を使用する場合は、Key Vault ポリシーでその Azure AD ID へのアクセスを許可することができ、アプリに資格情報をハードコードしておく必要がなくなります。https://azure.microsoft.com/sv-se/resources/samples/app-service-msi-keyvault-dotnet/

キー ボールトへのネットワーク/エンドポイント アクセスを制限する方法については、Nancy の「Microsoft Trusted Services」を使用するのが正解です。https://docs.microsoft.com/ja-jp/azure/key-vault/key-vault-overview-vnet-service-endpoints を参照してください。アプリ サービスは、Key Vault の信頼できるサービスです。

関連情報