【问题标题】:Is it possible to encrypt an SQLite database when using offline data sync in Azure Mobile Services?在 Azure 移动服务中使用离线数据同步时是否可以加密 SQLite 数据库?
【发布时间】:2015-03-02 20:51:50
【问题描述】:

我有一个使用 Azure 移动服务保存 SQLite 数据库的 WinRT 应用程序。我按照这里的教程进行操作:Using offline data in MobileServices

我让数据库正常工作,但我想知道是否可以对使用此行创建的数据库文件进行加密或密码保护

var store = new MobileServiceSQLiteStore("localstore.db");

我正在尝试添加额外的安全层来保护敏感信息。密码等不存储在数据库中,但用户输入的其他信息可能需要保护并与托管在 Azure 上的服务同步。否则,有人可能会导航到 C:\Users\[username]\AppData\Local\Packages\[packageId]\LocalState 并使用任何 SQLite 数据库浏览器程序打开数据库。我可以在将类中保存的数据保存到数据库之前对其进行加密,但如果可能的话,最好对数据库文件进行加密。

【问题讨论】:

  • 为什么需要加密?如果您要存储用户的密码,为什么不在他们需要验证时提示他们输入密码呢?加密数据库不会阻止任何事情,因为您需要密钥来解密它,如果攻击者可以访问数据库,那么他可能也可以访问密钥。
  • 该程序主要用于数据输入,我想保护数据库,因为它将保存潜在的敏感数据。如果无法做到这一点,那么我只需要在将数据保存到数据库之前对其进行加密。

标签: c# sqlite azure encryption azure-mobile-services


【解决方案1】:

Azure 移动服务目前没有用于密码保护或加密设备上的 SQLite 数据库的 API。您可以向open source project 贡献或提供反馈。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2017-01-06
    • 2016-01-15
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-02-28
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多