介绍一个轻量级iOS安全框架:SSKeyChain
来源:互联网 发布:2k17科比捏脸数据 编辑:程序博客网 时间:2024/04/29 00:18
SSKeyChains对苹果安全框架API进行了简单封装,支持对存储在钥匙串中密码、账户进行访问,包括读取、删除和设置。SSKeyChain的作者是大名鼎鼎的SSToolkit的作者samsoffes。
项目地址:https://github.com/samsoffes/sskeychain
在工程中加入SSKeyChain
在工程中加入Security.framework框架。
把SSKeychain.h和SSKeychain.m加到项目文件夹。
使用SSKeyChain
通过以下类方法来使用SSKeyChain(请查看SSKeyChain.h):
+ (NSArray *)allAccounts;
+ (NSArray *)accountsForService:(NSString *)serviceName;
+ (NSString *)passwordForService:(NSString *)serviceNameaccount:(NSString *)account;
+ (BOOL)deletePasswordForService:(NSString *)serviceNameaccount:(NSString *)account;
+ (BOOL)setPassword:(NSString *)password forService:(NSString*)serviceName account:(NSString *)account;
文档
在Xcode中安装SSKeyChain的帮助文档需要以下步骤:
打开菜单 Xcode -> Preferences
选择 Downloads
选择 Documentation
点击底部的加号按钮,并输入以下URL: http://docs.samsoff.es/com.samsoffes.sskeychain.atom
点击”SSKeyChain Documentation”旁边的install按钮。 (如果你看不到它,也没有提示任何错误,请重启Xcode)
确保在Organizer中可选的docset中能够看到SSKeychain。
此外,可以在线查看SSKeychain Documentation。
调试
如果无法保存钥匙串,请使用SSKeychain.h中提供的错误代码,例如:
NSError *error = nil;
NSString *password = [SSKeychainpasswordForService:@"MyService" account:@"samsoffes"error:&error];
if ([error code] == SSKeychainErrorNotFound) {
NSLog(@"Passwordnot found");
}
显然,你对做这个应该很熟悉了。访问钥匙串是件痛苦的事情,你要随时检查它的每个错误和失败。SSKeychain并没有使它(钥匙串)变得更稳定,它仅仅是繁琐的C APIs封装。
示例代码
保存一个UUID字符串到钥匙串:
CFUUIDRef uuid = CFUUIDCreate(NULL);assert(uuid != NULL);CFStringRef uuidStr = CFUUIDCreateString(NULL, uuid);
[SSKeychain setPassword: [NSString stringWithFormat:@"%@", uuidStr]
forService:@"com.yourapp.yourcompany"account:@"user"];
然后,从钥匙串读取UUID:
NSString *retrieveuuid = [SSKeychainpasswordForService:@"com.yourapp.yourcompany"account:@"user"];
- 介绍一个轻量级iOS安全框架:SSKeyChain
- 介绍一个轻量级iOS安全框架:SSKeyChain
- 介绍一个轻量级iOS安全框架:SSKeyChain
- 介绍一个轻量级iOS安全框架:SSKeyChain
- 介绍一个轻量级iOS安全框架:SSKeyChain
- 一个轻量级iOS安全框架:SSKeyChain
- 轻量级iOS安全框架:SSKeyChain
- IOS学习笔记22 轻量级iOS安全框架:SSKeyChain
- iOS 轻量级安全第三方库 SSKeychain
- ios sskeychain
- SSkeychain框架替换KeychainItemWrapper
- 轻量级 iOS Untar 介绍
- 一个iOS 框架介绍:MKNetworkKit
- 一个iOS 框架介绍:MKNetworkKit
- 一个iOS 框架介绍:MKNetworkKit
- 一个iOS 框架介绍:MKNetworkKit
- 一个iOS 框架介绍:MKNetworkKit
- 一个iOS 框架介绍:MKNetworkKit
- FTxxxx系列-----home按键失灵(kl没有加载正确)
- XAudio2学习之MonitorAPO
- easyui给tree加个title提示
- radosgw bucket index sharding
- ScrollView隐藏滚动条
- 介绍一个轻量级iOS安全框架:SSKeyChain
- sortedArrayUsingComparator
- java 利用数组实现循环队列
- Android 百度地图打包不能使用 解决详细方法
- Android API Guides---Web Apps
- Android之NetworkOnMainThreadException异常
- 用JavaScript判断横屏竖屏问题。(转)
- AYIT606第六周周六赛 (多重背包) E - Cash Machine 自动取款机
- 搜索1002