2012-11-19 38 views
2

我对iOS应用程序的登录/身份验证体系结构的最佳做法有疑问。iOS登录架构,如何检查登录?

情况: 该应用程序构建为实现照片库的iOS客户端(使用RESTful API)。用户可以看到自己的画廊,添加照片和类似的东西。该应用程序严重依赖于有效的API登录(atm它只是简单的HTTP身份验证,目前来说)。 API调用使用AFNetworking进行。这已经很好了。现在,我必须实施认证。

我的问题如下:

  • 你只需登录一次使用一个登录视图和存储一些凭证(用户默认设置为例)?

  • 您是否只需在应用程序加载后再次使用这些凭据以查看它们是否仍然有效,如果不再次显示登录视图以在用户默认过程中重复登录+存储?

你们认为什么是一个好的解决方案?很高兴知道别人如何处理这个问题。由于我可以控制API以及应用程序,因此我可以修改认证机制。在双方。但是,该API不会公开,仅用于连接网站(用户也可以登录)和应用程序。我有强烈的感觉,OAuth2会过度杀伤,可能不是最好的选择。

我真的不知道如何将自己的网络应用程序连接到移动应用程序。任何意见,指向文章或甚至推荐书籍涵盖此主题真的很感激。期待您的反馈!

+2

请在询问之前使用搜索。许多SO问题比使用内部搜索更容易被谷歌搜索发现。看看这个答案:http://stackoverflow.com/questions/6972092/ios-how-to-store-username-password-within-an-app – brainray

+0

非常感谢你!我很遗憾,我没有发现这一点,但我发誓,我做了很多研究。我真的自己做了大部分的东西,但对Keychain的暗示可能是我所需要的。再一次,非常感谢! – luckyduck

回答

0

我所做的是将证书保存到钥匙串中,并将验证令牌保存到.plist文件中,但您可以将其保存到任何地方。如果我有两个值,我假设用户有权访问API并让应用正常运行。如果没有,我发送一个通知来打开一个带有登录屏幕的Modal View Controller。