用于跟踪login会话的Android应用程序策略

如果login成功,我有一些PHP脚本login并返回带有会话ID的JSON数组。

在我的应用程序中,我想在首页login,并通过正在login的应用程序继续进行。我创build了一个单例类,它包含从PHP页面接收的来自JSON的会话ID(以及其他一些字段)。 这个单例对象的字段“session_id”被检查取决于用户做什么。

如果用户想注销,那么session_id只会被设置为空,从而注销。

我也使用HttpURLConnection库login时发送用户名/密码。

这是处理这种情况足够的方法吗?

Solutions Collecting From Web of "用于跟踪login会话的Android应用程序策略"

以下是您应该考虑的一些事情:

  • 一旦你对用户进行了身份validation并在本地存储了session_id,在每个http请求的头部中发送session_id。 这样,你不会发送每个请求的凭据,但会话ID。 如果在服务器端发生了会话,交易将不被允许。
  • 注销时,不要只删除应用程序(客户端)端的session_id。 发送注销到服务器以及会话可以杀死服务器端。
  • 如果会话在服务器端被终止,您将需要执行以下两项操作之一:A)提示用户重新login。 B)使用存储凭证重新login,创build一个新的会话ID并再次存储在您的单身人士。

这将保证更多的安全性和function,而不仅仅是清除你的应用程序端的会话ID。

这个策略可能会奏效。 在我工作的应用程序中,我将来自login的返回数据存储在android共享首选项中。 如果用户注销,我清除了首选项。 这允许用户保持login,即使他们closures了应用程序,并在以后返回。 我有一个身份validation令牌,我检查了用户的login是否仍然有效。

你如何计划处理持续login? sessionID是否过期? 您可能想要考虑这些情况,否则一旦用户login,他们将永远login或只要应用程序打开。