NSFileManager---数据保护

来源:互联网 发布:网络医疗咨询平台 编辑:程序博客网 时间:2024/06/05 13:27

转载自:http://blog.csdn.net/yiyaaixuexi/article/details/19486335

数据保护API


1)文件保护

  1. /* 为filePath文件设置保护等级 */  
  2. NSDictionary *attributes = [NSDictionary dictionaryWithObject:NSFileProtectionComplete  
  3.                                                        forKey:NSFileProtectionKey];  
  4. [[NSFileManager defaultManager] setAttributes:attributes  
  5.                                  ofItemAtPath:filePath  
  6.                                         error:nil];  

  1. //文件保护等级属性列表  
  2. NSFileProtectionNone                                    //文件未受保护,随时可以访问 (Default)  
  3. NSFileProtectionComplete                                //文件受到保护,而且只有在设备未被锁定时才可访问  
  4. NSFileProtectionCompleteUntilFirstUserAuthentication    //文件收到保护,直到设备启动且用户第一次输入密码  
  5. NSFileProtectionCompleteUnlessOpen                      //文件受到保护,而且只有在设备未被锁定时才可打开,不过即便在设备被锁定时,已经打开的文件还是可以继续使用和写入  


应用实例


把一段信息infoStrng字符串写进文件,然后通过Data Protection API设置保护。

  1. NSString *documentsPath =[NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES) firstObject];  
  2. NSString *filePath = [documentsPath stringByAppendingPathComponent:@"DataProtect"];  
  3. [infoString writeToFile:filePath  
  4.              atomically:YES   
  5.                encoding:NSUTF8StringEncoding  
  6.                   error:nil];  
  7. NSDictionary *attributes = [NSDictionary dictionaryWithObject:NSFileProtectionComplete  
  8.                                                        forKey:NSFileProtectionKey];  
  9. [[NSFileManager defaultManager] setAttributes:attributes  
  10.                                  ofItemAtPath:filePath  
  11.                                         error:nil];  

设备锁屏(带密码保护)后,即使是越狱机,在root权限下cat读取那个文件信息也会被拒绝。


0 0
原创粉丝点击