Object Storage Service (OSS) でバケットのリファラーホワイトリストを設定して、特定のURLがバケット内のリソースにアクセスできるようにした後、curl
コマンドを実行して、ホットリンク保護設定が有効かどうかを確認できます。
前提条件
リファラーホワイトリストは、他のURLから送信されたリクエストがオブジェクトにアクセスしないようにバケットに設定されています。 詳細については、「リファラーホワイトリストの設定によるホットリンクの防止」をご参照ください。
シナリオ
curl
コマンドを実行して、次のシナリオでホットリンク保護設定が有効かどうかを確認できます。
curlコマンドを実行して、public-readオブジェクトまたはpublic-read-writeオブジェクトにアクセスできます。 プライベートオブジェクトにアクセスするには、curlコマンドに署名情報を追加します。
リファラーホワイトリストのURL
curl
コマンドで -e
パラメーターをhttp://www.aliyun.com
に設定します。
curl -e http://www.aliyun.com http:// example **** .oss-cn-hangzhou.aliyuncs.com/demo.txt
http://www.aliyun.com
がリファラーホワイトリストに追加されます。 したがって、エラーは報告されず、システムはdemo.txtオブジェクトのコンテンツを直接印刷します。 これは、Refererホワイトリストが有効になることを示します。
デモ
リファラーホワイトリストにないURL
curl
コマンドで -e
パラメーターをhttp://www.example.eduに設定します。
curl -e http://www.example.edu http:// example **** .oss-cn-hangzhou.aliyuncs.com/demo.txt
http://www.example.edu
はリファラーホワイトリストに追加されません。 したがって、Refererホワイトリストが有効になることを示すエラーが報告されます。
<?xml version="1.0" encoding="UTF-8"?>
<エラー>
<Code>AccessDenied</Code>
<メッセージ> バケットリファラーポリシーによって拒否されます。</Message>
<RequestId>6566AC76E41FB93030CE ****</RequestId>
<HostId> 例 **** .oss-cn-hangzhou.aliyuncs.com</HostId>
<BucketName> 例 ****</BucketName>
<EC>0003-00000503</EC>
<RecommendDoc>https://api.aliyun.com/troubleshoot?q=0003-00000503</RecommendDoc>
</エラー>
空のリファラー
-eパラメーターを指定せずに、http:// example **** .oss-cn-hangzhou.aliyuncs.com/demo.txtをcurl
コマンドに追加します。 これは、demo.txtオブジェクトのURLがブラウザで直接開かれていることを示します。
curl http:// 例 **** .oss-cn-hangzhou.aliyuncs.com/demo.txt
空のリファラーを持つリクエストは許可されます。 したがって、エラーは報告されず、システムはdemo.txtオブジェクトのコンテンツを直接印刷します。
デモ
参考資料
OSSログのアクセスレコードを表示して、ホットリンク保護設定が有効かどうかを確認することもできます。 詳細については、「オブジェクトのアクセスレコードと操作レコードを照会する方法」をご参照ください。