私はいくつかのドメインで使用したいWebサービスの魔法使いを持っています。しかし、私は自分のWebサービスにアクセスできるサイト(ドメイン)を制限したい。私のページ/ Webサービスを呼び出すことができるドメインを制限する方法
たとえば、サイトwww.Site-A.comのページでリクエストが実行され、www.Site-B.comからのリクエストが拒否されるようにしたいとします。
ASP.NET/IISで行う方法はありますか?
私はいくつかのドメインで使用したいWebサービスの魔法使いを持っています。しかし、私は自分のWebサービスにアクセスできるサイト(ドメイン)を制限したい。私のページ/ Webサービスを呼び出すことができるドメインを制限する方法
たとえば、サイトwww.Site-A.comのページでリクエストが実行され、www.Site-B.comからのリクエストが拒否されるようにしたいとします。
ASP.NET/IISで行う方法はありますか?
あなたの質問が正しく理解されている場合は、ドメイン外の他のページから参照される可能性のあるウェブコンテンツがあります。それらのページはブラウザに読み込まれ、それらのページの参照からのリクエストはあなたのサイトからコンテンツを取得しようとします。それはあなたのシナリオを記述していますか?
これを達成する唯一の機会は、referer
ヘッダー(これは正常ですが、一部のブラウザーではユーザーがそれを抑制できるようにする)を使用して要求を配信することです。その後、コード内のreferer
ヘッダーの内容を調べて、要求を続行するかどうかをテストできます。
あなたはこのコードでreferer
を調べることができます -
var referer = new Uri(Request.ServerVariables("HTTP_REFERER"));
if (referer.Host.ToLower() == "www.site-a.com")
//Allow access
警告
この手法のみ非公式に使用することができ、誰もがそれを偽装することができますので、referer
ヘッダを認証する方法はありませんかなりシンプルなツールを使用しています。
ありがとうアンソニー。私の必要性のために、これは助けになるでしょう。これは私があなたの答えをいくつかの問題で見て楽しんだことを伝える場所です! –
リモートユーザのIPアドレスを確認し、それに応じて動作することができます。リクエストのReferer
ヘッダーも使用できますが、これはなりすましを行うことができます。
私はIPアドレスを持つことができます - しかし、問題は彼が使用しているサイトであり、ユーザIPではありません。私はそれを説明するために私の質問を編集しました。ありがとうございました! –
これが当てはまる場合は、whoisプロバイダからドメインを見ることはできませんか? :) – cwap
あなたは、より広いDNSドメインまたはWindowsセキュリティドメインについて話していますか? – AnthonyWJones
より広いDNS、 –