Einzelnen Beitrag anzeigen

Benutzerbild von Matze
Matze
(Co-Admin)

Registriert seit: 7. Jul 2003
Ort: Schwabenländle
14.929 Beiträge
 
Turbo Delphi für Win32
 
#5

Re: mit PHP Script aus Programm herraus auf Mysql Datenbank

  Alt 21. Jan 2008, 11:03
Moin

Zitat von generic:
wenn du die logindaten in ein script tust, kann jeder mit dem script sql befehle ausführen.
Wenn das Skript die SQL-Befehle ausführt und die Datenbank-Zugangsdaten direkt im PHP-Skript stehen, dann lassen sich nur die Befehle ausführen, die von Skript ausgeführt werden sollen (fest einprogrammiert).
Andere SQL-Anweisungen lassen sich nicht einschleusen (mal abgesehen von SQL-Injections aufgrund schlechter Programmierung) und die Zugangsdaten der Datenbank können nicht ausgelesen werden. Daher ist ein PHP-Skript, das die DB-Zugangsdaten enthält, meiner Meinung nach das sinnvollste, da die Zugangsdaten zur Datenbank wirklich geschützt sind und das ist mit das wichtigste.

Zitat von generic:
wenn du die logindaten im programmläst kann zwar jeder user sich die daten raussuchen, aber er kann dann nur das was du per datenbank berechtigung erlaubst.
Sind die DB-Zugangsdaten im Programm enthalten, lassen sich diese mit diversen Tools auslesen. Somit ist es möglich, eine Verbindung zur Datenbank aufzubauen (PhpMyAdmin, externe SQL-Clients), was fatal wäre, da man dann alles mit der Datenbank machen könnte, was möglich ist.

Zitat von generic:
egal ist aber wo du das login speicherst, fakt bleibt, der user deines programmes wird sql befehle ausführen können.
Genau das soll der Benutzer doch veranlassen können. Solange sich die SQL-Abfragen nicht manioulieren lassen ist alles in Ordnung.

Man könnte einem Skript die Daten (Benutzername des Users und den zugehörigen Passworthash, bsp. MD5-verschlüsselt) dem PHP.Skript übergeben, das prüft dann, ob die Daten in der Datenbank vorhanden sind (Parameter escapen, damit keine SQL-Injections möglich sind), falls nicht, trägt es diese ein. Ein anderes Skript oder das gleiche über einen Parameter gesteuert sorgt für die Authentifizierung. Auch dabei werden Benutzername und Passworthash übergeben, das Skript prüft, ob die Daten korrekt sind und gibt 0 bzw. 1 oder ähnliches zurück, das vom Programm ausgewertet werden kann.

Ich sehe darin keine Probleme/Sicherheitslücken und schwer umzusetzen ist das ebenfalls nicht.
Es kann natürlich auch sein, dass ich das Vorhaben von Mushroomfreak07 falsch verstanden habe bzw. deine Stellungnahme, Bernd.

Grüße, Matze
  Mit Zitat antworten Zitat