Spring 3MVCアプリケーションのファイルアップロードにウイルススキャンを実装する方法

クーラー

アップロードされたファイルをスキャンしてウイルスを検出し、Spring 3MVCアプリでユーザーに適切なメッセージを表示する必要があります。

現在、Spring MVC 3を使用してファイルのアップロードを構成しています。ファイルがコントローラーに受信されたら、ウイルスの存在を確認する必要があります。ファイルがウイルスに感染している場合、アプリケーションはそのファイルを拒否し、ユーザーに特定のメッセージを表示する必要があります。

これをJavaSpringMVCアプリケーションに実装する方法に関するアイデア。私が使用している春のバージョンは3.2.4です。

この方向のヘルプ/ポインタをいただければ幸いです。

どうもありがとう。

シシル・クマール

まず、インストールしたウイルス対策ソフトウェアが提供するAPIの種類を確認する必要があります。

Java API(AVG APIなど)が提供されている場合は、次のように使用する必要があります。

public void scanFile(byte[] fileBytes, String fileName)
   throws IOException, Exception {
   if (scan) {
      AVClient avc = new AVClient(avServer, avPort, avMode);
      if (avc.scanfile(fileName, fileBytes) == -1) {
         throw new VirusException("WARNING: A virus was detected in
            your attachment: " + fileName + "<br>Please scan
            your system with the latest antivirus software with
            updated virus definitions and try again.");
      }
   }
}

インストールされているウイルス対策ソフトウェアによってJavaAPIが提供されていない場合でも、以下のようにコマンドラインを使用してJavaAPIを呼び出すことができます。

String[] commands =  new String[5];
                  commands[0] = "cmd";
                  commands[1] = "/c";
                  commands[2] = "C:\\Program Files\\AVG\\AVG10\\avgscanx.exe";
                  commands[3] = "/scan=" + filename;
                  commands[4] = "/report=" + virusoutput;


                 Runtime rt = Runtime.getRuntime();
                 Process proc = rt.exec(commands);

参考までに興味深い記事があります:JEEアプリケーションでのアンチウイルスファイルスキャンの実装

これがお役に立てば幸いです。

この記事はインターネットから収集されたものであり、転載の際にはソースを示してください。

侵害の場合は、連絡してください[email protected]

編集
0

コメントを追加

0

関連記事

分類Dev

アノテーションベースのSpring Bootアプリケーションにプラグインアーキテクチャを実装する

分類Dev

Spring Javaアプリケーションで画像ファイルをキャッシュする方法は?

分類Dev

Spring Bootアプリケーションのビルドプロファイル/構成を管理する

分類Dev

Spring MVCアプリケーションにSwaggerを実装する「シンプルな」方法

分類Dev

アプリケーションコンテキストからプログラムでSpring xml構成ファイルを作成する方法は?

分類Dev

SpringブートアプリケーションからAWSS3にログファイルを保存する

分類Dev

SpringブートアプリケーションからAWSS3にログファイルを保存する

分類Dev

Spring Bootアプリケーションの特定のランタイムプロファイルでパッケージを除外する方法

分類Dev

イニシャライザなしでSpring MVCアプリケーションにサーブレットフィルタを登録する方法

分類Dev

Spring-Bootアプリケーションでログファイルを毎日ロールする方法

分類Dev

Java + Springコード実装を使用してファイルのアップロード、ダウンロード、リスト表示などの操作を実行するために公開されている残りの部分にMFTサーバーを接続する方法

分類Dev

Spring Bootアプリケーションのgradleビルドのアクティブプロファイルを設定する方法は?

分類Dev

Spring Bootコマンドラインアプリケーションをシャットダウンする方法

分類Dev

一部のJSONファイルをSpring Bootアプリケーションにロードする最良の方法

分類Dev

サーバーでファイルアップロードチャンクを処理する方法(Plupload / Spring MVC)?

分類Dev

Spring-ローカルファイルシステムに保存せずに、大きなマルチパートファイルのアップロードをデータベースにストリーミングする方法

分類Dev

シングルページAngularJSアプリケーションの基本的なSpringセキュリティ(セッション管理)を実装する方法

分類Dev

Spring BootアプリケーションのJarファイルのControllerクラスに記載されているRest APIにアクセスする方法

分類Dev

Spring Boot Mavenプラグインを使用すると、Spring Bootアプリケーションのリソースがjarファイルから失われる

分類Dev

Springアプリケーションのログファイル名を設定してtomcat / logsフォルダにログを記録する方法は?

分類Dev

Spring-Bootアプリケーションでフォントファイル(ttf)をダウンロードするためのポップアップを取得する

分類Dev

Spring Bootを使用してXLSファイルを読み取り、データベースに保存するアプリケーションを作成する方法

分類Dev

デフォルトのアプリケーションコンテキストBeanをオーバーライドするSpringの@DataJpaTestの構成

分類Dev

POMでSpringプロファイル固有のアプリケーションプロパティにアクセスします

分類Dev

Spring MVC Webアプリケーションでメールアドレスを確認する方法

分類Dev

Spring Boot:アプリケーションを再構築するたびに新しいバージョンのSQLファイルを実行する

分類Dev

Springブートアプリケーションのグレースフルシャットダウン

分類Dev

SpringWebアプリケーションの実行時にspring-web-mvcでWebApplicationContextとDispatcherServletのインスタンスを取得する方法

分類Dev

jspを使用してSpring Boot Webアプリケーションにページネーションフロントエンドを実装する方法

Related 関連記事

  1. 1

    アノテーションベースのSpring Bootアプリケーションにプラグインアーキテクチャを実装する

  2. 2

    Spring Javaアプリケーションで画像ファイルをキャッシュする方法は?

  3. 3

    Spring Bootアプリケーションのビルドプロファイル/構成を管理する

  4. 4

    Spring MVCアプリケーションにSwaggerを実装する「シンプルな」方法

  5. 5

    アプリケーションコンテキストからプログラムでSpring xml構成ファイルを作成する方法は?

  6. 6

    SpringブートアプリケーションからAWSS3にログファイルを保存する

  7. 7

    SpringブートアプリケーションからAWSS3にログファイルを保存する

  8. 8

    Spring Bootアプリケーションの特定のランタイムプロファイルでパッケージを除外する方法

  9. 9

    イニシャライザなしでSpring MVCアプリケーションにサーブレットフィルタを登録する方法

  10. 10

    Spring-Bootアプリケーションでログファイルを毎日ロールする方法

  11. 11

    Java + Springコード実装を使用してファイルのアップロード、ダウンロード、リスト表示などの操作を実行するために公開されている残りの部分にMFTサーバーを接続する方法

  12. 12

    Spring Bootアプリケーションのgradleビルドのアクティブプロファイルを設定する方法は?

  13. 13

    Spring Bootコマンドラインアプリケーションをシャットダウンする方法

  14. 14

    一部のJSONファイルをSpring Bootアプリケーションにロードする最良の方法

  15. 15

    サーバーでファイルアップロードチャンクを処理する方法(Plupload / Spring MVC)?

  16. 16

    Spring-ローカルファイルシステムに保存せずに、大きなマルチパートファイルのアップロードをデータベースにストリーミングする方法

  17. 17

    シングルページAngularJSアプリケーションの基本的なSpringセキュリティ(セッション管理)を実装する方法

  18. 18

    Spring BootアプリケーションのJarファイルのControllerクラスに記載されているRest APIにアクセスする方法

  19. 19

    Spring Boot Mavenプラグインを使用すると、Spring Bootアプリケーションのリソースがjarファイルから失われる

  20. 20

    Springアプリケーションのログファイル名を設定してtomcat / logsフォルダにログを記録する方法は?

  21. 21

    Spring-Bootアプリケーションでフォントファイル(ttf)をダウンロードするためのポップアップを取得する

  22. 22

    Spring Bootを使用してXLSファイルを読み取り、データベースに保存するアプリケーションを作成する方法

  23. 23

    デフォルトのアプリケーションコンテキストBeanをオーバーライドするSpringの@DataJpaTestの構成

  24. 24

    POMでSpringプロファイル固有のアプリケーションプロパティにアクセスします

  25. 25

    Spring MVC Webアプリケーションでメールアドレスを確認する方法

  26. 26

    Spring Boot:アプリケーションを再構築するたびに新しいバージョンのSQLファイルを実行する

  27. 27

    Springブートアプリケーションのグレースフルシャットダウン

  28. 28

    SpringWebアプリケーションの実行時にspring-web-mvcでWebApplicationContextとDispatcherServletのインスタンスを取得する方法

  29. 29

    jspを使用してSpring Boot Webアプリケーションにページネーションフロントエンドを実装する方法

ホットタグ

アーカイブ