首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Android:通过HTTP进行安全和用户认证(注册、登录)的一些问题

Android:通过HTTP进行安全和用户认证(注册、登录)的一些问题
EN

Stack Overflow用户
提问于 2012-12-13 17:32:49
回答 1查看 1.5K关注 0票数 3

我就是搞不懂这件事。我目前正在Android上构建一个相当大规模的应用程序。我遇到了一些关于安全和认证的问题.

设想情况:

我有一个应用程序通过HTTP (稍后将实现SSL )调用运行PHP和MySQL的服务器。当然,我想使用现有的用户数据库,所以迁移到另一个DB并不是一个解决方案。我已经成功地创建了“通过Android注册用户到服务器”-functionality。我也做了一个有效的登录,但这是问题的起点。

当Android应用程序中的用户通过/向应用程序添加、编辑、删除和同步服务器上的内容时,事情变得相当复杂。对我来说有点太复杂了:)

问题:

  1. 当我从服务器端登录得到结果,并通过JSON将其从服务器端传递给Android时,连接就会终止,而服务器端则不会登录(会话死亡),而在电话上则是这样。如何使登录--在服务器上和在Android中--在不需要再次登录的情况下保持不变?因此,随后从Android到服务器的调用都是用相同的用户进行的,仍然是经过身份验证的。也就是说,我希望像Spotify-app (以及许多其他用户)那样进行一次登录(“直到退出”)。
  2. 如果我的理解是正确的,那么实现SSL正确可以将明文密码发送到服务器,而不需要先散列密码。这是正确的吗?

我无法停止思考这样一个事实:MIM攻击会损害我从Android发送到服务器的唯一身份。我的第一个想法是在成功登录后,将Android设备上的UID作为服务器的“密钥”。但是,如果该密钥落入错误的手中,则与该UID相关的用户将受到危害。我看过安卓系统上的AccountManager,但在我的例子中,这似乎有点过火了。

如果有人能提供例子或至少指南,我会非常感激!

非常感谢!

编辑后添加解决方案图

请注意,此图显示了应用程序的第一次启动。以后的创业公司不会显示登录/注册表单,而是使用DUT。

// Alexander

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2012-12-14 03:30:38

向Android应用程序发布某种形式的短期身份验证令牌。他们需要在每个请求中传递它,并且您将检查它您的Web应用程序。断开连接并不会结束会话,如果是这样的话,您的Web应用程序就会有错误:修复它。在安卓系统中,只要你使用相同的HttpClient实例,它就会继续使用相同的会话,没有什么特别的需要。

无论您做什么,不要延迟实现SSL,现在就执行它。

票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/13865296

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档