我想创建一个静态AWS S3托管网页...该页面将包含一个简单的HTML5文本框,用于生成用户生成的评论。然后,用户可以通过此输入输入注释,按下提交按钮,这将使用异步将数据推送到AWS服务器。 Javascript回调。
AWS服务器将接受输入,并且每15分钟更新一个S3存储桶中的静态文件(新注释)。
我这样做是因为当我可以使用如上所述的延迟过程时,我不想产生数据库成本来检索消息。
然而,我担心的是安全性。是否有任何创造性的方法来限制用户发布一百万条评论,因为我不需要登录。我以为我会通过IP地址限制评论,这样如果在任何60分钟的窗口中发布了超过10条评论,服务器就会丢弃它们,但这对于大型代理不起作用。根据以上配置,我有哪些选择?我真的很茫然,因为您可以过滤的所有数据(cookie,用户代理字符串等)都可能被欺骗。我错过了一些值得注意的东西吗?
答案 0 :(得分:0)
您正在努力解决两个主要问题...... 暴力 和 拒绝服务 。正如您所说,可以保存用户浏览器上可以保存以供识别的所有数据。即使像CSRF Tokens这样复杂的事情也无济于事。此外,IP地址识别的想法非常激烈。 如果我欺骗我的IP地址并开始发送数据包而不关心他们的返回会发生什么?这样我可以阻止很多其他IP地址,你将拒绝访问需要它的人。这不是一个解决方案。
回到问题, 否 ,没有任何身份验证就无法为自己辩护。你要么拒绝为人民服务,因为你限制了请求的数量,要么他们会淹没你,你将再次拒绝服务。
祝你好运。