如何验证请求来自特定的Web应用程序

时间:2014-12-05 12:21:57

标签: javascript php security cordova

所以我为我的(javascript)网络应用程序提供了一个Web API。该应用程序包含在Cordova中,并在iOS和Android上分发。

我更希望保持数据访问受限(让第三方不使用我的API)。但是我该怎么做呢?我不要求(也不想)用户创建帐户,因此应用程序本身必须以某种方式验证其发送请求的应用程序,而不是其他人。

但是怎么样?

2 个答案:

答案 0 :(得分:2)

  

我更希望保持数据访问受限(让第三方不使用我的API)。但是我该怎么做呢?

     

...

     

应用程序本身必须以某种方式验证其发送请求的应用程序,而不是其他人。

     

...

     

但是怎么样?

你要求的是不可能的。这也是要解决的错误问题。

进一步阅读:Client Authenticity is not the Server's Problem

答案 1 :(得分:0)

你无法100%确定,但你可以让逆向工程师为它工作。

  • 使用tls ao他们不能轻易地用嗅探器观察您的协议
  • 不要只使用单个api密钥,使密钥成为通过应用程序传播的各种值的函数以及实际的用户数据
  • 考虑使用服务器发送的tls密钥作为api密钥功能的一部分,所以如果他们有所帮助,一切都会破坏性的
  • 在api中使用无意义的字段名称
  • 频繁推出更改api系统的更新