我们有一个用于我们的移动应用程序的本地搜索网站的 API。
目前,
- API 不公开
- API 中未提供用户数据
- 正在通过 http 运行
我想保护通过 API 发送的数据。我做了一些研究,看起来 Oauth 是可行的方法
- Oauth 是正确的方法吗? (我们目前将使用 2 条腿的 oauth,但将来如果我们需要用户许可,我们将转向 3 条腿的 oauth)
- API 需要 https 吗?自签名证书可以正常工作吗?
最佳答案
Oauth 最适合涉及第三方(Provider)的场景。例如:使用 Facebook 登录。
如果用户必须登录您的服务才能访问 API,您可以使用基本身份验证。 (通过 Https 将凭据附加到 Http header )
最后:是的,您需要 Https。如果您控制客户端和服务器,则自签名证书可以工作。例如,对于 Android,您可以导入您的证书):
http://developer.android.com/training/articles/security-ssl.html (自签名服务器证书部分)
但是,如果您正在创建 Web 客户端,用户会收到有关不受信任站点的警告。
关于security - 保护移动设备的 Web API,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5577579/