阿里云OSS如何屏蔽Worker反代
需求情形:使用Cloudflare代理OSS,但想要避免被Worker反代。所以需要篩選Cloudflare的正常抓取請(qǐng)求與Worker請(qǐng)求。Cloudflare官方解決方法是Worker請(qǐng)求必定帶有請(qǐng)求頭CF-Worker,可惜阿里云不支持通過請(qǐng)求頭篩選。Cloudflare正常請(qǐng)求與Worker請(qǐng)求在IP段上沒有區(qū)別,所以也不能使用Bucket Policy的IP篩選。
解決方案:除了Bucket Policy的IP篩選,阿里云OSS還只剩下一個(gè)篩選器了,那就是防盜鏈(referer篩選)。于是我們可以在Cloudflare中設(shè)置Transform Rule,將請(qǐng)求頭中的referer強(qiáng)制設(shè)定為一個(gè)很長(zhǎng)的隨機(jī)字符串。然后在阿里云OSS中開啟防盜鏈,只允許該referer,且禁止空referer即可。
這個(gè)方案目前實(shí)踐沒有發(fā)現(xiàn)問題。如果有問題本專欄會(huì)更新。
標(biāo)簽: