php.de

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

PHP-Fortgeschrittene Arbeiten mit PHP ohne Einschränkungen

Antwort
 
LinkBack Themen-Optionen Bewertung: Bewertung: 1 Stimmen, 5,00 durchschnittlich.
Alt 22.08.2008, 20:00  
Neuer Benutzer
 
Registriert seit: 22.08.2008
Beiträge: 10
PiqueNique befindet sich auf einem aufstrebenden Ast
Standard Session-Login und Verzeichnisschutz

Hallo zusammen,

ich bin Hobby-PHPler und verzweifle bei folgender Problemstellung:

Ich habe ein Sessionbasiertes Login-System erstellt. Es gibt nun einen sogenannten "Internen Bereich" und einen "Öffentlichen Bereich".
Das Funktioniert mit Texten und Datenbankausgaben (MYSQL) auch alles bestens. Allerdings sollen im "Internen Bereich" auch Bilder bzw. Dateien für eingeloggte User zur Verfügung gestellt werden.
Ist aber ein Benutzer so "Clever" und kopiert sich die Adresse der internen Datei heraus, kann er auch ohne einen Login eine eigentlich nur für interne Zwecke zu verwendende Datei einsehen bzw. diese Adresse an unregistrierte Benutzer weitergeben. Ein Aufruf der Datei wäre somit für jeden möglich!
Wie lässt sich das Problem beheben?
Ich dachte da an eine Möglichkeit, dass in einem internen Ordner mit internen Dateien ein Script abgelegt wird, welches automatisch aufgerufen wird, sobald irgendeine Datei in diesem Ordner aufgerufen wird und den Login-Status checkt.
Wär' echt super, wenn ihr mir weiterhelfen könntet ich steh' echt irgendwie aufm Schlauch...

Vielen Dank schonmal vorab...

Grüße

PiqueNique
PiqueNique ist offline   Mit Zitat antworten
Sponsor Mitteilung
PHP Code Flüsterer

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

Alt 22.08.2008, 20:15  
Erfahrener Benutzer
 
Registriert seit: 07.06.2008
Beiträge: 993
PHP-Kenntnisse:
Fortgeschritten
Frank befindet sich auf einem aufstrebenden Ast
Frank eine Nachricht über ICQ schicken Frank eine Nachricht über MSN schicken Frank eine Nachricht über Yahoo! schicken
Standard

Ich würde das so lösen:

Die Bilder kommen in ein Verzeichnis. Dieses Verzeichnis und deren Inhalt bekommen per chmod nur soweit rechte, dass der Benutzer auf dem PHP läuft die Daten lesen kann, alle anderen Rechte werden abgeschaltet.
Somit bekommt man bei einem normalen aufruf der Bilder schoneinmal ein 403 Error (Forbidden).

Dann würde ich ein PHP Script schreiben, welches am Anfang die Session prüft (ob eingeloggt), und wenn ja, dann das Bild einlesen (read) den header des php scriptes von text/plain auf image/jpeg ändern (oder welcher typ das Bild ist) und das bild mit echo ausgeben.

Das PHP Script arbeitet somit als Bild.
In deinem HTML kannst du nun schreiben
Code:
<img src="bild.php?bild=dasbild.jpg" />
Im Falle, dass der Benutzer eingeloggt ist (bild.php überprüft ja die Session) wird das Bild vom bild.php-Script gelesen und ausgegeben (Somit sichtbar).
Kopiert nun ein schlauer den Pfad bild.php?bild=dasbild.jpg und ruft ihn auf, merkt das PHP Script anhand der Session-Prüfung, das man nicht eingeloggt ist und gibt einen Fehler, ein Fehler-Bild oder gar nichts aus (leere Seite), oder ganz fies, leitet auf ein 403 um.
__________________
Frank ist offline   Mit Zitat antworten
Alt 22.08.2008, 20:47  
Supermoderator HD
 
Benutzerbild von Manko10
 
Registriert seit: 16.03.2008
Beiträge: 8.425
PHP-Kenntnisse:
Fortgeschritten
Manko10 hat eine strahlende ZukunftManko10 hat eine strahlende ZukunftManko10 hat eine strahlende ZukunftManko10 hat eine strahlende ZukunftManko10 hat eine strahlende ZukunftManko10 hat eine strahlende ZukunftManko10 hat eine strahlende ZukunftManko10 hat eine strahlende ZukunftManko10 hat eine strahlende ZukunftManko10 hat eine strahlende ZukunftManko10 hat eine strahlende Zukunft
Standard

Zitat:
Zitat von Frank Beitrag anzeigen
Ich würde das so lösen:

Die Bilder kommen in ein Verzeichnis. Dieses Verzeichnis und deren Inhalt bekommen per chmod nur soweit rechte, dass der Benutzer auf dem PHP läuft die Daten lesen kann, alle anderen Rechte werden abgeschaltet.
Somit bekommt man bei einem normalen aufruf der Bilder schoneinmal ein 403 Error (Forbidden).
Das funktioniert meistens aber leider nicht. Ich würde daher eher eine .htaccess-Datei mit dem Inhalt
Code:
Deny from all
in das Verzeichnis legen.

Den Bild-URL kann man durch einen Rewrite übrigens noch verschönern.
__________________
Refining Linux Advent Calendar series “24 Outstanding ZSH Gems
Manko10 ist offline   Mit Zitat antworten
Alt 22.08.2008, 20:54  
Neuer Benutzer
 
Registriert seit: 22.08.2008
Beiträge: 10
PiqueNique befindet sich auf einem aufstrebenden Ast
Standard

Wow, vielen Dank für die schnelle Antwort...
sorry, dass ich mich ein bissl dümmer anstelle als gedacht.
Könntest Du mir Deine zügigen Gedankengänge netterweise etwas ausführlicher beschreiben?
Irgendwie weiß ich nicht so recht, wie ich da dann ansetzen soll.
Der User ist localhost, das Verzeichnis hab ich auf 400 Besitzer - Lesen gesetzt....

Danke nochmal für Deine Bemühungen...
PiqueNique ist offline   Mit Zitat antworten
Alt 22.08.2008, 21:28  
Neuer Benutzer
 
Registriert seit: 22.08.2008
Beiträge: 10
PiqueNique befindet sich auf einem aufstrebenden Ast
Standard

Sorry, jetzt war ich wohl etwas zu voreilig, bevor ich die zweite Antwort gelesen hab!

Also, das mit dem Deny from all hab ich so eingerichtet.

Wie kann ich das Bild jetzt trotzdem anzeigen lassen??

Vielen Dank nochmal!!!
PiqueNique ist offline   Mit Zitat antworten
Alt 22.08.2008, 21:40  
Supermoderator HD
 
Benutzerbild von Manko10
 
Registriert seit: 16.03.2008
Beiträge: 8.425
PHP-Kenntnisse:
Fortgeschritten
Manko10 hat eine strahlende ZukunftManko10 hat eine strahlende ZukunftManko10 hat eine strahlende ZukunftManko10 hat eine strahlende ZukunftManko10 hat eine strahlende ZukunftManko10 hat eine strahlende ZukunftManko10 hat eine strahlende ZukunftManko10 hat eine strahlende ZukunftManko10 hat eine strahlende ZukunftManko10 hat eine strahlende ZukunftManko10 hat eine strahlende Zukunft
Standard

Mit PHP einlesen und ausgeben (readfile()).
__________________
Refining Linux Advent Calendar series “24 Outstanding ZSH Gems
Manko10 ist offline   Mit Zitat antworten
Alt 22.08.2008, 22:37  
Neuer Benutzer
 
Registriert seit: 22.08.2008
Beiträge: 10
PiqueNique befindet sich auf einem aufstrebenden Ast
Standard

VIELEN VIELEN HERZLICHEN DANK!!!

Und schon funktioniert der Spaß!!!

Freundliche Grüße und fröhliches weiterprogrammieren... habt mir sehr geholfen!

PiqueNique
PiqueNique ist offline   Mit Zitat antworten
Alt 22.08.2008, 23:06  
Erfahrener Benutzer
 
Benutzerbild von phpdummi
 
Registriert seit: 06.06.2008
Beiträge: 1.631
PHP-Kenntnisse:
Anfänger
phpdummi ist zur Zeit noch ein unbeschriebenes Blatt
Standard

Immer wieder schön wenn sich Leute hier bedanken
__________________
"Nobody is as smart as everybody" - Kevin Kelly
— The best things in life aren't things
phpdummi ist offline   Mit Zitat antworten
Alt 22.08.2008, 23:51  
Neuer Benutzer
 
Registriert seit: 22.08.2008
Beiträge: 10
PiqueNique befindet sich auf einem aufstrebenden Ast
Standard

Freundliche Unterstützung soll schließlich zumindest ein Dankeschön geben....
PiqueNique ist offline   Mit Zitat antworten
Alt 09.09.2008, 09:46  
Erfahrener Benutzer
 
Benutzerbild von DER_Brain
 
Registriert seit: 18.04.2005
Beiträge: 1.541
PHP-Kenntnisse:
Fortgeschritten
DER_Brain ist zur Zeit noch ein unbeschriebenes Blatt
Standard

Zitat:
Zitat von PiqueNique Beitrag anzeigen
Freundliche Unterstützung soll schließlich zumindest ein Dankeschön geben....
so ist es..

Könntest du eventuell noch Ausschnitte von deinem Code posten? Vielleicht hilfts ja jemandem, der ein ähnliches Problem hat..?


lg
Andi
DER_Brain 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
Login session aufzeichnen Black-Devil PHP Tipps 2008 7 03.03.2008 18:12
Login per Session oder htaccess? FI-DD PHP Tipps 2008 9 31.01.2008 21:19
Login, Session und der ganze Rest nikosch PHP Tipps 2007 10 25.03.2007 05:48
Session Logout Login Navigation TailerD PHP Tipps 2006 10 24.06.2006 17:12
phpBB Loginscript in eigenes Login Script einbinden 2wuck PHP Tipps 2007 4 19.12.2005 23:10
[Erledigt] Benutzername nach Login noch benötigt- Cookie oder Session? PHP Tipps 2005-2 1 30.10.2005 09:20
login + session PHP Tipps 2005-2 23 30.08.2005 21:29
Session Login LA-Finest PHP Tipps 2005-2 4 05.07.2005 10:46
login mit session id PHP Tipps 2005 10 26.01.2005 12:32
session start nur bei jedem 2. login PHP Tipps 2004-2 9 16.12.2004 13:39
Session Problem beim Login PHP Tipps 2004-2 6 15.12.2004 09:37
login mit session geht ne PHP Tipps 2004-2 4 08.12.2004 15:48
Login / Session / Benutzerdaten SvenLittkowski PHP Tipps 2004 4 06.09.2004 17:08
Session Login funkt nicht, wenn Cookies immer aus sind schifti PHP-Fortgeschrittene 18 06.09.2004 07:48
[Erledigt] Session Login funktioniert nicht PHP-Fortgeschrittene 1 19.07.2004 17:23

Besucher kamen über folgende Suchanfragen bei Google auf diese Seite
php login verzeichnisschutz, php login mit verzeichnisschutz, werden bilder bei login mit session auch geschützt, php login und verzeichnisschutz, htaccess verzeichnisschutz session, verzeichnisschutz mit session, http://www.php.de/php-fortgeschrittene/46898-session-login-und-verzeichnisschutz.html, php session verzeichnisschutz, login verzeichnisschutz, verzeichnisschutz für bilder chmod, verzeichnisschutz login php, php session rechte login, website schutz (und log-in bereich) mit sessions, verzeichnisschutz login, verzeichnis schutz per session, php session rechte, verzeichnisschutz session, eigenes php-session verzeichnis, verzeichnisschutz mit php session, verzeichnisschutz forbidden

Alle Zeitangaben in WEZ +1. Es ist jetzt 16:34 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