3

私はSpring Bootのセットアップに従っており、TomcatをSSLで簡単に実行できますが、Jettyを使用したいのですが、これに関するドキュメントはほとんどありません。にアクセスできJettyEmbeddedServletContainerFactoryますが、構成にアクセスするために同じインターフェイス メソッドを使用しません。

SSLを使用するためにスプリングブート内でjetty 9を構成した人はいますか? ここで同様の質問を見つけて、これを解決した人がいるかどうか疑問に思いました。

どんな助けでも素晴らしいでしょう。

4

2 に答える 2

4

そのため、GitHub を介して Spring Boot に投稿された最近の質問 (私がここで質問した日またはその前、良いタイミング) があり、同じことのサポートを求めました。彼らは、この作業の例と、彼らが作成する/行った新しいコミットの後にこれがどのように機能するかの例を持っています. 私は前者を使用していますが、問題なく動作しています。最新のソースを入手するか、別のリリース/マイルストーンを待つことができるようです。

ここに議論へのリンクがあります。

これが私の解決策ですが、彼らの答えで言うように機能します。私は彼らのコミットをプルしていないので、ベースの Jetty API で最初のソリューションを使用しています。このサンプルでは Spring Boot で Jetty 8 を使用しましたが、Jetty 9 でも動作しました。

@Bean
public EmbeddedServletContainerFactory embeddedServletContainerFactory() throws Exception {
    return new JettyEmbeddedServletContainerFactory() {
        @Override
        protected JettyEmbeddedServletContainer getJettyEmbeddedServletContainer(
                Server server) {

            SslContextFactory sslContextFactory = new SslContextFactory();
            sslContextFactory.setKeyStorePath("/usr/local/keystore");
            sslContextFactory.setKeyStorePassword("password");
            sslContextFactory.setCertAlias("alias");

            SslSocketConnector sslConnector = new SslSocketConnector(sslContextFactory);
            sslConnector.setPort(8443);
            server.setConnectors(new Connector[] { sslConnector });
            return super.getJettyEmbeddedServletContainer(server);
        }
    };
}
于 2014-02-20T15:07:23.767 に答える
0

ビルドシステムとしてMavenを使用していますか? もしそうなら、この pom.xml アーティファクトを確認できます - http://bghints.blogspot.com/2012/03/client-authentication-with-ssl_28.html

ブログの投稿はジェティ 6 用です。ジェティ 9 の場合、違いがあります。グループ ID は次から変更する必要があります:

org.mortbay.jetty

org.eclipse.jetty

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

于 2014-02-11T17:15:44.743 に答える