[英]What is the best way to maintain the login credentials in iOS?
我需要在整个应用程序中维护我的登录凭据,因此,我有 3 个选项来维护我的登录凭据...
1 key chain
2 NSUserDefaults
3 plist
选择哪一个最好? 还有其他方法可以存储登录凭据吗?
提前致谢
由于其提供的安全功能,我建议使用钥匙串存储登录凭据。 iOS上的钥匙串服务提供了一种安全存储密码,密钥,证书等内容的方法。
密码和密钥等敏感数据应存储在钥匙串中。 Apple的Keychain Services Programming Guide声明了这一点
“钥匙串是一个加密容器,可以存放多个应用程序和安全服务的密码。钥匙串是安全的存储容器,这意味着当钥匙串被锁定时,没有人可以访问其受保护的内容”。
这是两个很好的教程。
此链接旨在使Mac OSX和iOS Keychains像NSUserDefaults一样简单。
它是围绕Mac OSX和iOS Keychains的符合KVO标准的Cocoa包装器,这个包装器的模型是NSUserDefaults,因此意图是对于您通常想要调用的常见情况:
[NSUserDefaultsController sharedUserDefaultsController]
你应该可以打电话
[PDKeychainBindingsController sharedKeychainBindingsController]
对于您通常会调用的常见情况:
[NSUserDefaults standardUserDefaults]
你应该可以打电话
[PDKeychainBindings sharedKeychainBindings]
这些实现之间存在一些差异。 首先,此类仅对字符串有效,因为这是Keychain接受的内容,因此从类中省略了采用非字符串对象(如数组和字典等)的方法。 其次,现在只实现“立即模式”,所以你不能设置一堆值然后调用“save”来只做一次写操作,并且没有“恢复到保存的值”功能)。
我认为NSUserDefaults是存储登录凭据的简单方法,这是一个教程
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.