verwendetes Datenbanksystem: Access 2000; VS 2010
Hallo Leute,
ich bin nun bald am verzweifeln - habe folgendes Problem und finde einfach keine Lösung - oder bin zu blöd dazu: Ich arbeite an einem Programm, welches Zugriff auf eine Datenbank (Access2000) benötigt. Ich verwende dabei stark typisierte DataSets. Die Informationen in der Datenbank sollen jedoch dem Anwender verborgen bleiben - leider steht jedoch das Passwort der DB unverschlüsselt im ConnectionString in der app.config. Wie kann ich das ändern? Ich habe schon versucht, im SettingsLoaded-Event den ConnectionString zu verändern (Replace), aber das funzt nicht.
Mir ist klar, dass es keine absolute Sicherheit gibt, aber irgendwie muss man doch das DB-Passwort aus dem ConnectionString raushalten können und zur Laufzeit durch das Programm setzen lassen können?! Was übersehe ich hier?
Gruß
Matthias
Kann sein dass ich jetzt daneben liege, aber:
Speichere den ConnectionString mit einem {0} für das Passwort
und wenn Du den connectionString zuweise schreibe
string.Format(connectionString, passwort)
dann wird das {0} durch den Inhalt der variable passwort ersetzt.
mbg
Rossegger Robert
mehr fragen mehr wissen
Montag morgen ist die beste Zeit um eine erfolgreiche Woche zu beginnen
Was spricht gegen die Verwendung von ConnectionStringBuilder?
Hi,
@witte - ja, hatte ich schon gesehen - scheint aber nur mit ASP.NET und der WEB.Config zu gehen oder auch mit der app.config?! Da kenne ich mich gar nicht aus!
Aber habe jetzt immerhin schon mal das Passwort aus der app.config rausgekriegt und im Code gesetzt. Hatte echt ein Brett vor dem Kopf - ich hatte im Designer die Auswahl angeklickt, dass das Passwort mit im ConnectionString gespeichert wird - zu blöde.
Ist nicht sicher - weiss ich, aber man muss immerhin schonmal zu einem Tool greifen um es rauszufinden.
Erstmal danke an alle!
Hi,
nur noch zur Info: Du kannst die Sektionsverschlüsselung auch für die app.config "mißbrauchen", es muß nicht unbedingt eine WebApp sein.