Android系统安全之数据安全
注意的是创建的模式以及向文件中写入的内容。 SharedPreference 存储是一种轻量级的数据存储方式,它的本质是基于 XML 文件存储Key-Value键值对数据,通常用来存储一些简单的配置信息。 File存储即常说的文件(I/O)存储方法,常用于存储大量的数据。 内部数据存储通常较为安全,因为它们可以受到Android系统的安全机制的保护。 Android的安全机制本质上就是Linux的安全机制,系统会为在Android系统上运行的每一个App创建一个进程,并为该进程分配一个UID。Android系统将会为每一个App创建一个特定的目录/data/data/app_package_name,这个目录的权限只与UID相关,且只有UID关联的用户才有该目录相关的权限。 因此,在对应目录下生成的SharedPreference文件与File文件如果以正确的方式去创建将会受到Android系统权限机制的保护。 这个正确的创建方式是指文件创建的模式,SharedPreference与文件的创建模式主要有以下3种。 MODE_PRIVATE:默认的创建模式,该进程的 UID 对应的用户将会对该文件拥有完全的控制的权限,而其他UID的用户将没有权限去读/写文件。 MODE_WORLD_WRITABLE:该权限将允许设备上所有的App对于该文件拥有写的权限。 MODE_WORLD_READABLE:该权限将允许设备上所有的App对于该文件拥有读的权限。 为了确保内部数据的安全,有如下建议。 (1)创建文件时的权限控制 如果在创建文件的时候没有注意控制权限,那么该文件的内容将会被其他的应用程序所读取,这样就造成了用户相关信息的泄露,SharedPreference中存储的往往是一些免登token、session id等和用户身份息息相关的重要信息,因此,在创建的时候一定要注意选取好创建的模式;免登token也一定要具有时效性,否则与存储了明文的用户名和密码无异。 (2)SharedPreference中不要存入明文密码等重要信息
由于有Root的存在,那么Root过后的手机就打破了Linux提供的沙箱机制,那么无论以何种方式去创建SharedPreference都已经不再安全了,如果存储的是用户明文的密码,那么用户的密码将会泄露,因此,绝对不要向SharedPreference中写入任何无 (编辑:济源站长网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |