IISにおけるホットリンキング対策の仕組み
IIS のホットリンク防止機能は、サーバー側で設定することで、外部のWebサイトから自サイトのリソースに直接リンクされることを制限します。以下に詳しい仕組みを説明します。
- リンクの検証のために、サーバはHTTPリクエストのRefererフィールドを確認する。Refererフィールドが空、または本サイトのリンク先でない場合は、そのリクエストを不正リンクリクエストとみなす。
- リンク処理:サーバーがホットリンクのリクエストを検出した際にアクセスを拒否したり、他のページにリダイレクトしたり、代替コンテンツを表示したりするなど、さまざまな対処法があります。
- 盗用防止の設定:IIS管理者はサーバ設定ファイルまたはウェブサイト設定ファイルで参照元チェックのルールを設定することができ、チェックするRefererフィールドや許可するRefererの送信元などを指定することが可能です。設定ファイルを利用することでディレクトリまたはファイルごとに盗用防止の設定を分けることができます。
- 動的なリンク生成:盗用をさらに強化するため、Web ページで動的なリンク生成方法を使用できます。つまり、サーバ側のスクリプトを使用して、暗号化情報を含むリンクを動的に生成します。正しい暗号化情報を持つリンクだけが、対応するリソースにアクセスできます。
IIS のホットリンク対策機能はリファラーの情報を参照し、指定されたルールに基づいてリンク処理を行うことで、外部からの直リンクを制限する仕組みです。