2018-05-31 iOS本地保存用户名和密码

iOS 本地保存用户名密码等敏感信息,使用plist文件存储或者NSUserdefaults并不安全,需要进行加密。苹果keychain不仅仅申请开发证书使用,也是苹果给出的保存密码的最佳解决方案。

我们使用SFHFKeychainUtils第三方库来实现保存、读取和删除用户名密码操作。

SFHFKeychainUtils下载地址:https://github.com/ldandersen/scifihifi-iphone/tree/master/security。

新建工程,把下载的SFHFKeychainUtils.h和SFHFKeychainUtils.m文件添加到工程中,由于下载的SFHFKeychainUtils不支持ARC,所以要在TARGETS->Build Phases->Complie Resources 中的SFHFKeychainUtils.m添加 -fno-objc-arc的Compiler Flags。最后添加Security.framework框架。

//保存用户名密码

 NSString*serviceName =@"com.XXXX.XXXX";  

 [SFHFKeychainUtils storeUsername:self.mobileTextField.text andPassword:self.passwordTextField.text forServiceName:serviceName updateExisting:YES error:nil];

//读取用户名密码

NSString *password = [SFHFKeychainUtils getPasswordForUsername:LOGIN_USER_MOBILE andServiceName:serviceName error:nil];

//删除用户名密码

[SFHFKeychainUtils deleteItemForUsername:LOGIN_USER_MOBILE andServiceName:serviceName error:nil];

这样我们的APP就更加安全了!

你可能感兴趣的:(2018-05-31 iOS本地保存用户名和密码)