2009-07-02 22 views
5

.asmx Webサービスの特定のIPアドレスへのアクセスを制限する必要があります。私はハードコードされたチェックを各メソッドに追加することができると思っていますが、それはコード管理の悪夢のようです。 .asmxファイルに適用できるIIS 6の設定がありますか?asmx Webサービスの特定のIPアドレスへのアクセス制限

+0

あなたはサーバーにアクセスできますか? –

+0

必ず行います。 IIS 6を実行しています。 – DMCS

+0

IISは、IPアドレスなどのアクセス制限をサポートしています。 –

答えて

9

IIS 6.0マネージャで、.asmxファイルを右クリックします。

[ファイルセキュリティ]タブに移動し、[IPアドレスとドメイン名の制限]の[編集]ボタンをクリックします。

[拒否アクセス]ラジオボタンをクリックし、ホワイトリストに登録されたIPアドレスをリストに追加します。

IIS 7.5の場合、ファイルがナビゲーションパネルに表示されないため、少し厄介です。コンテンツビュータブ(ウィンドウの下部)に移動して、ファイルを右クリックし、[機能ビューに切り替え]を選択する必要があります。 [IPアドレスとドメインの制限を開く]をクリックして、[機能設定の編集]をクリックし、不特定のホストを拒否することを選択します。これで、[許可を追加]をクリックして権限を追加できます。

+2

IPセキュリティは、Windows 7/IIS 7.5にプリインストールされていない機能です。あなたはそれを追加する必要があります:http://www.iis.net/configreference/system.webserver/security/ipsecurity/add – HarryTuttle

+0

良いキャッチ..私はあなたがそれを別に追加しなければならないことを認識しませんでした。 – Moose

-1

web.configにカスタムセクションを追加し、そのセクションにIPアドレスのホワイトリストを問い合わせます。

+0

私は構成ストレージセクションを持っていますが、再度、各メソッドにIPチェックロジックを記述する必要はありません。私はもっ​​とエレガントなものを探しています。 IISの設定、またはFormsAuthenticationのようなものですが、この1つのファイルを必要なIPに限定するだけです。 – DMCS

+0

私は別の答えでIISの方法を追加しましたが、私はこの1つに固執します。あなたのホワイトリストをWeb.configに保存し、サイトの設定がより多くのものを許可し、ホワイトリストよりも好きなものをもっと柔軟にしたい場合ブラックリスト。私はこれがよりエレガントな解決策になると思います。また、誰かが何かをツリーの下で変更して上書きすると、IISメタデータのルートが失われる可能性があります。 – Moose

+0

問題は、各Webサービスコールのコードで、他の開発者(今後間違いなく忘れてしまいます)によって.asmxファイルに追加および保守が悪くなってしまいます。 IISのホワイトリストは、シンプルに保つための最良の方法です。変更が行われた場合、新しいコードセット全体をQA(時間とリソースの面で高価なプロセス)で送信する必要はなく、再配備する必要がありますQAとして、しかし人々の時間を無駄にする)。したがって、すばやく行うべきことは、それらをIIS 6ホワイトリストに保持することです。 :) – DMCS

関連する問題