security - Flutter中的敏感数据存储在哪里?
问题描述
我正在使用 openid-oauth2 构建身份验证。我设法从身份验证服务器收集了 access_token、identity_token。我想存储这些值并在每个 api 调用中使用这些值。我搜索时有几个选择。
我可以使用可以散列 access_token 的安全存储包,我可以读取该值来执行 api 调用。
我可以使用继承的小部件。在我的应用程序之上创建一个继承的小部件并从继承的小部件中读取。
- 我可以使用 Singleton。只需创建一个将充当单例类的类并将我的 access_token 存储在该类中。
- 我可以使用共享首选项。
当然,2.、3. 和 4. 选项并不安全。但是,我不知道是否有必要安全地存储这些值。
扑动存储这些值的最佳实践是什么?
解决方案
我建议您首先选择我已经用来存储令牌的 flutter_secure_storage。它是用例的完美选择。
将数据存储在安全存储中的 Flutter 插件:
钥匙串用于 iOS
AES 加密用于 Android。AES 密钥使用 RSA 加密,RSA 密钥存储在 KeyStore 中
推荐阅读
- python - Numpy:在循环中使用 npz 格式的 savez 保存多个数组
- javascript - 带有返回函数和 sinon 的存根函数?
- python-3.x - 所有用户的 Pip3 安装模块
- javascript - React 的 createContext 工厂函数有什么意义?
- r - Geosphere 的距离矩阵:避免重复计算
- javascript - Javascript在按钮单击时运行2个函数,带有多个按钮和相同的类
- python - 加速 CSV 文件上的 python 代码操作
- javascript - 从 Dailymotion 获取 URL 用于 LiveStream
- java - LRU Cache Evict 方法实现
- javascript - 在 Javascript 中使用函数作为类似 C# 的属性来访问私有数据是一种好习惯吗?