我希望在我的React Native应用程序中保留用户的帐户凭据(即用户名和密码)。我应该使用AsyncStorage吗?
换句话说,我想知道AsyncStorage是否以及如何保护其内容。docs对此保持沉默。
(我正在使用RN v0.28)
发布于 2017-08-09 16:34:53
是AsyncStorage安全的吗?
没有AsyncStorage是不安全的,文档说:
AsyncStorage是一个简单的、未加密的、异步的、持久的、键值存储系统,它对应用程序是全局的。应该使用它而不是LocalStorage。
为了在本机存储安全信息,我强烈建议您在react-native中使用react-native-keychain
对于iOS,它使用密钥链共享功能
对于Android,它使用:
Keystore API级别16-22使用Facebook隐藏
这是一个简单的例子:
// Generic Password, service argument optional
Keychain
.setGenericPassword(username, password)
.then(function() {
console.log('Credentials saved successfully!');
});
// service argument optional
Keychain
.getGenericPassword()
.then(function(credentials) {
console.log('Credentials successfully loaded for user ' + credentials.username);
}).catch(function(error) {
console.log('Keychain couldn\'t be accessed! Maybe no value set?', error);
});发布于 2017-09-12 15:21:49
如果您使用的是Expo sdk,您可以使用SecureStore来处理敏感信息。
发布于 2016-07-15 22:04:07
NO (至少在iOS上,RN v0.28)
AsyncStorage将键-值对保存为Documents目录中的纯文本JSON文件。
如果在iOS模拟器中运行它,则可以在~/Library/Developer/CoreSimulator/Devices上找到它的内容

https://stackoverflow.com/questions/38397136
复制相似问题