2016-05-24 5 views
0

Ich habe PHP-Skript, das einige JSON-Daten in die Datei mySecretData.json schreibt. Dieses Skript wird periodisch alle 10 Minuten über CRON ausgeführt. Ich greife auf diese JSON-Datei über AJAX sowohl von meiner Website als auch von der Windows 10 App aus zu. In Zukunft werde ich vielleicht den Inhalt meiner geheimen Datei verkaufen. Wie kann ich diese Datei schützen, um ohne meine Erlaubnis gelesen zu werden?Sichere JSON-Datei, die ohne Erlaubnis gelesen werden kann

In diesem Moment kann jeder den Quellcode meiner Website erkunden, um die URL zu erhalten, von der die Website die geheimen Daten liest. Der Versuch, diesen Inhalt zu verkaufen, wäre ziemlich nutzlos. Meine JSON-Datei enthält nur wenige Datenzeilen, daher möchte ich keine Datenbank verwenden.

Wie kann ich meine Datei (en) sichern? Vielen Dank!

+1

Legen Sie die Datei erarbeiten ** die Webroot. Lies es mit php, wenn eine Bedingung erfüllt ist – Steve

Antwort

0

Sie sollten es von Ihrem Webordner entfernen und ein Skript haben, das es z. B. nach dem Überprüfen einiger Anmeldeinformationen für eine Datenbank streamt.

Sie könnten einige IP-Überprüfung hinzufügen gleichen Anmeldeinformationen zu verhindern, dass von mehreren Personen verwendet wird

0

auf meinem Kommentar

** außerhalb
file structure 
/
/secret 
    /secret.json 
/public_html //<--webroot 
    /getJson.php 


//getJson.php 
//complicated auth logic goes here 
if(isset($_GET['authtoken'] && $_GET['authtoken']=='im_ok_guv_honest'){ 
    header('Content-Type: application/json'); 
    readfile('../secret/secret.json'); 
    die(); 
} 
die('not authorized'); 
+0

Aber auf diese Weise könnte jeder dieses PHP-Skript sehen und meine Zugangsdaten lesen oder einfach dieses PHP-Skript aufrufen, um meine geheimen Daten abzurufen. Oder fehlt mir etwas? –

+0

Niemand kann die PHP-Quelle anzeigen, das ist auf dem Server. Sie müssten das Skript mit den korrekten Zugangsdaten aufrufen (in diesem Fall 'getJson.php? Authtoken = im_ok_guv_honest'). Offensichtlich wäre Ihre tatsächliche Auth-Logik komplizierter, aber das geht über den Rahmen der Frage hinaus. – Steve

+0

Aber wenn jemand die JS-Skript-Datei meiner Website mit AJAX-Anfrage liest, die Targeting auf /getJson.php setzt, dann weiß er, wo die getJson.php-Datei ist und er könnte sie herunterladen und lesen wie alles andere im Internet. Entschuldige meine Dummheit - ich bin serverseitig ein PHP-Neuling. –

Verwandte Themen