php.de

Zurück   php.de > Webentwicklung > PHP-Fortgeschrittene

PHP-Fortgeschrittene Arbeiten mit PHP ohne Einschränkungen

Antwort
 
LinkBack Themen-Optionen Thema bewerten
Alt 20.10.2004, 16:12  
Gast
 
Beiträge: n/a
Standard Verzeichnisse schützen mit PHP

Hallo,

ich brüte gerade über folgendem Problem:

Ich möchte Verzeichnisse schützen, aber nicht mit diesem Browser Login-Fenster arbeiten. Also wenn jemand in einem bestimmten Verzeichnis auf dem Server etwas aufruft, soll er automatisch zu einem Login-Script weitergeleitet werden, dieses prüft, ob der Zugriff genehmigt ist (entweder indem es einen schon vorhandenen Cookie zeigt, oder zum Login auffordert) und anschliessend soll es dem Apache sagen, dass der Zugriff auf die Datei, oder das Script für diesen Benutzer in Ordnung geht. Gibt es da eine Möglichkeit?
Ich kann ja in der htaccess eintragen, dass von einem bestimmten Verzeichnis aus, zu dem Login-Script weitergeleitet wird, aber wie bekomme ich es hin, dass der Benutzer bei erfolgtem Login nicht mehr wieder zurückgeschickt wird. Oder kann man das anders machen?

Es soll darum gehen, dass ich bereits eine Benutzerumgebung habe und in diese PHP-Script einbinden will, die eigentlich keine Authentifizierung haben.
Die Scripte sollen dazu in einem bestimmten Verzeichnis liegen, welches dann halt durch ein PHP-Script für eingeloggte User freigegeben werden kann. Aber die User sollen den Pfad zum Script nicht herausbekommen ohne sich einzuloggen.

Ich hoffe, ihr wisst eine Lösung.

Gruß,

Marius
  Mit Zitat antworten
Sponsor Mitteilung
PHP Code Flüsterer

Registriert seit: 21.08.2005
Beiträge: 4682
PHP-Kenntnisse:
Fortgeschritten

Alt 20.10.2004, 17:24  
Gast
 
Beiträge: n/a
Standard

pack die Abfrage in eine Index.php und mach aus der alten index.php index2.php oder so - oder pack die Abfrage in die index.php rein. (je Verzeichnis oder Bereich, das/den Du schützen willst).

if (isch_okee)
header("location: /weider.php");
else // isch nedd okee
header("location: /login.php");
  Mit Zitat antworten
Alt 20.10.2004, 17:45  
Gast
 
Beiträge: n/a
Standard Re: Verzeichnisse schützen mit PHP

Zitat:
Zitat von MariusBo
Ich möchte Verzeichnisse schützen, aber nicht mit diesem Browser Login-Fenster arbeiten.
Dann hast Du schlechte Karten, weil Du mit PHP keine Verzeichnisse schützen kannst. PHP wird erst dann gefragt, wenn der Client keinen konkreten URL will und der Apache dem Client eine der Dateien im DirectoryIndex schickt.
  Mit Zitat antworten
Alt 20.10.2004, 18:07  
Gast
 
Beiträge: n/a
Standard Re: Verzeichnisse schützen mit PHP

Ich würde etwas anders vorgehen: in jedem Verzeichnis würde ich die index.php bereitstellen, die nichts anderes macht, als den kompletten Verzeichnis auszulesen und dem Besucher anzuzeigen. Die einzelnen Dateien wären nur über einen "fileloader" downloadbar der die Rechte bzw. Logindaten des Besuchers vor dem Ausgeben der Datei überprüft... ist (wie du schon angemerkt hast) eine Session aktiv (also in Form eines nicht abgelaufenes Cookies) so wird das file ausgegeben - sonst auf die Login-Maske verwiesen.. <--- eigentlich easy.. wo ist das Problem?
  Mit Zitat antworten
Alt 20.10.2004, 20:02  
Erfahrener Benutzer
 
Registriert seit: 18.07.2004
Beiträge: 2.162
PHP-Kenntnisse:
Fortgeschritten
Basti
Standard

@RealNexus:
Wenn du keine Datein in den Verzeichnissen liegen hat, dann brauchst du ja auch keine Verzeichnisse und dann ja auch keine x Symlinks auf dein PHP-Auth-Skript. Da würde ich die Rewrite-Engine des Apachen bemühen...

Basti
Basti ist offline   Mit Zitat antworten
Alt 20.10.2004, 22:48  
Gast
 
Beiträge: n/a
Standard Re: Verzeichnisse schützen mit PHP

Zitat:
Zitat von meikel
Zitat:
Zitat von MariusBo
Ich möchte Verzeichnisse schützen, aber nicht mit diesem Browser Login-Fenster arbeiten.
Dann hast Du schlechte Karten, weil Du mit PHP keine Verzeichnisse schützen kannst. PHP wird erst dann gefragt, wenn der Client keinen konkreten URL will und der Apache dem Client eine der Dateien im DirectoryIndex schickt.
Jain. Wenn die Dateien im Verzeichnis eine Session oder sonstige Variablenabfrage enthalten und bei nicht korrekt gesetzten Vars header() ausführen.

Ok, das ist kein Schutz an sich, aber mir scheint, das ist das "Hintertürchen", daß er sucht. Über Sinn und Unsinn kann man streiten - Jedem Sein Bier und mir meinen Whisky
  Mit Zitat antworten
Alt 21.10.2004, 09:11  
Gast
 
Beiträge: n/a
Standard

Hallo,

Erstmal danke für eure Antworten. Leider war keine Lösung für mein Problem dabei.

Wonach ich primär suche, ist eine Möglichkeit, dass der Apache merkt, es handelt sich um ein "geschütztes" Verzeichnis und dann die Anfrage an ein Login-Script übergibt.
Am liebsten wäre es mir, wenn ich damit die originale Passwort-Abfrage, die der Browser sonst übernimmt ersetzen könnte. Die Frage wäre in dem Fall also, kann ich die Logindaten für ein geschützten Verzeichnis schon beim Aufruf der URL mit übergeben? Dann könnte ich auf meiner HP den Link zum Login-Script setzen, welches erst später zum geschützten Verzeichnis weiterleitet, indem es diesem die gültigen Logindaten gleich mitteilt. Der User könnte sich dann später nicht mehr in das Verzeichnis einloggen, da nicht er, sondern das Script den Login vorgenommen hat.

Ein andere Möglichkeit, die ich auch schon ausprobiert habe, besteht darin, alle Zugriffe auf ein Verzeichnis an das Login-Script weiterzuleiten. Das geht mit der redirect-Directive in der htaccess ja ganz leicht. Problem ist nur, wie ich dem Apache mitteile, dass er den Zugriff nicht mehr umleiten soll, wenn als Referrer das Login-Script angegeben wird. Gibt es da vielleicht eine Möglichkeit?

Gruß,

Marius
  Mit Zitat antworten
Alt 21.10.2004, 10:22  
Gast
 
Beiträge: n/a
Standard

Zitat:
Zitat von MariusBo
Wonach ich primär suche, ist eine Möglichkeit, dass der Apache merkt, es handelt sich um ein "geschütztes" Verzeichnis und dann die Anfrage an ein Login-Script übergibt.
Genau das geht eben nicht. Entweder HTTP-Auth oder komplette Dateiverwaltung per PHP Script.
  Mit Zitat antworten
Alt 21.10.2004, 12:06  
Gast
 
Beiträge: n/a
Standard

marius, für Deinen Bedarf musst Du Robert T-Online anmieten, der per Gesichtskontrolle die Rechte zuweist.

Oder in der Tat die komplette Rechteverwaltung selbst in die Hand nehmen.

Z.Bsp., indem Du eine Datenbank mit User:Passwort:Gruppe anlegst und dann anhand der Gruppe mit if oder ähnlichem die Dateien schlicht nicht anzeigst.

Bringt aber nicht, wenn der absolute Pfad bekannt ist - es sei denn, jede Datei hat im ersten Teil eine solche Abfrage drin - das macht m.E. soviel Sinn wie Löcher in Wolken zu pusten.
  Mit Zitat antworten
Alt 22.10.2004, 14:17  
Erfahrener Benutzer
 
Registriert seit: 18.07.2004
Beiträge: 2.162
PHP-Kenntnisse:
Fortgeschritten
Basti
Standard

Hi.

> Am liebsten wäre es mir, wenn ich damit die originale Passwort-Abfrage, die der Browser sonst
> übernimmt ersetzen könnte. Die Frage wäre in dem Fall also, kann ich die Logindaten für ein
> geschützten Verzeichnis schon beim Aufruf der URL mit übergeben?

Natürlich.

http://userassword@example.comort/path

Allerdings bekommst du bei einem unerlaubten Zugriff so natürlich auch deinen 401 bzw. eben das Login-Popup.

Basti
Basti ist offline   Mit Zitat antworten
Antwort


Themen-Optionen
Thema bewerten
Thema bewerten:

Forumregeln
Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are an
Gehe zu

Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
[Erledigt] modRewrite für verzeichnisse atzemann Server, Hosting und Workstations 10 23.06.2008 07:36
Verzeichnisse + Dateien auf anderen Server kopieren NetLook PHP Tipps 2006 6 12.12.2006 11:57
is_dir erkennt Verzeichnisse nicht immer. Ein Bug? PHP Tipps 2006 2 16.05.2006 20:54
Hacks auf Verzeichnisse oder Dateien unterbinden/aufzeichnen inu PHP Tipps 2006 5 14.04.2006 18:07
[Erledigt] Verzeichnisse meiner Homepage über WebDAV sichern PHP-Fortgeschrittene 1 08.08.2005 12:11
alle Verzeichnisse sortiert auslesen PHP Tipps 2005-2 7 17.07.2005 10:20
hi, adressleiste verzeichnisse verstecken Beitragsarchiv 2 12.07.2005 13:52
Zugriff auf Verzeichnisse verbieten HTML, Usability und Barrierefreiheit 2 27.03.2005 13:17
ModeRewrite-Problem (Zeigt keine Verzeichnisse mehr an) PHP Tipps 2005 2 28.02.2005 21:58
Verzeichnisse auslesen und nach alphabet sortieren neodrei PHP Tipps 2005 4 25.02.2005 13:18
Verzeichnisse und Unterverzeichnisse auslesen PHP Tipps 2004-2 11 22.11.2004 14:26
Dynamische Verzeichnisse / Virtuelle Verzeichnisse PHP-Fortgeschrittene 1 30.10.2004 14:38
Verzeichnisse auslesen picco PHP Tipps 2004 4 27.10.2004 17:58
Verzeichnisse löschen PHP Tipps 2004 11 04.07.2004 23:21
[Erledigt] Verzeichnisse HTML, Usability und Barrierefreiheit 2 19.06.2004 14:16

Besucher kamen über folgende Suchanfragen bei Google auf diese Seite
verzeichnisse mit php session schützen, http://www.php.de/php-fortgeschrittene/10863-verzeichnisse-schuetzen-mit-php.html, php verzeichnis schützen, t-online verzeichnis schützen, verzeichnis schützen t-online, webverzeichnis schützen, php session verzeichnis schützen, htaccess ordnerzugriffsrecht, php verzeichnis login, per php benutzerdaten an geschützes verzeichnis übergeben, verzeichnis mit php schützen, verzeichnisse schützen t-online, verzeichnisse schützen session, php login script ordner zugriff, verzeichnis von verzeichnissen, php geschütztes verzeichnis, verzeichnisse mit login schützen, verzeichnis schützen mit php, verzeichnis schützen bei t-online, t-online verzeichnis schutz

Alle Zeitangaben in WEZ +2. Es ist jetzt 19:16 Uhr.




Powered by vBulletin® Version 3.7.2 (Deutsch)
Copyright ©2000 - 2012, Jelsoft Enterprises Ltd.
Search Engine Optimization by vBSEO 3.2.0
Aprilia-Forum, Aquaristik-Forum, Liebeskummer-Forum, Zierfisch-Forum, Geizkragen-Forum

Creative Commons License
Dieser Inhalt ist unter einer Creative Commons-Lizenz lizenziert.