相关疑难解决方法(0)

处理连接到Web服务的本机应用程序的登录功能

经过广泛的研究,我无法找到我的问题的明确答案.首先,有人能告诉我处理连接到Web服务的本机iphone应用程序的"登录功能"的基本逻辑吗?例如,Facebook应用程序在启动后立即询问用户名和密码,从那里您可以在应用程序的所有后续视图中完全访问您的帐户.每次你发布的东西等,你都不必重新登录...有人可以向我解释这个过程吗?它是通过cookie还是会话完成的?Keychain参与了吗?

我现在有一个半工作的应用程序,但我几乎肯定我可以做得更好,更安全.这是我正在做的事情:

1)使用mysql设置具有用户数据库(用户名和密码列以及其他表等)的本地服务器.写了一个简单的Web服务,它接受POST数据并查询数据库以检查用户名是否存在......如果存在,那么密码是相同的.使用sha1散列.相应地回应真或假.

2)我的应用程序有一个初始登录屏幕,其中包含2个文本字段(1表示用户名,1表示密码)和一个调用登录方法的按钮.我的登录方法执行以下操作:

  • 使用字符串初始化*NSURL(我的网络服务的网址:@"http://webservice.com/login.php")
  • 使用该url初始化*ASIFormDataRequst
  • 使用文本字段中的密码和电子邮件文本设置发布值
  • 将委托设置为自己
  • 在请求中调用startAsycronous
  • 实现了requestFininshed方法,以从webservice中检索"true"或"false"echo-ed
  • 根据响应,前进到下一个视图,否则,发出警告告诉用户重试

所以,我的问题是:

1)发送密码是否安全?(通过ASIHTTPRequest和POST方法?)2)在随后的视图中,用户应该能够与他们的帐户进行交互(比如在Facebook上发布消息和状态以及图片)如何保持用户的登录状态以便每个人都可以用户与数据库交互的时间,我可以确保用户仍然登录并且它是同一个用户?例如,我能想到这样做的唯一方法是,如果我使用用户名和密码在用户设备上存储cookie,然后每次与Web服务/数据库的连续交互,它都会使用cookie值进行身份验证(用户名)和密码).

必须有更好的方法来做到这一点?也许会议或饼干?或者使用钥匙串?

感谢帮助人员,对不起这个长期问题感到抱歉!


security facebook login httprequest ios

22
推荐指数
1
解决办法
9970
查看次数

标签 统计

facebook ×1

httprequest ×1

ios ×1

login ×1

security ×1