我在一个行业中发生大量图像热链接。
为解决此问题,在生成图像URL时传递哈希值非常常见,这可以验证查询字符串参数的真实性,并允许存储位置执行IP限制或使用窗口之类的操作(在querystring参数中提供)
是否有可能在用于Firebase的安全规则中生成某种类型的哈希,该哈希可以与秘密一起使用,以确保所提供的参数是由受信任的源生成的?
答案 0 :(得分:1)
如果要存储哈希,则需要在客户端进行计算,但是使用“规则”验证哈希的正确性很容易!
rules_version="2"
service firebase.storage {
match path/{docId} {
// also available in md5, crc32 and crc32c flavors
allow read, write: if docId == hashing.sha256(/* stuff */).toBase64();
}
}
答案 1 :(得分:0)
Firebase的安全规则只能允许/禁止对存储的读取/写入。无法从规则中生成任何东西。
您要描述的内容要求您编写自己的API,以在执行要求的同时提供图像。