2

所以我有这个 ASP.NET MVC 4 Web 应用程序,它的行为非常像 Web 服务。客户端发送请求,Web 服务返回一个 JSON 对象。现在,我必须从 Android 应用程序对我的用户进行身份验证。在客户端执行此操作的正确方法是什么,因为我不再有 Web 浏览器来存储 cookie 以便我通过服务器进行身份验证。SSL 已经处理好了。

我一直在考虑几种直接的身份验证方法,但我担心存在一些我可能不知道的安全漏洞。

我可以将用户凭据(用户名和密码)存储在安装了应用程序的 Android 手机上的 SQLite 数据库中,然后将这些凭据与每个请求一起发送到服务器进行身份验证吗?(当然,我正在考虑在将密码存储到数据库之前对其进行哈希处理)。

这种方法不安全吗?其他应用程序通常如何对其服务进行身份验证:如 eBay、Facebook 等?

4

2 回答 2

2

保存在私人存储中的数据相对安全(至少在非 root 设备上)。这包括:

如果您想更好地与帐户管理器集成(例如,将帐户列在设备的设置中),您可以编写一个 AccountAuthenticator。请参阅创建自定义帐户类型编写您自己的 Android 身份验证器。不确定 eBay 和 Facebook,但 Firefox Sync 和 Evernote 就是这样做的。

于 2013-08-28T15:42:21.453 回答
1

您可以使用OAuth 2 - 许多教程和实现都是现成的。

于 2013-08-28T15:02:13.050 回答