2

Jersey0ベースのサーバー/クライアントRESTに認証を実装したいのですが、コードを正確にレイアウトする方法がわかりません。

基本的に、すべての操作に対して、2つの方法があります。1つはサーバー側から、もう1つはクライアント側からです。

アルゴリズムを絞り込みました。HMACでamazon戦略を使用します。

問題は、これをコードにどのように配置するかです-認証(暗号化/復号化コード)をすべてのメソッドに追加する必要があります-サーバー/クライアント側の両方、または暗号化を実行する「ディスパッチ」メソッドを両側に1つ持つ必要があります/復号化してから、実行制御をより特殊なバージョンに移します。そうすれば、クライアントまたはサーバーの両方で認証が行われる1つの中心的な場所ができますか?

それについてのあなたのコメントを喜んで聞きますか?

4

1 に答える 1

4

クライアント側:

ClientFilterを作成し、それをフィルターチェーンに追加するだけです。たとえば、認証されたリクエスト用と他のリクエスト用の2つのクライアント(またはそれ以上)を使用できるため、リソースを無駄にしないでください。

http://jersey.java.net/nonav/apidocs/1.12/jersey/com/sun/jersey/api/client/filter/ClientFilter.htmlを参照してください

サーバ側:

サーバー側と同様に、認証を処理するRequest / ResponseContainerFilter(s)を実装できます。これらのフィルターはデフォルトでグローバルですが、ResourceFilterFactoryを実装してスコープを絞り込み、適切なリソース(エンドポイント)にのみアタッチすることができます。

または、2つの戦争を行うことができます。1つは「安全な」リソース用で、もう1つは他の戦争用です。


http://jersey.java.net/nonav/apidocs/1.12/jersey/com/sun/jersey/spi/container/ResourceFilterFactory.htmlhttp://jersey.java.net/nonav/apidocs/1.12/jersey/を参照して
くださいcom / sun / jersey / spi / container / ContainerRequestFilter.html
http://jersey.java.net/nonav/apidocs/1.12/jersey/com/sun/jersey/spi/container/ContainerResponseFilter.html

于 2012-02-28T08:29:11.773 に答える