Android - 保护api端点auth标头

时间:2017-07-06 18:01:24

标签: android api authentication

在我的Android应用中,我向后端API发出请求并添加了一个auth标头值,以便只有我的应用才能访问我的API数据。我使用的是OKHttp,它简单.addHeader(" name"," value")

但是,现在我只是在我的Java文件中硬编码这个头名和值。似乎人们能够反编译Android应用程序,并且能够看到我的auth标头值。

有没有办法阻止这种情况发生?

1 个答案:

答案 0 :(得分:0)

这是一个非常讨论的主题,它总是一个权衡。

一些策略

  • 用Java硬编码
  • 在共享首选项,资源或资源文件夹中
  • 使用NDK
  • 公钥/私钥API密钥交换

文章的结论

您选择的选项可能取决于您对后端服务器的控制程度。如果您没有任何控制权,那么您可能需要使用NDK隐藏API密钥。如果您这样做,我们建议使用随机数的API密钥的公共/私有加密,以防止任何重播攻击。在下一篇文章中,我们将介绍支持早期Android操作系统版本的安全隐患,以及某些Android手机如何比其他手机更安全。

订阅我们的Android开发者时事通讯 加入我们的Android开发者时事通讯,获取所有顶级开发者新闻,提示和信息。每周在您的收件箱中链接一次

Full article

Possible duplicated question/answer