密码保护数据库

本文关键字:数据库 密码保护 | 更新日期: 2023-09-27 18:32:12

我使用 Entity Framework Core 1.0 在 C# 桌面应用程序中管理 SQLite 数据库。如何对数据库进行密码保护?

我知道如何使用.

NET类System.Data.SQLite,但是如何使用Entity Framework Core 1.0?

密码保护数据库

使用 EntityFramework Core 2.0 (EFCore 2.0),可以使用加密的 SQLite 数据库。

将 SQLite 加密 (SQLCiher) 数据库与 EFCore 一起使用的步骤

  1. 在Microsoft.EntityFrameworkCore.Design项目。

  2. 添加引用Microsoft.EntityFrameworkCore.Sqlite.Core. 这非常重要步。不要添加 的引用Microsoft.EntityFrameworkCore.Sqlite. 否则将无法正常工作。

  3. 添加SQLitePCLRaw.bundle_sqlcipher的引用。用于加密这是必需的。添加以下行 ExcludeAssets="All" 是重要,否则它将不起作用。有关详细信息,请参阅以下链接http://www.bricelam.net/2016/06/13/sqlite-encryption.html

    从 Github 下载工作示例

EF Core 使用 Microsoft.Data.Sqlite,它目前不支持开箱即用的加密。请参阅 https://github.com/aspnet/Microsoft.Data.Sqlite/issues/184。您可以使用SQLite扩展自行添加加密。