- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我正在编写一个小型 Web 应用程序,因为我正在学习使用 Parse.com 的功能。
自 application_id 和 javascript_key 都是公开的(如文档中所述),这意味着任何人都可以自由运行如下代码段所示的代码:
function sendRequest(){
var query = new Parse.Query(Parse.User);
query.find({
success: function(results) {
console.log("Request sucessful");
},
error: function(error) {
console.log("Request error: " + error.code + " " + error.message);
}
});
}
setInterval(sendRequest, (1000 / hitsPerSecond));
最佳答案
是的,您的 Parse JavaScript 键是 公众号
它们必须在可以公开访问的 JavaScript 文件中定义。
不是说不能尝试隐藏 你的 key 通过应用原则
默默无闻的安全性;-)
您可以加密您的 key 并将解密功能放在您的 JavaScript 中。您可以通过将该函数隐藏在一个没人喜欢的大而讨厌的脚本中间,然后 来进一步增加查找难度。缩小你的 JavaScript (无论如何你应该这样做)。
我相信有可能变得“更有创意”并达到一些合理的完美:-)
然而,原则上,一个有足够动机的黑客仍有可能逆向工程师您的程序并获取 key 。你仍然可以让它变得足够难,所以黑客可能会寻找更容易的目标,据我们所知,其中有很多;-)
通过设置正确的权限减少潜在危害
不管你是否应用了之前的原则,你的黄金法则应该是尽可能地收紧你的解析(或任何其他服务器)权限。
这将防止诸如数据被破坏之类的坏事,这比 DoS 攻击更糟糕。
这仍然会允许任何知道你的 key 的人滥用它们——不仅是通过 DoS——而且还有更令人不快的事情,比如将其他人的签名作为用户并向毫无戒心的受害者发送确认电子邮件流。并且由于您可能希望允许新用户签名,因此您无法真正保护自己免受这种滥用(除了上一段的“方法”)。
解析自己的声明
几年前,我实际上在 Parse 论坛上问过这个问题,他们的回答是,如果发生这种情况,他们会调查。
最后的想法
最后,假设您的站点业务很关键,并且您不能在 Parse 等待实际发生的情况(这并不是说它们会很慢 - 我真的没有这种情况的经验)。
然后您可以做的是注册其他几个应用程序 key 以备后备并保留您网站的副本,以便您可以快速将用户转移到那里。或者只转移其中的一些。
关于parse-platform - Parse.com 应用程序上的拒绝服务攻击,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28989601/
关闭。此题需要details or clarity 。目前不接受答案。 想要改进这个问题吗?通过 editing this post 添加详细信息并澄清问题. 已关闭 7 年前。 Improve th
所以我正在开发一个黑 jack 程序,但我有点卡住了。我会警告大家,我对编程真的很陌生,而且,我正在项目中期......所以有一些松散的结局和未使用的变量,以及一些不必要的逻辑(用于测试),但这就是我
我正在尝试创建一个可用作 OpenGL 测试工具的示例程序。到目前为止,我的那个似乎可以工作,但似乎忽略了通过统一变量 MVPMatrix 传递的 MVP 矩阵。当我添加代码以读回制服并检查它是否确实
感谢您帮助我,这是有关我的代码的部分。 printf("Thank you, now please enter the logic gate"); scanf("%s", &C); if (C ==
public static void ejemplosString(String palabra){ char[] letras = palabra.toCharArray();
所以,我有一个 php 应用程序,通过 cgi 和 nginx 运行。我有一个 .jar 程序,用于在条形码打印机(Zebra)上打印条形码,猜猜看是什么!。 我的 php 应用程序使用 exec()
我遇到的唯一问题是 getAll() 方法,它似乎在 PersonnelController 类中的位置立即运行。我也曾在其他很多地方尝试过,但都没有成功。 setAll() 方法看起来不错,我已经测
我是一名优秀的程序员,十分优秀!