2016-12-16 6 views
0

私はJava Webアプリケーションをプログラミングするのに新しいです。私のWeb Springアプリケーションでは、ユーザーはPKCS #12の証明書(すべてのユーザーとアプリケーションインスタンスごとに1つの証明書)を再アップロードする必要があります。証明書は、アプリケーションがWSに送信するSOAPメッセージに署名するために使用されます(この証明書でkeystoreを作成する必要があります)。私はアプリケーションのビジネスレイヤーを作成しましたが、エンドユーザーのWeb機能を追加する必要があります。アップロードする場所とSpring WebアプリケーションでPKCS#12証明書を使用する方法

私の質問は以下のとおりです。

  • ファイルストレージ - どこアップロードされた証明書を配置するには? (Iは、JavaのWebアプリでアップロードされたファイルに実装したことがない正直に言うと - ??どこか別のデータベース、ディスクに共通に配置されたファイルであるか)
  • ストアは - それは良いアイデアが新しいkeystoreたびにユーザーを作成することです新しい証明書ファイルをアップロードするか、既存のキーストアを更新する必要がありますか? KeyStoreFactoryBeanのためにアクセスできるようにキーストアを配置する場所このシナリオのベストプラクティスは何ですか?

ありがとうございます。

答えて

0

PKCS#12があまりにもキーストアですが、私はあなたが場所を制御することができキーを抽出示唆し、代わりにメインキーストアで使用するファイルを直接

のアプリケーションキーストアにそれらを含め、アクセス制御SOAP署名コードの設定

保存pkcs12ファイルは欠点を持っているのに対し:

  • A PKCS#12ファイルには、それを復号化するためのパスワードを格納する必要があります。ディスク上のファイルを直接保存する

  • は、多くの場合、問題がある:アクセス許可、名前、アクセス制御など

  • は、SOAP署名の設定は、変数のファイル名を持つ複雑になります。たとえば、既知のフレームワークWSS4Jでは、設定は設定ファイルで行われます。実行時にキーストアパスを設定することはできません(これは変更されている可能性があります)

  • アップロードされたファイルはおそらくクラスパスには含まれません。リソースをロードするSpringの設定は、絶対ディレクトリパスではなくクラスパスを使用する方が簡単です

関連する問題