【问题标题】:How to prevent here.com api id hijacking?如何防止 here.com api id 劫持?
【发布时间】:2015-04-28 12:10:27
【问题描述】:

我即将使用 here.com API。我为一个新应用生成了一个 api_id/api_code。这两个值必须附加到对 API 的每个请求中,并且如果在 Web 应用程序中使用,每个人都可以看到。

id+code 没有绑定到像 Google API 密钥这样的 URL,所以我没有看到任何方法可以阻止任何人获取我的 id+code 并将其用于,比如说,刮瓷砖。由于 API 需要花钱,我想知道如何防止这种情况发生?

http://developer.here.com/faqs 没有提及密钥保护,而且 here.com 似乎并不想与开发人员交谈,所以我希望这个 metaish 问题不会被否决...

【问题讨论】:

  • 不能随时停用 app_id 吗?因此,如果它被恶意访问以停止请求,您可以这样做。如果您通过 https 提出请求,这也会使其更加安全。
  • 当然可以,但是我来得太晚了。 https 没有帮助,app_id+app_code 本来就在源代码中。
  • 如果您的代码是服务器上的 Web 应用程序,用户将如何看到您的令牌?你的源代码是公开的还是什么?
  • 不是服务器端,是客户端代码,从瓦片服务器获取瓦片。
  • 如果 App_Id/Code 必须隐藏在 javascript 中,请尝试使用 Javascript Obfuscator,如果有 http get 请求但在 API 调用内部,那么细节可能仍然容易受到攻击。 Here API 应该致力于实施一项额外的检查,以限制使用域中的凭据。

标签: here-api


【解决方案1】:

在您的 HERE 开发人员仪表板中,当您导航到项目并查看 JavaScript / REST 令牌时,会有一个复选框显示“针对特定域保护应用凭据”。

https://developer.here.com/projects

通过将令牌锁定到特定域或域集,它们将免受恶意用户的攻击。如果有人窃取了您的令牌,他们将无法使用它们,因为请求需要来自您的域。

希望对您有所帮助。

最好的,

【讨论】:

  • 我猜这个功能是在过去 3 年中添加的,因为我不记得看到过复选框。所以感谢您的更新!
  • @Nic Raboy 这对我不起作用。我正在使用免费增值计划,并且我在“JavaScript/REST”部分的“针对特定域的安全应用程序凭据”中添加了一个域,但是我能够将我的代码移动到具有完全不同域的主机并且它可以工作.我错过了什么吗?
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2017-12-22
  • 2010-11-28
  • 2019-05-08
  • 2012-08-27
  • 2012-05-19
  • 1970-01-01
相关资源
最近更新 更多