sqlite - 在 Cordova 中安全地存储访问 token

标签 sqlite cordova ionic-framework local-storage

编辑:见我的answer为解决方案

目前正在使用 Ionic 开发混合应用程序需要存储身份验证 token 以使用户保持登录状态,并确保无法在 App 上下文之外访问此数据。

当然,这项任务有很多解决方案,每个解决方案都有不同的优缺点,因此(对我来说)找到适合的一种技术是令人困惑的。

我一直在看angular-localForage和其他候选人:

本地存储

  • 小数据的明显选择。
  • 数据在 iOS 中被删除当系统内存不足时。

  • 索引数据库
  • iOS 中的 buggy 支持( IndexedDB support )

  • WebSQL (SQLite)
  • 对于小数据和体面的支持(WebSQL suppport)显然是一个不错的选择,但它已被弃用。

  • SQLite
  • Cordova 存在相关问题在 iOS .

  • LokiJS
  • 在这种情况下看起来有点矫枉过正,但绝对是一个强有力的候选人。我应该注意哪些安全问题(当我在本地读取它时,将数据持久保存到 JSON 文件中)?

  • PouchDB + SQLite
  • 好吧,这是一个与 CouchDB 或 Couchbase 数据库一起使用的 JS 客户端,它也可以与 SQLite 一起使用,但我只需要存储一个 Token ..


  • 显然,具有讽刺意味的是,Android/iOS 交叉兼容性的最佳选择应该是 WebSQL,但已不再开发,我必须保证长期支持。

    所以我的问题是:我还缺少其他安全存储访问 token 的选项吗?如果不这样做,以上哪一个应该是这项任务的最佳选择?

    最佳答案

    唯一安全的方法是使用“httponly cookie”。但是,自 2020 年 4 月起,Apple 使用存在 cookie 问题的 wkwebview。

    关于sqlite - 在 Cordova 中安全地存储访问 token ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36389354/

    相关文章:

    java.sql.SQLException : statement is not executing

    xcode - 带有 swift 的 SQLite,我无法从我的表查询中获取所有元素

    android - 我如何解决 JQuery Mobile `ui-corner-all` Corners

    ionic-framework - 身份服务器 + ionic + OpenID 混合流

    javascript - 具有多种方法的 Controller 中的 Angular 服务注入(inject)

    javascript - 图像未从我的 json 文件加载

    "search and replace"中正则表达式的 sqlite3 语法

    android - ListFragment 和上下文

    android - 设备锁定时停止播放 android 应用程序音频

    ios - jenkins 中的 Cordova ios 应用程序构建错误。 fatal error : 'Cordova/CDVViewController.h' file not found