按照七牛文档建议,uptoken从业务服务器的uptoken_url获取,这样虽然保护了secret key,但是如果恶意用户从uptoken_url里拿到uptoken,然后构造大量图片上传怎么办?
我的使用场景时官方下面这个没有回调的情形:
补充:刚看到了个类似的提问,提供的解决方案,一个是修改短一些的deadline,这个不是办法,另一个是scope中添加key,然后insertOnly设置为1,这个我有个疑问:
用户上传得文件肯定不一样的,也就是key都不一样的,难道要在每次上传图片时,把key当作uptoken_url的参数提交,然后生成动态的uptoken吗?这样的话问题其实不还存在,用户可以拿自己随即的key提交给我的uptoken_url去生成自己的uptoken。
不知道对key的理解有问题没,望解惑,谢谢。
你的理解还是比较全面的,如果拿到有效期内的token、同时业务中要求scope中也没有key的配置,那么用户将资源恶意大量上传确实不是很好保护;另一个方法是在客户端带上一些业务上需要鉴权的自定义变量,通过callbackBody来post到业务服务器,让业务服务器来判断上传请求是否合法。