2012-07-30 11 views
7

web.xml(java-webcontainer)内でセットアップFORM認証が正常に完了しました。web.xml、フォームと基本認証を同時に使用

FORM認証を使用しているときにクライアントからrestful-uriのget-request内でユーザー名とパスワードを送信する方法が見つかりませんでした。ですから、私は安らかなuriのためだけにBASIC認証を使用しなければなりません。

だから私はこの質問を持っている:

私は両方のフォームベース認証と基本認証を設定するにはどうすればよいですか? 基本認証は、restful-uriに対してのみ有効にする必要があります。

+0

は、あなたはまだこの質問への答えに興味がありますか? – Olaf

+0

はい!私は休日にいた: – nimo23

答えて

6

しばらくの間、ここで応答がなかったので、私は自分自身をすばやくサーブレットのリフレッシャーを行いました。サーブレットの仕様では、Webアプリケーションごとに1つの<login-config>要素しか存在しないため、REST APIにはBASIC認証を使用し、UIにはFORMベース認証を使用するエントリポイントを持つ方法はありません。唯一のオプションは、それらを2つの独立して配置可能なアプリケーションとして構築することです。コードの重複を避けるため、サードパーティのクライアントが想定していたのと同じ方法で、UIアプリケーションにREST APIとの通信を許可することをお勧めします。

+0

私は、将来のサーブレットの仕様で可能になることを願っています。多分、私たちは機能要求をするべきですか? – nimo23

7

は私も同様の問題に直面していたし、私はあなたがWildflyを使用している場合は、その可能性のweb.xmlを使用して、複数のメカニズムを設定することを実現: -

<auth-method>BASIC?silent=true,FORM</auth-method> 

を最初に試行されるこのサイレント基本認証を使用して、 Authorizationヘッダーが存在する場合にのみ有効な基本認証です。そのようなヘッダーが存在しない場合は、代わりにフォーム認証が使用されます。

たぶん、その遅すぎる返信用が、私は念のために、誰かが、これは重宝し、これを更新:P

+1

ありがとうございました。これは多くの助けになります。多くの時間を節約する。 –