移动后端安全性/保护API

时间:2014-07-15 15:10:41

标签: api security mobile backend

我目前正在设计一个移动应用程序,我对保护运行服务的后端的安全性感到担忧。

我目前的计划是使用SSL和这样的基本工作流程:

workflow

生成的令牌过期,因为它确保如果有人物理访问电话/设备,他无法控制用户帐户太长时间,但同时,我不知道占用的持续时间是多少因为我不想每天都要求凭证。

我的问题是:

  1. 这是一个很好的方法吗?你会为它添加别的东西吗?
  2. 使用移动应用程序时,令牌的理想持续时间是什么?

1 个答案:

答案 0 :(得分:3)

首先,您应该在将会话密钥存储在设备上时对其进行加密。例如,使用带有加密选项的共享首选项。更多信息:Android SharedPreference security

其次,您可能希望实施" SSL固定"机制。这意味着在客户端验证SSL证书。您必须确定收到的证书是否属于您的后端。因此,您可以使用这种方式保护后端URL和参数。更多信息:https://www.infinum.co/the-capsized-eight/articles/securing-mobile-banking-on-android-with-ssl-certificate-pinninghttp://www.thoughtcrime.org/blog/authenticity-is-broken-in-ssl-but-your-app-ha/

第三,你的设计很好。但请确保您的会话密钥生成机制不是针对"会话预测"攻击。 https://www.owasp.org/index.php/Session_Prediction