Teil von  SELFPHP   Teil von  Praxisbuch  Teil von  Dateisystem via PHP
Letztes Update: 16.08.2005 17:53:45


Navigation

Seite News *

Seite Startseite
Seite Über SELFPHP
Seite Werbung
Seite Kontakt
Seite Forum *
Seite Download *
Seite SELFPHP Banner *
Seite SELFPHP in Buchform
Seite Newsletter *
Seite Impressum

 
* Link führt ins Internet


Anbieterverzeichnis
Informieren Sie sich über die Unternehmen in unserem Anbieterverzeichnis!  

 


SELFPHP Forum
Fragen rund um die Themen PHP? In über 79.000 Beiträgen finden Sie sicher die passende Antwort!  


Newsletter
Abonnieren Sie hier den kostenlosen SELFPHP Newsletter!

Vorname: 
Name:
E-Mail:
 



 

Berechtigungen von Dateien und Verzeichnissen




Sowohl die Funktion chmod() als auch das zweite Argument der Funktion mkdir() ermöglichen die Vergabe von Berechtigungen für Dateien und Verzeichnisse. Diese Zahl setzt sich aus vier Stellen zusammen.
. Die erste Stelle kann eine Spezialeinstellung für die jeweilige Datei sein, wie setuid (4), setgid (2) oder sticky (1).
. Die zweite Stelle stellt die Benutzerberechtigungen des Dateieigentümers dar.
. Die dritte Stelle steht für die Gruppenberechtigung, was Benutzer der Gruppe, der die Datei angehört, mit ihr machen können.
. Die vierte Stelle steht für die globalen Berechtigungen, was alle Benutzer mit der Datei machen dürfen.

Um den korrekten Wert für jede Stelle zu berechnen, addieren Sie die von Ihnen für die jeweilige Stelle gewünschten Berechtigungen anhand der Werte der folgenden Tabelle:


Wert Berechtigung Spezialeinstellung
4 Lesen setuid
2 Schreiben setgid
1 Ausführen sticky


Ein Berechtigungswert von 0755 bedeutet:

Spezialeinstellung:

Keine (0)

Dateieigentümer:

Kann die Datei: Lesen, Schreiben und Ausführen

4 = lesen + 2 = schreiben + 1 = ausführen => 7

Benutzer der Gruppe:

Können die Datei: Lesen und Ausführen

4 = lesen + 1 = ausführen => 5

Alle anderen Benutzer:

Können die Datei: Lesen und Ausführen

4 = lesen + 1 = ausführen => 5

Die Berechtigung neu erstellter Dateien und Verzeichnisse sind von der Einstellung umask abhängig. Dies ist ein Berechtigungswert, welcher von der Default-Berechtigung einer Datei (0666) bzw. eines Verzeichnis (0777) entfernt bzw. ausmaskiert wird. Wenn die umask beispielsweise 0022 ist, ist 0644 die Standardberechtigung für eine neue mit fopen() erstellte Datei und 0755 die Standardberechtigung für eine neues Verzeichnis, das mit mkdir() erstellt wird.


Einsatz von umask()
Mit Hilfe der Funktion umask() können Sie die umask abfragen und einstellen. Diese gibt die aktuelle umask zurück und ändert sie auf den Wert des übergebenen Arguments, falls vorhanden. Im folgenden Beispiel wird lediglich der Eigentümer und der Superuser in der Lage sein, auf die Datei zuzugreifen:

$alte_umask = umask(0077);

touch("privat.txt");

umask($alte_umask);


Der erste Aufruf von umask() maskiert sämtliche Berechtigungen für die Gruppe und aller anderen Benutzer. Wenn die Datei erstellt ist, stellt der Aufruf umask() die umask auf die vorherigen Einstellungen zurück.

Hinweis: Wenn PHP als Server-Modul läuft, stellt es die umask am Ende jedes HTTP-Requests auf seinen Standardwert zurück.


Achtung: Die Funktion umask() funktioniert nicht unter Windows!



 


Verzeichnisoperationen
 




 sponsored by

Host Europe


HighText iBusiness


Host Europe




© 2001-2006 E-Mail SELFPHP - Damir Enseleit, info@selfphp.deImpressumKontakt
© 2005-2006 E-Mail PHP5 Praxisbuch - Matthias Kannengiesser, m.kannengiesser@selfphp.de