Proteggi il database SQLite utilizzato da EntityFramework Core Application

c# entity-framework-core sqlite

Domanda

Sto cercando di utilizzare EntityFramework Core 1.0 (nuovo nome per EntityFramework 7) per gestire un database SQLite in un'applicazione desktop C #.

Leggo la documentazione ufficiale e le mie applicazioni di test funzionano.

La mia domanda è: è possibile proteggere con password il database?

So che ci sono molti modi per farlo, esiste anche la classe .NET System.Data.SQLite che permette di farlo, ma come farlo usando EFCore 1?

Non riesco a capire se è possibile.

Grazie per l'aiuto,

Enrico

Risposta popolare

Con EntityFramework Core 2.0 (EFCore 2.0), è possibile utilizzare il database SQLite crittografato.

Passi per l'utilizzo del database SQLite Encrypted (SQLCiher) con EFCore

  1. Aggiungi il riferimento di Microsoft.EntityFrameworkCore.Design nel tuo progetto.

  2. Aggiungere il riferimento di Microsoft.EntityFrameworkCore.Sqlite.Core. Questo è un passo davvero importante. Non aggiungere il riferimento di Microsoft.EntityFrameworkCore.Sqlite. Altrimenti non funzionerà.

  3. Aggiungere il riferimento di SQLitePCLRaw.bundle_sqlcipher. Per la crittografia è richiesto. Aggiungi la seguente riga ExcludeAssets = "Tutto" è importante altrimenti non funzionerà. Per i dettagli, fare riferimento al seguente link http://www.bricelam.net/2016/06/13/sqlite-encryption.html

    Scarica l'esempio di lavoro da Github



Autorizzato sotto: CC-BY-SA with attribution
Non affiliato con Stack Overflow
È legale questo KB? Sì, impara il perché
Autorizzato sotto: CC-BY-SA with attribution
Non affiliato con Stack Overflow
È legale questo KB? Sì, impara il perché