0

私の Web アプリケーションは共有サーバー (Websphere) で実行されます。現在、私のアプリケーションは HTTP と HTTPS の両方の要求に対して実行されます。通常、アプリケーションを実行すると、 https://localhost:9443/index.jspのように表示されます。ユーザーが https を http に変更してリクエストを送信しようとすると、サーバーはリクエストを受け入れます。このシナリオを回避し、アプリケーション レベルで https 要求のみをサポートするようにアプリケーションを作成する必要があります。親切に誰か助けてください。

4

3 に答える 3

1
<security-constraint>
<web-resource-collection>
    <web-resource-name>https</web-resource-name>
    <description>No Description</description>
    <url-pattern>/*</url-pattern>
</web-resource-collection>
<user-data-constraint>
    <description>No Description</description>
    <transport-guarantee>CONFIDENTIAL</transport-guarantee>
</user-data-constraint>

user-data-constraint上記を web.xml に追加します。httpすべてのリクエストをにリダイレクトしhttpsます。

于 2012-05-09T07:17:40.313 に答える
0

WebSphere管理コンソールでグローバル・セキュリティーとアプリケーション・セキュリティーの両方が使用可能になっていることを確認してください。

于 2012-05-24T14:24:47.150 に答える
0

ユーザーの非 https 接続を拒否する別の方法は、単純に http トランスポート チェーンを削除することです。[アプリケーション サーバー] > [サーバー] > [Web コンテナー トランスポート チェーン] に移動し、[WCInboundDefault] を選択して [削除] をクリックします。これで、SSL ポートでリッスンする WCInboundDefaultSecure トランスポート チェーンだけが残ります。

同様に効果的な別の代替手段は、Virtual Hosts > default_host > Host Aliases で非 https ポートのホスト エイリアスを削除することです。

制限よりもリダイレクトを好む場合は、Web サーバーやロード バランサーなどのアプリケーション サーバーにアクセスする前にリダイレクトすることをお勧めします。WAS の前に Apache HTTP サーバーまたは IBM HTTP サーバーを使用している場合は、mod_rewrite でリダイレクトを管理できます。

于 2012-05-09T18:35:23.767 に答える