Tutorials Infos - Anleitungen - Hilfe - Dreamcodes
 

.htaccess Zugriffskontrolle

Die am weitesten verbreiteten Web-Server, wie z.B. der Apache und NCSA bieten die Möglichkeit, Web-Bereiche mit einem Paßwortschutz zu versehen. Damit kann ein Web-Angebot gezielt nur einem ausgewählten Personenkreis zur Verfügung gestellt werden.
Mit Hilfe unseres Skriptes perlinfo unter Downloads hier bei Dreamcodes können Sie leicht herausfinden, welchen Server Ihr Provider verwendet. Manche Provider erlauben auch bei einfachen Webspace-Angeboten, also jenen ohne z.B. CGI-Zugriff, die Benutzung von .htaccess Dateien. In diesem Fall müssen Sie sich zusätzliche Informationen wie zum Beispiel Pfadangaben vom Provider mitteilen lassen.
Um einen solchen Zugriffsschutz einzurichten, müssen mindestens zwei Dateien auf den Web-Server geladen werden : Die Konfigurationsdatei .htaccess und die eigentliche Paßwortdatei .htpasswd.
Achten Sie bitte auf die Kleinschreibung!

Die Datei .htaccess
Die Datei .htaccess dient der dezentralen Konfiguration der Zugriffsrechte auf einen Ordner. Sie muss sich immer in dem Ordner befinden, dessen Zugriffsrechte sie steuern soll.
Die Funktion kann durch verschiedene Parameter beeinflusst werden, welche wir nun im einzelnen vorstellen.


AuthName
Sie können dem geschützten Bereich einen Namen geben. Dieser Name wird dem Anwender angezeigt, wenn Username und Password abgefragt werden.

AuthType
Theoretisch stehen verschiedene Authorisierungstypen zur Verfügung, üblich ist aber nur "Basic". Andere Typen werden nicht von Apache unterstützt.

AuthUserFile
Name der Paßwortdatei, normalerweise ".htpasswd". Manche Webserver benötigen nur den Dateinamen relativ zum Dokument-Root. Geben Sie besser immer den absoluten Pfad zu dieser Datei an, z.B.: /home/IhreDomain/public_html/.htpasswd

AuthGroupFile
Optionale Dateibezeichnung einer Gruppendatei, normalerweise ".htgroup". Diese Angabe ist nur erforderlich, wenn Sie in der Konfigurationsdatei .htaccess die Directive "require" group group1 group2 ... verwenden wollen. Mit den Pfaden verhält es sich wie im vorherigen Beispiel.


Alle Dateien in dem Verzeichnis, in dem Sie die Datei .htaccess hinterlegt haben, werden geschützt. Meist werden hier die Methoden "GET" und evtl. auch noch "POST" angegeben.


Alternativ zu kann man mit einzelne Dateien oder Dateigruppen mit Hilfe von Wildcards schützen. Der Stern "*" steht für eine beliebige Anzahl von Zeichen und das Fragezeichen "?" für genau ein Zeichen. Beispiel: schützt alle HTML-Dokumente vor Zugriffen.

require
Mit der require-Direktive wird angegeben, nach welchem Kriterium Benutzer zugelassen werden sollen. Es gibt hier drei alternative Möglichkeiten :

require user user1 user2 ...
Gibt den Bereich gezielt nur den aufgelisteten Benutzern user1, user2 usw. frei. Diese Alternative erfordert einen hohen Pflegeaufwand.
require valid-user
Gibt den Bereich für alle in der Paßwortdatei definierten Benutzer frei. Dies ist die am häufigsten verwendete Form, sie ist im Allgemeinen die Alternative, die sich am einfachsten pflegen läßt.
require group group1 group2 ...
Es dürfen Benutzer zugreifen, die einer der aufgeführten Gruppen group1, group2 usw. angehören. Diese Variante bietet sich an, wenn man verschiedene Bereiche mit unterschiedlichen Zugriffsrechten versehen will, aber nur eine Paßwortdatei pflegen möchte.
Beispiel:
AuthUserFile /home/dreamcodes/public_html/.htpasswd
AuthName "Passwortgeschuetzter Bereich: Dreamcodes"
AuthType Basic

require valid-user




Die Datei .htpasswd
Die Datei .htpasswd ist die eigentliche Paßwortdatei. Sie kann z.B. so aussehen :

Akira:Af78tr6/.ChQQ
Akiracca:jgh874g5h4
Jede Zeile in der Datei definiert eine Benutzername/Passwort-Kombination. Es wird zuerst der Benutzername angegeben, gefolgt von einem Doppelpunkt. Dahinter steht das mit der Unix-Funktion crypt() verschlüsselte Passwort. Zur Erzeugung einer solchen Zeile haben wir ein kleines CGI-Programm bereitgestellt, welches eine für die meisten Server gültige Name-Passwort Kombination erzeugt.
Bitte achten Sie darauf, daß in den Zeilen keine zusätzlichen Leerzeichen enthalten sind !



Die Datei .htgroup
In der Datei .htgroup können Benutzergruppen definiert werden; sie gibt an, welcher Benutzer zu welcher Gruppe gehört. Die Datei kann z.B. so aussehen :

gruppe1: Dreamcodes 1a
gruppe2: Dreamcodes 2b
Eine Gruppe wird definiert durch den Namen der Gruppe, gefolgt von einem Doppelpunkt und dann einer Anzahl von Benutzernamen derjenigen Anwender, die der Gruppe zugeordnet werden sollen. Die bei der Gruppendefinition angegebenen Benutzernamen müssen sich in der Paßwortdatei wiederfinden.

 
ID: 4
eingestellt am: 28.04.2002
Autor: Q
Status zum lesen: Gast
gelesen: 6678
Webseite: www.dreamcodes.com
[Drucken]