0

私たちは、webtech に基づいてモバイル アプリを構築しています。エンドポイント (weblogic 11g) は jessionid cookie と _wl_authcookie_jessionid_ cookie を送信します。この cookie は後で認証のためにサーバーに自動的に再送信されます。しかし、これが発生するのは望ましくありません。むしろ、アプリの開始時に資格情報を入力するようにユーザーに要求し、これらの資格情報を JavaScript ランタイム変数内に保存し、ユーザーがログアウトをクリックした場合は、それらの変数を破棄します。しかし、任意のログイン認証情報を入力すると、ajax リクエストはリクエストに Cookie を添付し、サーバーは BASIC ヘッダーを無視し、代わりに以前の Cookie を使用してユーザーを承認します。

では、Cookie を削除するか、そもそも配置されないようにブロックするにはどうすればよいでしょうか。

4

1 に答える 1

0

私が考えることができる可能性のある解決策には、次のものが含まれます。

1) WLS がアプリケーション (モバイル アプリがアクセスするエンドポイントを持つ) に対して自動的に設定するセッション Cookie を無効にします。これは、weblogic.xml で次のように設定することで実行できます。

...
<session-descriptor>
    <cookies-enabled>false</cookies-enabled>
</session-descriptor>
...

2) 「enforce-valid-basic-auth-credentials」を false に設定します (ドメイン全体に影響することに注意してください)。

How: http://docs.oracle.com/cd/E28280_01/web.1111/e13711/thin_client.htm#autoId8

3) サーバー側アプリケーションで、着信要求のオーセンティケーター/オーソライザーとして機能するサーブレット フィルターを作成します。

于 2013-05-07T14:19:40.030 に答える