Password zu DB ind Net application schützen

Hallo

Ich habe ein Programm in .net geschrieben.
Dort wird für den zugriff auf eine DB ein Password verwendet.
Ich habe dazu eine frage wie kann ich das password so schwierig wie möglich verstecken,
dass man es nicht gleich mit einen Net Reflector auslesen kann
(dort sieht man den code ja fast 1:1).Ich habe da ja keine peilung.

p.s. ich kann das password nicht änder ,es ist fix vergeben.
und es reicht wenn gelegenheits programmierer abgewürgt werdn.
Ich brauche keine High end lösung, denn das ist mein Prog auch nicht. ;-)

Danke euch in voraus.
 
Evtl. aus einer Datei auslesen (die natürlich nicht dem Programm beiliegt, sondern der entsprechende Benutzer selbst erstellt / editiert).
Falls das Programm ständig rennt, beim Start des Programms einmal nach dem Passwort fragen, das bleibt dann nur im RAM liegen.
Beides lässt sich noch nach belieben mit einer Verschlüsselung kombinieren.
 
ein problem ist ja, das das Program freeware ist,aber nur der Datenbankzugriff
muss geschützt sein ,also ich muss eventuelle dateien immer mitgeben.
 
Hallo,
direkt auf die DB zuzugreifen, bei Programmen die bei nicht vertrauenswürdigen Clients liegen, ist keine gute Idee.
Stattdessen sollte man lieber irgendeine Middle Ware Lösung nutzen, z.B. mit WebServices o.ä.

Ansonsten schau mal hier:
[FAQ] DB-Password/Kennwort/Connection-String sicher speichern

Edit:
Original von gerry
ein problem ist ja, das das Program freeware ist,aber nur der Datenbankzugriff
muss geschützt sein ,also ich muss eventuelle dateien immer mitgeben.

Gerade dann sollte man eine Middle Ware einsetzen... Irgendwelche User auf die DB direkt zugreifen zu lassen ist keine gute Idee. Dafür ist eine DB nicht gedacht.
 
Das beim C# forum geht auch nicht ganz,

Die DB ist fix und gefüllt und ich kann sie nicht verändern,benutzer erstellen usw.
Webserver für so etwas erstellen will und kann ich auch nicht.
allso muss ich dieses Password irgentwie in den source code hineinschreiben.
Das ist eine scheiss zwickmühle
 
Original von gerry
ein problem ist ja, das das Program freeware ist,aber nur der Datenbankzugriff
muss geschützt sein ,also ich muss eventuelle dateien immer mitgeben.
Das macht jetzt überhaupt keinen Sinn mehr. "Freeware", aber nur für einen Benutzer zugeschnitten, ja? (Sein DB-Passwort kann ja jeder selbst wählen.. sprich, sowas hardcoden macht überhaupt keinen Sinn.)
Ansonsten, was spricht denn dagegen, die Datei mitzuliefern, und der, der das Programm benutzt, muss halt einmal sein Passwort reinschreiben?
Oder das Programm fragt, falls kein Passwort in der Datei steht, selbstständig nach und schreibt es dann in die Datei?
 
um alles zu beschreiben.

Mein Programm greift auf eine DB von einen Programm zu,
der Autor erlaubt aber nicht jeden den zugriff auf seine Db.
Deshalb muss ich für mein freeware plugin sein password so gut wie möglich schützen.
Das dann nicht jeder dahergelaufene Programmieranfänger die ganze db leicht auslesen kann.


Hatt einer ein Idea
 
Und worin besteht der Vorteil zur Authentifizierung per Passwort? Dann liest der "Angreifer" den Hash aus statt dem PW und loggt sich dann ebend damit ein.
 
es ist sinnlos, das pw innerhalb der app zu verschleiern. niemand wird sich die arbeit machen in den reverseten code zu schaun, wenn die interessanten daten eh übers netz gehen.
 
Außer, diese gehen verschlüsselt (SSL, VPN, such dir was aus) übers Netz. Außerdem, Mithören und selbst die DB durchstöbern sind 2 paar Schuhe.
 
Original von t3rr0r.bYt3
Außer, diese gehen verschlüsselt (SSL, VPN, such dir was aus) übers Netz. Außerdem, Mithören und selbst die DB durchstöbern sind 2 paar Schuhe.

Kriegt man bei lokalen Zugriff, nicht die ssl auch meist aufgebort, indem man die z.B. die wincrypt-API hookt und dort den plaintext abliest? Das würd ich zumindest versuchen, bevor ich mir die mühe mache irgendwie den code zu reengineern. und die db-authentication wär ja dort zwangsläufig irgendwo dabei. Erst wenn's dagegen sicher ist, macht's überhaupt sinn drüber nachzudenken den code zu verschleiern.
 
Zurück
Oben