Portal > Foren > PHP > PHP-Programmierung > "Sicherheitssystem" self-made
Antwort
 
Themen-Optionen
Alt 31.10.2006, 21:28 Nach oben    #1
Oliver O.
 
Benutzerbild von Xean
 
Registriert seit: 17.08.2005
Beiträge: 426
Standard "Sicherheitssystem" self-made

Hi,
Ich würde gerne wissen, ob es möglich ist, herrauszufinden, auf welche datei ein User zugreift, und ob man dies mit einem PHP-Programm dies zulassen oder untertrücken kann.

Mein Problem ist, dass mein Server das nicht automatisch kann, aber ich möchte, dass ich, wenn ich es brauche auf alle dateien zugreifen kann.

Hat jemand von euch eine Idee?

Danke schon ein mal
Xean
Xean ist offline  
Add Post to del.icio.usBookmark Post in TechnoratiDiesen Beitrag zu Mister Wong hinzufügen!
Mit Zitat antworten
Alt 31.10.2006, 21:39 Nach oben    #2
Benutzer
 
Registriert seit: 24.10.2006
Beiträge: 90
Standard

Sofern die User keinen Benutzeraccount auf deinem Webserver haben, kann man die Dateien natürlich mit PHP "schützen".

Es gibt da zum einen die Möglichkeit, dass alle Dateien in einem privaten Verzeichnis abgelegt werden d.h. man kann von außen nicht auf die Dateien zugreifen. Deshalb müsste dein PHP Script diese auslesen und dann zum Download anbieten.

Du kannst die Dateien aber auch in einem öffentlichen Verzeichnis ablegen und diese vom Webserver schützen lassen (z.B. bei Apache mit einem Eintrag in eine .htaccess oder httpd.conf).

Um zu wissen wer auf welche Datei zugreift, musst du halt sobald der User eine Datei anfordert was in eine Datenbank, Textdatei oder ähnliches schreiben.

Hat das deine Frage beantwortet oder brauchst du konkrete Infos zur Implementierung?

MfG Byrel

Geändert von Byrel (31.10.2006 um 21:42 Uhr).
Byrel ist offline  
Add Post to del.icio.usBookmark Post in TechnoratiDiesen Beitrag zu Mister Wong hinzufügen!
Mit Zitat antworten
Alt 31.10.2006, 21:51 Nach oben    #3
Oliver O.
 
Benutzerbild von Xean
 
Registriert seit: 17.08.2005
Beiträge: 426
Standard

Es ist ein schritt in die richtige richtung, aber "konkretere Infos" wären echt gut
Xean ist offline  
Add Post to del.icio.usBookmark Post in TechnoratiDiesen Beitrag zu Mister Wong hinzufügen!
Mit Zitat antworten
Alt 31.10.2006, 22:10 Nach oben    #4
Benjamin Steininger
 
Benutzerbild von robo47
 
Registriert seit: 02.06.2005
Ort: weiher im tiefsten Odenwald
Beiträge: 1.180
Standard

sowas wie z.b. hier nur erweitert:
http://us2.php.net/manual/en/function.fread.php#27016

das teil kann z.b. den downloadspeed noch drosseln, das kombiniert mit einem ordner wo die ganzen files drinliegen und ner .htaccess drin mit:

Code:
DENY FROM ALL
damit man anders nicht drankommt.

und dann musst du dir überlegen wie du den rest machst, in der datenbank usergruppen und die dateien anlegen und dann jeweils zuweisen wer was runterladen darf.

mfg
robo47
robo47 ist offline  
Add Post to del.icio.usBookmark Post in TechnoratiDiesen Beitrag zu Mister Wong hinzufügen!
Mit Zitat antworten
Alt 31.10.2006, 22:43 Nach oben    #5
Oliver O.
 
Benutzerbild von Xean
 
Registriert seit: 17.08.2005
Beiträge: 426
Standard

Bis jetzt hab ich noch nichts verstanden...
brauch ich .htaccess???
Xean ist offline  
Add Post to del.icio.usBookmark Post in TechnoratiDiesen Beitrag zu Mister Wong hinzufügen!
Mit Zitat antworten
Alt 31.10.2006, 22:51 Nach oben    #6
Jann Hendrik Bekaan
 
Benutzerbild von Jann Hendrik
 
Registriert seit: 02.12.2004
Ort: Wildeshausen
Beiträge: 2.213
Standard

es stellt eine Möglichkeit dar, wenn es sich nur um Verzeichnisse handelt!

Dazu folgendes beachten:
dynamischer Verzeichnisschutz
das könnte man dann ja entspr. ausbauen.
__________________

Umfragen:
bitte beachten: Vorschläge für künftige Umfragen
Woher weißt du vom developers-guide?

Wenn du dich in ein interessantes Thema eingearbeitet hast, dann lass andere daran teilhaben! Schreibe ein Tutorial und beschreibe, wie es geht, was nicht klappt, wo man aufpassen muss usw.
Danke!
Jann Hendrik ist offline  
Add Post to del.icio.usBookmark Post in TechnoratiDiesen Beitrag zu Mister Wong hinzufügen!
Mit Zitat antworten
Alt 31.10.2006, 23:01 Nach oben    #7
Oliver O.
 
Benutzerbild von Xean
 
Registriert seit: 17.08.2005
Beiträge: 426
Standard

Ich hab es mir noch nicht durchgelesen, aber sind dann gleichzeitig die dateien auch geschützt, wenn ich den pfat der datei direkt angebe?
Xean ist offline  
Add Post to del.icio.usBookmark Post in TechnoratiDiesen Beitrag zu Mister Wong hinzufügen!
Mit Zitat antworten
Alt 01.11.2006, 07:46 Nach oben    #8
Jann Hendrik Bekaan
 
Benutzerbild von Jann Hendrik
 
Registriert seit: 02.12.2004
Ort: Wildeshausen
Beiträge: 2.213
Standard

ja.
alle Dateien die sich dann in dem Verzeichnis sind können (wenn es entspr. geschützt ist) nur von authorisierten Personen via http geöffnet werden.
Ein Öffnen mit PHP durch include() oder derergleichen ist weiterhin möglich!
__________________

Umfragen:
bitte beachten: Vorschläge für künftige Umfragen
Woher weißt du vom developers-guide?

Wenn du dich in ein interessantes Thema eingearbeitet hast, dann lass andere daran teilhaben! Schreibe ein Tutorial und beschreibe, wie es geht, was nicht klappt, wo man aufpassen muss usw.
Danke!
Jann Hendrik ist offline  
Add Post to del.icio.usBookmark Post in TechnoratiDiesen Beitrag zu Mister Wong hinzufügen!
Mit Zitat antworten
Alt 01.11.2006, 10:42 Nach oben    #9
Benjamin Steininger
 
Benutzerbild von robo47
 
Registriert seit: 02.06.2005
Ort: weiher im tiefsten Odenwald
Beiträge: 1.180
Standard

mit der von mir oben beschriebenen htaccess, nur mit dem inhalt:

Code:
DENY FROM ALL
ist das verzeichnis von WEB-Seite komplett geschützt ... ich mein die 3 worte sagen das ja quasi schon, ansonsten, versuchs doch einfach mal ? erstell nen ordner, leg ne htaccess mit dem inhalt rein, leg noch irgendwas dazu und versuch es via browser aufzurufen.

mfg
robo47
robo47 ist offline  
Add Post to del.icio.usBookmark Post in TechnoratiDiesen Beitrag zu Mister Wong hinzufügen!
Mit Zitat antworten
Alt 01.11.2006, 13:06 Nach oben    #10
Oliver O.
 
Benutzerbild von Xean
 
Registriert seit: 17.08.2005
Beiträge: 426
Standard

Das funktioniert, und ich sehe gerade, dass es das ist, was ich suche.
Danke.

[EDIT:]

Jetzt hab ich mal bisschen weiter gemacht, und habs hiermit probiert:

.htaccess
Code:
# .htaccess-Datei für Web-Verzeichnis /service
AuthType Basic
AuthName "Service-Bereich"
AuthUserFile .htusers
Require user valid-user
.htusers
Code:
# BenutzerDatei für Web-Projekt
testuser:test
aber ich bekomme immer eine Error500-Seite, wenn ich versuche eine datei aus dem Ordner aufrufe

Geändert von Xean (01.11.2006 um 13:28 Uhr).
Xean ist offline  
Add Post to del.icio.usBookmark Post in TechnoratiDiesen Beitrag zu Mister Wong hinzufügen!
Mit Zitat antworten
Alt 01.11.2006, 14:22 Nach oben    #11
Jonas
 
Benutzerbild von Artemis
 
Registriert seit: 03.06.2006
Beiträge: 240
Standard

Das user bei Require muss weg. Also nur Require valid-user.
__________________
Applikations-Programmierung:
BlitzMax, BlitzPlus

Webentwicklung:
PHP, (X)HTML, CSS, JavaScript, MySQL


Artemis ist offline  
Add Post to del.icio.usBookmark Post in TechnoratiDiesen Beitrag zu Mister Wong hinzufügen!
Mit Zitat antworten
Alt 01.11.2006, 14:33 Nach oben    #12
n00b -.-
 
Benutzerbild von Bookworm
 
Registriert seit: 10.11.2005
Beiträge: 318
Standard

Mal ne theoretische Frage: Kann man Dateien nicht auch (sehr) bedingt per IP schützen?

So nach diesem Schema:

PHP-Code:
<?php 

$ip 
$_SERVER['REMOTE_ADDR'];

switch(
$ip)
{
case 
"XXXXXXx"//irgendeine IP eben, die man nicht auf der Seite will
die(); //Oder Umleitung auf ne Fehlerseite oder sonst was
break; 

//usw.
}

//Inhalt, auf den ja jetzt nur noch User mit der "richtigen IP" kommen...

//ginge natürlich auch so, dass man nur Zugriff hat, wenn man eine bestimmte
//IP hat
?>
was sagt ihr? *mir ist klar das man seine IP auch wechseln kann^^*

//edit: ich sehe grad, meine eigene IP ändert sich bei jeder Einwahl ins Internet^^ Da wäre mein System sehr sinnlos^^
__________________
Alle wollen doch nur mein Bestes. Aber sie werden es nicht kriegen!

Geändert von Bookworm (01.11.2006 um 14:37 Uhr).
Bookworm ist offline  
Add Post to del.icio.usBookmark Post in TechnoratiDiesen Beitrag zu Mister Wong hinzufügen!
Mit Zitat antworten
Alt 01.11.2006, 14:39 Nach oben    #13
Jonas
 
Benutzerbild von Artemis
 
Registriert seit: 03.06.2006
Beiträge: 240
Standard

Dann müsste man ja trotzdem alle Aufrufe per mod-rewrite umleiten, in PHP ein kleines Autorisierungssystem schreiben und dann die Dateien ausgeben.

Warum, wenn es per .htaccess einfacher geht.
__________________
Applikations-Programmierung:
BlitzMax, BlitzPlus

Webentwicklung:
PHP, (X)HTML, CSS, JavaScript, MySQL


Artemis ist offline  
Add Post to del.icio.usBookmark Post in TechnoratiDiesen Beitrag zu Mister Wong hinzufügen!
Mit Zitat antworten
Alt 01.11.2006, 15:11 Nach oben    #14
Oliver O.
 
Benutzerbild von Xean
 
Registriert seit: 17.08.2005
Beiträge: 426
Standard

mh... hats irgendwie nicht gebracht.

[EDIT:]

Gibt es eine Datei auf einem server, die _immer_ aufgerufen wird??? Also eine, die den request "verarbeitet"

Geändert von Xean (01.11.2006 um 15:17 Uhr).
Xean ist offline  
Add Post to del.icio.usBookmark Post in TechnoratiDiesen Beitrag zu Mister Wong hinzufügen!
Mit Zitat antworten
Alt 01.11.2006, 16:10 Nach oben    #15
Martin Breuer
 
Benutzerbild von WarrenFaith
 
Registriert seit: 17.08.2005
Ort: Berlin
Beiträge: 1.642
Standard

.htaccess wird, wenn vorhanden, immer vorm aufruf der Seite geladen. Dort kannst du z.B. auch URL-Rewrites machen.
__________________
I did it my way - Senseless-Blog
WarrenFaith ist offline  
Add Post to del.icio.usBookmark Post in TechnoratiDiesen Beitrag zu Mister Wong hinzufügen!
Mit Zitat antworten
Alt 01.11.2006, 22:44 Nach oben    #16
Johannes Müller
 
Benutzerbild von $traight-$hoota
 
Registriert seit: 15.09.2005
Ort: Königreich Flieden
Beiträge: 521
Standard

Zitat:
Zitat von WarrenFaith Beitrag anzeigen
.htaccess wird, wenn vorhanden, immer vorm aufruf der Seite geladen. Dort kannst du z.B. auch URL-Rewrites machen.
also ne .htaccess datei wird nur für das jeweilige verzeichnis und dessen unterverzeichnisse eingebunden.
um solche angaben für wirklich ALLE requests an den server zu machen, muss das in der apache-config (httpd.conf) eingetragen werden (darauf hat man bei nem normalen webserver aber keinen zugriff).

Zitat:
Zitat von Bookworm
Kann man Dateien nicht auch (sehr) bedingt per IP schützen?
ja, das geht ganz einfach per htaccess:
statt dem ALL in DENY FROM ALL kann man auch ip-addressen und -bereiche sowie hostnamen verwenden.
z.b.
Code:
DENY FROM 23.12.173.65, 34.12.88.*, microsoft.com
__________________
Weißt Bescheid - Scheiß wie weit
$traight-$hoota ist offline  
Add Post to del.icio.usBookmark Post in TechnoratiDiesen Beitrag zu Mister Wong hinzufügen!
Mit Zitat antworten
Alt 02.11.2006, 08:00 Nach oben    #17
Jann Hendrik Bekaan
 
Benutzerbild von Jann Hendrik
 
Registriert seit: 02.12.2004
Ort: Wildeshausen
Beiträge: 2.213
Standard

auf diese Weise kann man zB böse bots von seiner website ausschliessen, wenn man deren IP's (oder sonstiges) kennt.
__________________

Umfragen:
bitte beachten: Vorschläge für künftige Umfragen
Woher weißt du vom developers-guide?

Wenn du dich in ein interessantes Thema eingearbeitet hast, dann lass andere daran teilhaben! Schreibe ein Tutorial und beschreibe, wie es geht, was nicht klappt, wo man aufpassen muss usw.
Danke!
Jann Hendrik ist offline  
Add Post to del.icio.usBookmark Post in TechnoratiDiesen Beitrag zu Mister Wong hinzufügen!
Mit Zitat antworten
Alt 02.11.2006, 10:42 Nach oben    #18
Bastian Fenske
 
Registriert seit: 04.01.2006
Ort: Kassel
Beiträge: 826
Standard

Hi.

Warum legst du die Dateien nicht einfach in ein Verzeichnis außerhalb des Document Root? Dann kannst du dir ein Skript schreiben, dem du als Parameter die ID der gewünschten Datei übergibst und das die Authentisierung in PHP erledigt?

HTTP-Basic-Authentication (so heißt die Technik mit deiner .htuser) ist ziemlich beschissen wartbar, hat diesen häßlichen Anmelde-Dialog und, vor allem, das abmelden ist nur ziemlich umständlich möglich.

Um eine PHP-Datei immer auszuführen gibt es die PHP-Option auto.prepend-file. Ist aber eigentlich ziemlich, da man ja in der Regel eh ein zentrales Skript hat (FrontController), der alle Anfragen engegennimmt und bearbeitet.

Wenn die zu schützenden Dateien jedoch im (nicht per .htaccess) geschützen Ordner innerhalb des doc_root liegen und nur mit PHP geschützt werden, dann kann auf die zugrgriffen werden, wenn PHP mal nicht anspringt (wenn als CGI installiert). Das sollte natürlich eh nicht vorkommen, aber...

Auf Shared Hosts müssen die Daten ggf. noch vor Zugriffen durch andere Kunden geschützt werden. Hier müssen die Dateirechte entsprechend gesetzt werden. Und, vor allem betrifft das Dateien in einem gemeinsamen emporären Ordner, also z.B. Session-Dateien. Hier also immer einen sicheren Ort angeben.

Basti
Basti ist offline  
Add Post to del.icio.usBookmark Post in TechnoratiDiesen Beitrag zu Mister Wong hinzufügen!
Mit Zitat antworten
Alt 02.11.2006, 10:56 Nach oben    #19
Jann Hendrik Bekaan
 
Benutzerbild von Jann Hendrik
 
Registriert seit: 02.12.2004
Ort: Wildeshausen
Beiträge: 2.213
Standard

das mit dem doc_root setzt voraus, dass die Methode auch funktioniert. Das ist leider nicht bei allen hostern der Fall!
__________________

Umfragen:
bitte beachten: Vorschläge für künftige Umfragen
Woher weißt du vom developers-guide?

Wenn du dich in ein interessantes Thema eingearbeitet hast, dann lass andere daran teilhaben! Schreibe ein Tutorial und beschreibe, wie es geht, was nicht klappt, wo man aufpassen muss usw.
Danke!
Jann Hendrik ist offline  
Add Post to del.icio.usBookmark Post in TechnoratiDiesen Beitrag zu Mister Wong hinzufügen!
Mit Zitat antworten
Antwort

Lesezeichen


Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)
 
Themen-Optionen

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 aus

Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
Drupal 5.0 beta 1 verfügbar Ben Nachrichten 0 02.11.2006 13:35


Alle Zeitangaben in WEZ +2. Es ist jetzt 03:50 Uhr.


Powered by vBulletin® Version 3.7.3 (Deutsch)
Copyright ©2000 - 2008, Jelsoft Enterprises Ltd.
Search Engine Optimization by vBSEO 3.2.0

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44