リファラーが下にリストされていない場合にリクエストを拒否する、このようなs3バケットポリシーがあります
{
"Sid": "6",
"Effect": "Deny",
"Principal": "*",
"Action": "s3:GetObject",
"Resource": "arn:aws:s3:::my_bucket_name/*",
"Condition": {
"StringNotLike": {
"aws:Referer": [
"http://example1.com/*",
"http://example2.com/*",
"https://*amazon.com*/*"
]
}
}
}
私が試しhttps://*amazon.com*/*, https://*aws.amazon.com* ,https://*amazon.com*,http://*amazon.com*
た問題は、オブジェクトを取得しようとしたときにエラスティック トランスコーダー (aws サービスの 1 つ) リファラーを取得できないため、ジョブで次のようなエラーが発生することです。" You do not have the permissions required to read the指定されたバケットの指定されたオブジェクト". ポリシーを削除すると、すべてが正常に機能することに注意してください。だから私の質問は、弾性トランスコーダーのリファラーを何にすべきかということです. いくつかの組み合わせを試し、あちこち検索しましたが、すべて無駄でした.これにより良い方法があると思われる場合はお知らせください.
- アップデート:
また、バケットポリシーによって拒否されたリクエストをフィルタリングする方法もあります。たとえば、上記の場合、上記のドメインからではなく、特定の IP アドレスを持つリクエストを許可できます。ここのAmazonドキュメントから、最初に明示的な拒否をチェックし、次にそれらの拒否リクエストがチェックされないことがわかりました。これを回避する方法はありますか?. どんな種類の助けも高く評価されます。御時間ありがとうございます