Ho bisogno di aiuto per crittografare la stringa di connessione in app.config
e salvarlo lì e decodificarlo per l'uso.C#: serve aiuto per crittografare la stringa di connessione in app.config e salvarlo lì, decrittografarlo e usarlo?
5
A
risposta
2
È possibile utilizzare aspnet_regiis.exe -pef
per quello.
Vedere Encrypting the connection string in ASP.NET V2.0 e Encrypting Web.Config Values in ASP.NET 2.0 articoli per ulteriori spiegazioni.
0
Oltre al commento di @ Li0liQ, è possibile utilizzare il programma della riga di comando fornito con .NET Framework 2.0+ aspnet_regiis
. Consultare la documentazione MSDN here
2
Se si desidera eseguire manualmente la protezione, è possibile utilizzare la classe ProtectedData
. Alcuni codice:
class ConnectionStringProtector
{
readonly byte[] _salt = new byte[] { 1, 2, 3, 4, 5, 6 }; // Random values
readonly Encoding _encoding = Encoding.Unicode;
readonly DataProtectionScope _scope = DataProtectionScope.LocalMachine;
public string Unprotect(string str)
{
var protectedData = Convert.FromBase64String(str);
var unprotected = ProtectedData.Unprotect(protectedData, _salt, _scope);
return _encoding.GetString(unprotected);
}
public string Protect(string unprotectedString)
{
var unprotected = _encoding.GetBytes(unprotectedString);
var protectedData = ProtectedData.Protect(unprotected, _salt, _scope);
return Convert.ToBase64String(protectedData);
}
}
qui è un semplice test:
static void Main(string[] args)
{
var originalConnectionString = "original string";
var protector = new ConnectionStringProtector();
var protectedString = protector.Protect(originalConnectionString);
Console.WriteLine(protectedString);
Console.WriteLine();
var unprotectedConnectionString = protector.Unprotect(protectedString);
Console.WriteLine(unprotectedConnectionString);
Console.WriteLine("Press ENTER to finish");
Console.ReadLine();
}
Problemi correlati
- 1. Serve aiuto di base per analizzare una stringa in C++
- 2. Serve aiuto per convertire C# in VB
- 3. Serve aiuto per calcolare la distanza geografica
- 4. serve aiuto per la comprensione delle catene di certificati
- 5. Serve aiuto per concettualizzare in Redis/NoSQL
- 6. fuga e in App.config
- 7. VB.NET Stringa di connessione (Web.Config, App.Config)
- 8. Scaricare un file PDF e salvarlo in sdcard e poi leggere da lì
- 9. La pluralizzazione Android non funziona, serve aiuto
- 10. Aiuto con una stringa di connessione OleDB per file excel
- 11. app.config in DAL e web.config in WebApplication
- 12. stringa di connessione nel app.config in una libreria di classi
- 13. EF4 e stringa di connessione
- 14. Modifica stringa di connessione e ricarica app.config in fase di esecuzione
- 15. Serve aiuto per vettorizzare questo codice
- 16. Serve aiuto per la pulizia del modello Instantation Framework
- 17. query foreach e linq: serve un aiuto per cercare di capire per favore
- 18. Come scrivere in app.config nel progetto di installazione e usarlo nel programma
- 19. Scrivere un assemblatore, serve aiuto
- 20. Serve aiuto con l'istruzione Unisci
- 21. Come crittografare e decrittografare una stringa in python?
- 22. Impatti delle modifiche web.config e app.config
- 23. spiegazione di D_GNU_SOURCE Perché usarlo e quando?
- 24. Click-Once - Come crittografare le stringhe di connessione
- 25. Accesso alla stringa di connessione al database utilizzando app.config in Win # C#
- 26. Serve aiuto per convertire il certificato P12 in JKS
- 27. WaIISHost.exe.config e app.config per la configurazione del ruolo di lavoro
- 28. Cifratura della stringa di connessione nel file web.config in C#
- 29. WCF e EF - Come forzare l'host a utilizzare la propria stringa di connessione
- 30. App.config e file .ini
Un'implementazione di riferimento è descritto [qui] (https://stackoverflow.com/a/46405204/421695). – sefakeles