【问题标题】:Phonegap: Authenticating the app and not the user for api accessPhonegap:验证应用程序而不是用户访问 api
【发布时间】:2015-05-04 21:54:57
【问题描述】:

我有一个应用程序,我已经在 php 中创建了所需的 API,我也可以使用 firebase 创建它。

该应用旨在供不熟悉技术的人使用。我不想要任何登录验证。

由于我已经创建了 API,任何通过我的代码的人都可以看到 API 链接并且可以获得我不想要的数据。

我想要实现的是当请求仅来自我的应用程序时提供数据的 API

如何在没有任何用户登录的情况下实现这一点?

【问题讨论】:

  • 您似乎在寻找anonymous authentication。您无法以任何方式安全地验证来自特定应用程序的任何内容。您可以通过generating your own token 实现穷人的安全性(这不是很安全)并将其用于所有用户的身份验证。

标签: javascript php cordova firebase


【解决方案1】:

创建一个访问令牌并将其存储在您的应用程序中,然后在每个 ajax 请求中您将比较令牌,因此如果令牌有效,您将交付内容,否则您将显示错误消息。

正如raymond Camden 在他的评论中所说:

它不安全。我可以使用远程调试来嗅探访问令牌 然后自己使用。归根结底,没有办法 你想要的东西 100% 安全。

【讨论】:

  • 对不起,我是新手。但如果令牌存储在我的应用程序中,那么有人也可以得到它。这是正确的吗?
  • @krv,是的,如果有人打开你的代码,并且理解了代码,就可以得到它。但在这里你可以以智能的方式存储它,并且可以加密整个代码
  • @krv,你可以查看这个问题:stackoverflow.com/questions/2060984/…
  • 是的,我知道放大倍数,但令牌仍然可见..有没有办法获取应用程序的包名称(com.domain.myapp),以便我可以对其应用程序进行身份验证并发送数据
  • @krv,你可以得到包名,但是你必须把它作为参数发送,这个参数可以被别人修改。不幸的是,服务器端无法检测到它。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2015-07-27
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2014-07-06
  • 2014-04-22
相关资源
最近更新 更多