Passwort für z.B. SQL-Datenbankzugriff in *.config sichern?

Sockets, TCP/IP, (XML-)RPC und ähnliche Themen gehören in dieses Forum
Antworten
Dookie
Python-Forum Veteran
Beiträge: 2010
Registriert: Freitag 11. Oktober 2002, 18:00
Wohnort: Salzburg
Kontaktdaten:

Hallo,

jetzt hab ich doch auch mal eine Frage. Ich schreibe gerade an einem Programm, das auch mit SQL-Zugriffen auf eine Datenbank arbeitet. Jetzt muss der Anwender natürlich seine Zugangsdaten zur Datenbank angeben, damit das Programm auf die Daten zugreiffen kann.
Ich würde gerne die Daten in einer *.conf Datei sichern, aber das Passwort natürlich nicht im Klartext. Eine md5-Verschlüsselung scheidet aus, da ich daraus ja den Schlüssel nicht mehr extrahieren kann. Und eine einfache Verschlüsselung in Python scheidet ebenfalls aus, da das ja in nullkommanix geknackt ist.
Hat irgendwer ne Idee?


Gruß

Dookie
piddon
Gründer
Beiträge: 410
Registriert: Dienstag 30. Juli 2002, 18:03
Wohnort: Oestrich-Winkel
Kontaktdaten:

Warum scheidet MD5 aus?

Passwort verschlüsseln und in die Conf Datei.

Bei eingabe von Passwort, diese Eingabe verschlüsseln, und mit dem Schlüssel in Conf datei vergleichen. Wenn die gleich sind -> Passwort ok.

So macht es auch MySql oder andere Systeme.

Natürlich kann man die Verschlüsselung nicht umkehren, muss man auch nicht. ODer scheitert MD5 an etwas anderem?
irc: #python.de @ irc.freenode.net | [url=http://pythonwiki.pocoo.org]python-wiki[/url] | [url=http://www.pythonwiki.de/PythonDeForum/Faq]python-forum FAQ[/url]
Dookie
Python-Forum Veteran
Beiträge: 2010
Registriert: Freitag 11. Oktober 2002, 18:00
Wohnort: Salzburg
Kontaktdaten:

Also mir gehts um die Bequemlichkeit, so wie z.B. im Galeon/Mozilla, da kann ich ja die Daten fürs Einloggen z.B. hier im Forum von dessen Passwortmanager sichern lassen und brauche sie nicht immer wiede neu eingeben.
Ich werds wohl so machen, daß ich die Login-Daten in einer Extradatei sichere, auf die nur der jeweilige User zugriffsrechte hat.

Gruß

Dookie
hans
User
Beiträge: 728
Registriert: Sonntag 22. September 2002, 08:32
Wohnort: Sauerland
Kontaktdaten:

Hi Dookie,

was meinst du mit Netzwerk?

Wo willst du die Anwendung eigentlich laufen lassen, auf dem Server oder auf dem Client (Lokaler Rechner)?

Lokales Netzwerk: Was besseres wie das Homeverzeichnis fällt mir auf Anhieb auch nicht ein. Allerdings sollten diese Daten nicht auf einem lokalen Rechner gespeichert werden.

Internet: Die Daten müßten auf jeden Fall lokal im Homeverzeichnis gespeichert werden. Manche Systeme reagieren allerdings etwas allergisch auf Zugriff von extern. Da diese Zugriffe aber in der Regel per Browser erfolgen, kann der User ja einen entsprechenden Browser verwenden womit dieser Punkt dann erledigt wäre.

Hans
Dookie
Python-Forum Veteran
Beiträge: 2010
Registriert: Freitag 11. Oktober 2002, 18:00
Wohnort: Salzburg
Kontaktdaten:

Hi Hans,

wer spricht von nem Netzwerk? Ich habe auf meiner Maschine local einen MySQL-Server laufen. Wobei das ja eigentlich wurscht ist, wo der Server läuft. Und jetzt soll eine Anwendung auf eine Datenbank des MySQL-Servers zugreifen. Dabei ists auch wieder wurscht ob das über localhost oder sonst eine IP geschieht. Mir gings nur darum, daß der Anwender bei der Installation oder beim ersten Starten der Anwendung Seine Zugangsdaten eingeben kann und diese dann für spätere Starts gespeichert werden.

Ich mach jetzt eine Datei ~/.anwendung/userdata und setze die zugriffsrechte auf 000. Nur beim Lesen und Schreiben werden die rechte vorübergehend auf 400 bzw 600 gesetzt.

Gruß

Dookie

PS: Warum dieset Thread jetzt im Netzwerkforum steckt is mir ned ganz klar. Ist ja nichts Netzwerkspezifisches, nur weil das MySQL-Dings Server genannt wird.
Milan
User
Beiträge: 1078
Registriert: Mittwoch 16. Oktober 2002, 20:52

sorry, das war ich mit dem verschieben. Hab gedacht, das ganze läuft jetzt doch noch auf Serverarbeit raus und habs deswegen verschoben... :roll:
Dookie
Python-Forum Veteran
Beiträge: 2010
Registriert: Freitag 11. Oktober 2002, 18:00
Wohnort: Salzburg
Kontaktdaten:

Is ja nicht so schlimm und bei der verwirrenden Verwendungsweise des Begriffs Server kann mann schon mal durcheinandergeraten.

Dookie
Antworten