6

Jettyのメインプロジェクトページには、JASPI(JASPIC / JSR 196)との互換性が記載されています。

ただし、Jetty 8のディストリビューションには、JASPIに関連するクラスが含まれていないようです。[jetty home] / libにjarがありjetty-security-8.1.8.v20121106.jarますが、これにはJASPIC/JASPIタイプは含まれていません。

JettywikiのJASPIC/JAVIPに関するドキュメントは単なるプレースホルダーであり、情報は含まれていません。

グーグルをした後、EclipseサイトでJavaDocsを見つけ、どこかにjetty-jaspi-8.1.8.v20121106.jar があるはずだと わかりました。これらのJavaDocもディストリビューションに含まれています。最後に、jetty-jaspiレポがGithubに表示されます。

明らかに、ある程度のサポートが利用可能ですが、なぜそれらのクラスがJettyディストリビューションに存在しないように見えるのでしょうか。また、これを構成する方法に関するドキュメントはどこにありますか?私は何が欠けていますか?

4

1 に答える 1

8

このプロジェクト(https://github.com/guofengzh/jaspi-on-jetty)は、認証のためにjetty-jaspiモジュールにコールバックするgeronimo-jaspiを使用するjettyのJASPIAPIの実用的な例です。この例では、Geronimoが構成メカニズムを提供し、認証モジュール自体をジェットしているようです。

フォーム、ダイジェスト、または基本認証方法を選択できるようです。フォームベースのログインの簡単なテストは、それが機能しているように見えることを示しました。

Jaspi認証ファクトリは次のようにjetty-web.xmlで設定されます。

<Set name="securityHandler">
  <New class="org.eclipse.jetty.security.ConstraintSecurityHandler">
    <Set name="loginService">
      <New class="org.eclipse.jetty.plus.jaas.JAASLoginService">
        <Set name="name">JAASRealm</Set>
        <Set name="loginModuleName">jaas</Set>
      </New>
    </Set>

    <Set name="authenticatorFactory">
      <New class="org.eclipse.jetty.security.jaspi.JaspiAuthenticatorFactory" />
    </Set>
  </New>
</Set>

また、jaspi構成ファイルは、pom.xmlファイルのシステムプロパティを介して参照されます。

<systemProperty>
  <name>org.apache.geronimo.jaspic.configurationFile</name>
  <value>./conf/jaspi/form-test-jaspi-2.xml</value>
</systemProperty>

さらに、あなたが言及したjaspiライブラリは、geronimo jaspi実装とともに、pomの依存関係として追加されます。

<dependency>
  <groupId>org.eclipse.jetty</groupId>
  <artifactId>jetty-jaspi</artifactId>
  <version>${jetty.version}</version>
</dependency>
<dependency>
  <groupId>org.apache.geronimo.components</groupId>
  <artifactId>geronimo-jaspi</artifactId>
  <version>2.0.0</version>
</dependency>

また、このトピックに関するドキュメントを見つけることができませんでした。jetty-jaspiモジュールは標準の開始オプションの1つではないようですが、$ {jetty.home / lib / ext}ディレクトリに追加できます(Jetty classloadingを参照)。

于 2013-01-11T10:03:19.967 に答える