私たちのアプリケーションは、お客様からアップロードされたファイルをブロブストレージに保存します。これらのファイルは、さまざまな関係者(お客様とそのサプライヤー)の間で交換されます。アップロードされたファイルのウイルスをチェックする方法はありますか?マルウェア対策サービスは仮想マシンをチェックするだけのようですが、それを使用してファイルをサービスとしてチェックすることに関する情報を取得できません。
チェックするまで、そのようなファイルをAzure Storageに "保留中"ファイルとして保存できれば、優れたソリューションになります。次に、このファイルをチェックして結果を返すサービスが必要になります。ファイルにウイルスが含まれていない場合は、最終的な宛先に移動できます。
Azure Storageはまさに...ストレージです。ウイルス対策などの組み込みユーティリティはありません。自分でウイルス対策チェックを行う必要があります。ウイルス対策ツールは通常、ローカルOSストレージでのみ機能するため、「保留中」のコンテンツ(参照)を、ウイルス対策がインストールされているローカルディスクに配置し、ウイルス対策チェック後にBLOBストレージにコピーする必要があります。終わらせる。
これをどのように管理し、どのソフトウェアを使用するかは、あなた次第です。ただし、VM、App Services、およびCloud Services(web/workerロール)はすべて、使用可能なローカルディスクを持っています。
他の回答では、Azure Storageは単なるストレージであると述べています。ただし、これにはいくつかの方法があります。
最初の解決策は、独自のアンチウイルスを実行し、これをゲートウェイとして使用するか、プログラムでBlobストレージからファイルをダウンロードして、ファイルを確認し、適切なアクションを実行することです。これを自分で行うためにClamAVのようなものを実行することは可能です。
あるいは、URLまたは直接のファイルアップロードを受け入れる AttachmentScanner (コメントに記載されているとおり)のようなサードパーティのサービスを使用することもできます。 Azureを使用すると、数分の有効期限でファイルを指す一時的なURLを生成し、そのURLをAttachmentScannerに渡して、結果に応じて適切なアクションを実行できます。
Azureファイルストレージコンテナーに「azinbox」フォルダーを設定しました。 VMでコンソールアプリケーション(ジョブ)をセットアップし、そのフォルダー内のファイルを30秒ごとにチェックします。ジョブがそれを見つけた場合、それはファイルをazinboxからvminboxフォルダーに移動しますVM。ファイルがVMに表示されるとすぐに、ウイルスに感染している場合は隔離され、ファイルはvminboxから削除されます。vmのジョブは、30秒後にファイルがまだ存在するかどうかを確認しますvminboxである場合は、OKである必要があります。ジョブは、検証済みのファイルをAzureファイルストレージコンテナーのazoutboxフォルダーに移動します。Webサイトの観点から、1)ファイルをazinboxにアップロードします2)少し待ってazoutboxを確認します。ファイルが見つかった場合、Webサイトはファイルをazoutboxから最終的な宛先に移動します。
ファイルのアップロードを完了するのに長い時間がかかるので、私はそれがくだらないソリューションであることを認めます。特に1つ以上アップロードするユーザーがいる場合、ユーザーに単純なPDF)をアップロードするのに1〜2分かかるのは、長い時間のように思えるかもしれません。
また、これには、ウイルスのファイルを検証するためにVMサーバー全体をセットアップする必要があります。
誰かがより良いオプションを持っているなら、私に知らせてください。