2017-05-31 6 views
0

Hallo allerseits,Wie url Dateinamen mit Zufallszahl neu zu schreiben .htaccess mit

ich ein E-Finance-System entwickle, die die finanziellen Aktivitäten der gesamten Organisation Griffen i unter arbeitete. Bei der Entwicklung eines solchen Systems sollten viele Sicherheitsmaßnahmen implementiert werden. Daher versuche ich .htaccess zu verwenden, um meine Dateinamen, Dateierweiterungen, usw. zu sichern.

Für die Dateierweiterung habe ich diesen Ausdruck ausprobiert und für mich gearbeitet.

<IfModule mod_rewrite.c> 
RewriteEngine On 
RewriteCond %{REQUEST_FILENAME} !-f 
RewriteRule ^([^\.]+)$ $1.php [NC,L] 
</IfModule> 

ich fragen, ob es eine Möglichkeit ist, um die Dateinamen zu Zufall Zahlen ändern Sie die Dateinamen und halten Sie die Nummer als eine temporäre Sitzung darzustellen, die Veränderung sein wird, wenn der Browser geschlossen wird, und erstellen Sie eine neu, wenn es wieder geöffnet wird.

Ich habe nichts versucht, also suche nach einem Anhaltspunkt, um damit fortzufahren.

+1

tun Warum mit HTTPS nicht nur sichern, das System als Ganzes eine Rolle Access Control-basiertes System und Zugriffsadresse IP-Einschränkungen? Was Sie versuchen, wird den Zugriff auf die * tatsächliche * Datei nicht durch direkte URL verhindern, sollte jemand es wissen/erraten. – CD001

+1

klingt wie Sicherheit durch Dunkelheit. * Verlass dich nicht darauf! (https://stackoverflow.com/questions/533965/why-is-security-through-obscurity-a-bad-idea) zu Ihrer Frage: Ich denke nicht, dass die mod_rewrite Sitzungen behandeln kann. Wenn Sie jedoch eine Anfrage an Ihre Site an ein PHP-Skript weiterleiten, kann das PHP-Skript die Sitzung lesen und bestimmen, welche Aktion mit der Anfrage beabsichtigt war. – Fabian

+0

Versuchen Sie, URLs zu implementieren, die nur für die Sitzung gültig sind (effektiv single use)? Sind die Benutzer bereits authentifiziert? – MrWhite

Antwort

0

Sie könnten eine filegetter.php Datei machen, die ein verschlüsseltes Dateinamen basierend auf zum Beispiel Session-ID, IP, Zeit ... und macht einen PHP-Namen include_once mit der entschlüsselten Datei empfängt.

Für die .htaccess können Sie diese

RewriteRule ^(\w+)(.php)$ filegetter.php?filekey=$1 [L] 
Verwandte Themen