2

いくつかの管理モジュールも含むインターネット上で実行されているアプリケーションがあります。ユーザーにインターネット上の管理モジュールへのアクセスを許可したくありません。イントラネットからのリクエストが管理モジュールにアクセスできるようにしたい。管理コンポーネントを提供する新しいアプリケーションを開発せずにこれを制御する方法はありますか?

4

4 に答える 4

2

サーブレットを使用している場合は、フィルターを追加してクライアント IP アドレスを分析できます (この質問を参照してください)。
必ず正しいアドレスを特定できるという保証はないことに注意してください。
より良いアプローチは、このアプローチをある種の認証 (ユーザー/パスワード、クライアント証明書など) と組み合わせることです。

可能であれば、別のアプリケーションも良いでしょう。このようにして、展開プロセス (別のポートで実行されているアプリケーションなど) を簡素化し、スケーリングを容易にすることができます。これは、管理と通常のアプリケーションの負荷、セキュリティ、可用性などの要件が異なる可能性が非常に高いためです。

于 2012-07-04T12:08:03.500 に答える
0

移植可能な Java の観点からこれを実現する最も簡単な方法は、IP アドレスと要求された URL をチェックするフィルターを作成することです。URL が管理モジュールの一部であり、IP が内部の場合は、チェーンを続行します。それ以外の場合は、リダイレクトまたは中止します。

そうは言っても、Weblogic には、これを達成するための他の手法もあるかもしれません。ただし、これを Weblogic サーバーで実行していることを考えると、これはエンタープライズ クラスのアプリケーションであると思います。その場合、セキュリティ目的と負荷分散のために別のモジュールとして構築することを検討することをお勧めします。アプリケーションにアクセスするユーザーが増えるにつれて、負荷を処理するためにより多くのサーバーが必要になります。ただし、管理モジュールに同じ容量が必要になることはほとんどありません。したがって、管理モジュールを独自のアプリとしてホストすることで、アプリケーション自体をより大きなファーム全体に分散させながら、1 つの内部アプリ サーバーで管理モジュールをホストすることができます。

最後に、IP アドレスのなりすましは非常に簡単であることを覚えておいてください。そのため、他の形式の認証 (例: ユーザー名/パスワード、SSL 証明書交換など) を使用しない限り、アプリケーションを重大なセキュリティ ホールにさらすことになります。

アーキテクチャを決定する際に考慮すべきことです。

于 2012-07-04T15:45:13.643 に答える
0

基盤となる Web サーバーは何ですか? apache の場合は、.htaccess ルールを使用します。

http://www.javascriptkit.com/howto/htaccess5.shtml

于 2014-04-15T21:23:48.443 に答える
0

これがあなたの状況で機能するかどうかはわかりませんが、管理モジュールが特定のポートで接続を受け入れる場合は、ルーター/ゲートウェイ (またはイントラネットをインターネットに接続するために使用するもの) でこのポートをシャットダウンしてみてください。したがって、外部からの誰もモジュールにアクセスできません。

于 2012-07-04T12:03:28.543 に答える