2013-03-01 203 views
4

我正在开发一个ios应用程序,我正在用户用户名和密码登录。目前的事件流程如下:php身份验证令牌+ ios

1)用户输入用户名和密码。

2)单击登录按钮调用一个php webservice,它对用户进行身份验证,并根据登录成功或失败返回1或0。

现在,我想对我的php登录web服务进行更新,以便它可以在首次成功登录后向ios返回身份验证令牌。然后我想将此令牌安全地存储在我的手机上。这里是我的问题:

1)是否有一个标准算法来生成身份验证令牌?我正在阅读某些线程,令牌应该是UDID + userid +时间戳的加密,但没有看到具体的答案或示例。

2)一旦我在手机上接收到令牌,我如何将其安全地存储在钥匙串中。我打算使用SFHFKeychainUtils。有没有办法可以使用这个存储我的令牌。我搜索了很多在钥匙串/ SFHFKeychainUtils上存储认证令牌,但没有找到具体的答案。我是否将它作为用户标识,令牌组合存储或者是否有更好的方法来完成此操作?

我真的很感激你的意见。

谢谢,

迈克。

+0

回复:问题2,将SFHFKeychainUtils视为键值存储区,其中用户名是密钥,密码是值。 – 2013-03-01 05:11:44

+0

@CarlVeazey - 您提到的技术可用于存储密码。同样的技术也可以用于存储身份验证吗?在那种情况下,我是否将令牌存储为键值对,其中userid是键,令牌是值? – 2013-03-01 06:07:22

+0

不仅仅用于密码 - 它适用于任何一对字符串,其中一个是键,一个是值。 SFHFKeychainUtils中的方法命名不会更改该方法。使用你认为适合你的关键字的任何东西,并将该标记作为值。如果您需要支持多个用户,那么用户标识可能有意义,因此请使用用户标识作为用户名和标记作为密码的方法。 – 2013-03-01 06:12:03

回答

1

oauth是认证过程的标准协议。检查oauth-consumer libray.You可以从这里下载link