daten verstecken durch PHP?

HCWD

Erfahrenes Mitglied
Servus Leute...

Nun muss ich wieder mal ne Frage von mir los werden, denn ich komm einfach nicht weiter.

Ich habe folgende Situation: Ich will SQL Daten in einem PHP Skript geheim halten, um mit diesen sich auf eine andere Datenbank (DB-Server nicht auf Localhost) zu verbinden. Jedoch dürfen diese Daten nicht verändert werden und schon gar nicht angesehen. Ausschließlich das PHP Skript darf damit arbeiten.

Gibt es eine Möglichkeit druch eine extra Datei (die nicht für den User mit irgendwelchen Programmen oder Methoden einsehbar ist) oder sonst eine Variante bestimmte Strings oder sogar Variablen zu verstecken?

Greetz
 
Wenn sich diese Daten innerhalb eines PHP-Codeblocks (<?php … ?>) befinden und der Webserver richtig konfiguriert ist, sodass PHP-Dateien durch den PHP-Interpreter geschickt werden, sind die Daten von außen nicht einsehbar. Denn alles innerhalb der PHP-Codeblöcke wird ausgewertet und nur die Ausgabe an den Client geschickt.
 
oder du lädst die daten mit den Passwörtern in ein Verzeichnis (ambesten sollte nichts anderes dort rein): dann erstellst du eine datei namens:.htaccess mit fürhendem "." (punkt) mit folgendem inhalt:
Code:
deny from all

dann kann man per http nicht mehr drauf zugreifen nur lokal oder per ftp...

aber die von meinem Vorgänger die variante is eiglt eh besser ;)
 
oder du lädst die daten mit den Passwörtern in ein Verzeichnis (ambesten sollte nichts anderes dort rein): dann erstellst du eine datei namens:.htaccess ...

und jedes Script welches die Anmeldedaten included wird nach der Anmeldung fragen .. suboptimal ;)

Ich glaube die Endung sollte auch vom Interpreter gefunden werden, also schön *.php verwenden dann ist das sicher - und wenn nicht, IMO: Gute Nacht INTERNET

Dirk
 
danke für die infos an euch beide, jedoch merke ich, dass ich meine frage nicht genau definiert hab, weil dies nicht die antwort auf meine frage ist.

ich wollte die information für den besitzer des webspaces (Webmaster, coder oder sonst wer) sperren. Gehen wir davon aus, diese daten sind zugangsdaten für einen server von einem unternehmen der lizenzen besitzt und nur das unternehmen darf diese lizenzen erstellen und löschen... niemand anderer. wenn es sein muss, soll ich nach dem erstellen dieser datei und nachdem ersten abspeichern auch keine einsicht haben, wenn dies sein muss.

fakt ist, diese zugangsdaten darf keiner, der das skript hat, oder es nur besucht einsicht haben. nur der ersteller des skriptes weiß was da drin steht.

hoffe mit dieser erklärung hab ich euch etwas mehr die sache erläutert
 
Das würde ich (schnell gedacht) so lösen, dass das Script (A) nicht direkt auf die fremde Datenbank zugreift, sondern auf ein anderes Script (B), welches dort liegt, wo die Datenbank ist. B liefert die Informationen an A zurück, welches diese dann verarbeitet. Im Script B kann man zur Sicherheit dann eine übermittelte Seriennummer/IP o.ä. kontrollieren.
 
jedoch entstehen antastbare schnittstellen beim skript B und somit stellt es doch eine sicherheitslücke dar. wollte dies genau vermeiden, jedoch danke für die idee. geht es nicht irgendwie anders?
 
und jedes Script welches die Anmeldedaten included wird nach der Anmeldung fragen .. suboptimal ;)

Nein, "deny from all" verhindert keine lokalen Zugriffe durch PHP (zumindest nicht bei mir).

Weiterhin halte dich bitte an die Netiquette #15 (Groß- und Kleinschreibung).

Wegen dem Problem...

Jemand soll sich einloggen können oder auf sonstirgendeine Art und Weise eine Datei erstellen mit Zugangsdaten. Danach soll NIEMAND anderes außer dem Unternehmen mehr auf die Datei zugreifen können bzw. den Inhalt sehen können.

So weit habe ich das verstanden... Was ich nicht verstehe:
fakt ist, diese zugangsdaten darf keiner, der das skript hat, oder es nur besucht einsicht haben. nur der ersteller des skriptes weiß was da drin steht.
Das passt irgendwie nicht zu dem anderen. Welches Skript? Ich dachte es geht um Zugangsdaten zu einem Server?
 
Nur mal so ne Idee:

Du hast Server A (Kundenserver) und Server B (dein Firmenserver) und du willst das Server A Informationen an Server B weiterleitet die zu 100% von Server A stammen?

Dann wuerde ich es so machen:

1. Server A sendet etwas an Server B
2. Server B ueberprueft die herkunft anhand der IP-Adresse + einer Checksumme MD5 SH1 etc. viellecht aus einem gewissen Algorythmus (md5(firmenname + heutiges datum)) diese Checksumme solltest du lokal ueberpruefen koennen.
3. Bei Uebereinstimmung der Checksumme ein Ok an Server A senden und die Daten in die DB aufnehmen. Bei fehlerhafter Uebereinstimmung Fehler (Code) an Server A senden und die Daten eventuell temporaer speichern. Fehler loggen etc...
 
@Felix Jacobi: Also. wenn ich eine php Datei (bsp: sql.php) im CMS skript drin habe, die eben diese Verbindungsdaten beinhaltet zu dem Server B, kann der Benutzer des Skriptes die Zugangsdaten sehen und eventuell weitere Lizenzen (die ja auf dem Server B eingetragen sind) hinzufügen. So etwas soll vermieden werden indem erst erstmal nicht herraus bekommt, wie die Zugangsdaten lauten.

@fingerskill: Problem liegt ja darin, dass bei der Verbindung muss der Server (in dem Falle das Skript CMS) ja die Verbindungsparameter parat haben, die ja geschützt werden sollen vor dem User, der eventuell dieses CMS erworben hat.
 
Zuletzt bearbeitet:
Zurück