動的ダウンロードのホワイトリスト

動的ダウンロードにより、関連句を使用して URL を指定する機能が追加され、アクション・スクリプトの柔軟性が高まります。

静的ダウンロードの場合と同様に、動的ダウンロードでも、サイズまたは sha1 の確認を含むファイルを指定する必要があります。ただし、URL、サイズ、および sha1 は、アクション・スクリプトの外部にあるソースから取得されたものであってもかまいません。この外部ソースは、変動する新規ダウンロードのリストを含むマニフェストである場合があります。この手法により、アンチウィルスまたはセキュリティー・モニターなどの、短時間で変更されるファイルや、スケジュールに従って変更されるファイルにアクセスしやすくなります。

このような柔軟性があるため、十分な注意が必要になります。どのクライアントでも動的ダウンロードを使用してファイルを要求することができるため、無差別にファイルをホストするために自分のサーバーを他の人が使用する機会を与えることになります。これを回避するために、動的ダウンロードではホワイトリストを使用します。URL (アクション・スクリプト内のリテラル URL を使用して明示的に認可されたものではない) からのダウンロード要求はすべて、以下のファイルに含まれている URL のホワイトリストで指定された基準のいずれかを満たす必要があります。
Windows システムの場合:
<Server Install Path>\Mirror Server\Config\DownloadWhitelist.txt
Linux システムの場合:
<Server Install Path>/Mirror Server/config/DownloadWhitelist.txt
このファイルには、Perl regex 形式を使用した正規表現のリストが改行で区切られて記述されています。例えば次のようになります。
http://.*\.site-a\.com/.*
http://software\.site-b\.com/.*
http://download\.site-c\.com/patches/JustThisOneFile\.qfx

最初の行は最も制限が緩く、site-a ドメイン全体のすべてのファイルのダウンロードを許可します。2 行目では、特定のドメイン・ホストを要求しており、3 行目では最も制限が厳しく、URL を「JustThisOneFile.qfx」という名前の 1 つのファイルに制限しています。要求された URL がホワイトリスト内の項目に一致しなかった場合、ダウンロードは直ちに失敗となります。失敗のステータスは NotAvailable です。合格しなかった URL を含む注記が、リレー・ログに書き込まれます。ホワイトリストが空であるか、存在しない場合、すべての動的ダウンロードは失敗します。「.*」(ドットとアスタリスク) というホワイトリスト項目があると、どの URL でもダウンロードできます。