1

JBoss 7 アプリケーションから E メールを送信したいと考えています。SMTP サーバーには、自己署名証明書による TLS 接続が必要です。メールを送信しようとすると、サーバー証明書を確認できないため、SSLHandshakeException が発生します。これを修正するために、これを追加しました: http://springinpractice.com/2012/04/29/fixing-pkix-path-building-issues-when-using-javamail-and-smtp/ (SMTP サーバー証明書をJava トラストストア ファイル)

私の問題は、トラストストアファイルをJBoss 7に設定する方法ですか?

私はstackoverflowで知っており、他のフォーラムにはその問題に対するいくつかの答えがあります。しかし、私は右を見つけられませんでした。

私はすでに以下を試しました:

  • 追加JAVA_OPTS="$JAVA_OPTS -Djavax.net.ssl.trustStore=/home/stewert.c-on/data/projects/keystore/devel.truststore -Djavax.net.ssl.trustStorePassword=123456":
    • jboss-as-7.1.1.Final/bin/standalone.conf
    • jboss-as-7.1.1.Final/bin/domain.conf
    • jboss-as-7.1.1.Final/bin/appclient.conf
  • jboss-as-7.1.1.Final/standalone/configuration/standalone.xml<jsse keystore-password="123456" keystore-url="/home/stewert.c-on/data/projects/keystore/devel.keystore" truststore-password="123456" truststore-url="/home/stewert.c-on/data/projects/keystore/devel.truststore"/>への追加

しかし、実行時にシステム環境変数を 'System.getProperty("javax.net.ssl.trustStore")' でチェックすると、どの場合でも null になります!

私の環境:

  • Linux
  • JBoss 7.1
  • JDK7
  • 私はEclipse Junoの中でJBossを始めています

誰が何が問題なのか知っていますか?トラストストアはどこに設定する必要がありますか?

ありがとう、ステフェン

4

1 に答える 1

5

JBoss フォーラムで「javax.net.ssl.trustStore - クライアントの信頼を指定する唯一の方法は?」という質問がありましたが、答えは基本的に「はい」です。

彼らのアプローチはsystem-properties、サーバー構成 XML の要素にそれを設定することでした。これは、私にとっても最良の方法のように思えます。実行構成ファイルをいじるよりはましです!

于 2013-02-06T14:14:59.163 に答える