ApsaraVideo VOD では、Referer ブラックリスト/ホワイトリスト、User-Agent ブラックリスト/ホワイトリスト、および IP ブラックリスト/ホワイトリストを使用して、ビデオ リソースへのアクセス ポリシーを設定できます。この機能は基本的な保護を提供し、クラウド側での設定のみで簡単に使用でき、迅速に有効になります。
Referer ブラックリスト/ホワイトリスト
概要
-
この機能は、HTTP Referer ヘッダーを使用してリクエストのソースを識別します。Referer ブラックリストまたはホワイトリストを設定して、ビデオ リソースへのアクセスを制限できます。これらは相互排他的です。
-
ブラックリストモードとホワイトリストモードの両方がサポートされています。ビジターがリソースをリクエストすると、リクエストはエッジノード (POP) に到達します。その後、POP は設定されたホットリンク保護のブラックリスト/ホワイトリストに基づいてリクエストをフィルター処理します。リクエストがルールを満たす場合、ビデオデータが提供されます。それ以外の場合、リクエストは 403 HTTP ステータスコードで拒否されます。
-
ワイルドカードドメインのサポートは自動的に有効になります。例えば、リストに example.com を追加すると、*.example.com という有効なルールが作成され、そのすべてのサブドメインに適用されます。
-
モバイルクライアントはしばしばこのヘッダーを省略するため、デフォルトでは空の Referer ヘッダーを持つリクエストは許可されます。このオプションは無効にすることもできます。
-
Referer は HTTP ヘッダーであるため、簡単になりすましが可能であり、セキュリティレベルは低いです。
詳細な手順については、「ホットリンク保護の設定」をご参照ください。
例
VOD ドメイン `example.cn-shanghai.aliyuncs.com` に `aliyundoc.com` を含む Referer ホワイトリストを設定し、空の Referer ヘッダーを持つリクエストを不許可にします。リクエストは次のように送信されます:
curl -i 'http://example.cn-shanghai.aliyuncs.com/sv/5101d1f8-1643f9a****/5101d1f8-1643f9a****.mp4'
-
応答
ali-186590dxxx:~ xxxan$ curl -i 'http://xxx.cn-shanghai.aliyuncs.com/sv/5101d1f8-1643f9axxx/5101d1f8-1643f9axxx.mp4' HTTP/1.1 403 Forbidden Server: Tengine Date: Wed, 27 Jun 2018 04:58:15 GMT Content-Type: text/html Content-Length: 254 Connection: keep-alive X-Tengine-Error: denied by Referer ACL Access-Control-Allow-Origin: * Via: cache2.cn491[,403003] Timing-Allow-Origin: * EagleId: 7b7d12ca153007549506xxxリクエストに許可された Referer が含まれている場合、通常の応答が返されます:
curl -i 'http://example.cn-shanghai.aliyuncs.com/sv/5101d1f8-1643f9a****/5101d1f8-1643f9a****.mp4' \ -H 'Referer: http://www.aliyundoc.com'
User-Agent ブラックリスト/ホワイトリスト
はじめに
-
User-Agent は、サーバーがクライアントのオペレーティングシステム、ブラウザ、バージョン、インストールされているプラグインなどの属性を識別するのに役立つ文字列ヘッダーです。User-Agent ブラックリスト/ホワイトリストを使用して、特定のブラウザやデバイスからのアクセスを制限できます。
-
User-Agent は HTTP ヘッダーであるため、簡単になりすましが可能であり、セキュリティレベルは低いです。
詳細については、「User-Agent のブラックリスト/ホワイトリストを設定する」をご参照ください。
例
-
例えば、PC 上の Internet Explorer 9 の User-Agent は次のようになります:
User-Agent:Mozilla/5.0(compatible;MSIE9.0;WindowsNT6.1;Trident/5.0; -
HTTP リクエストをシミュレートして検証できます:
curl -i 'http://example.cn-shanghai.aliyuncs.com/sv/5101d1f8-1643f9a****.mp4' \ -H 'User-Agent: iPhone OS;MI 5'
IP ブラックリスト/ホワイトリスト
はじめに
-
個別の IP アドレスと CIDR ブロックを追加できます。
例えば、CIDR ブロック
172.16.0.0/24の `/24` は 24 ビットのネットワークプレフィックスを示します。これにより、ホストアドレス用に 32-24=8 ビットが残り、28=256 個のアドレスが可能になります。したがって、この CIDR ブロックは 172.16.0.0 から 172.16.0.255 までの IP 範囲を表します。 -
リクエストの送信元 IP アドレスとして remote_addr または X-Forwarded-For (XFF) を使用するか、両方に一致させるかを選択できます。
-
IP ブラックリスト/ホワイトリストのメカニズムは、広範囲のコンテンツ配信には適していません。さらに、攻撃者が許可された範囲の IP アドレスを使用した場合、ホワイトリストはバイパスされる可能性があります。
詳細な手順については、「IP ブラックリスト/ホワイトリストの設定」をご参照ください。