Zutritt verboten

Teil 5: [Workshop] Zugangskontrolle per .htaccess - Mehr Sicherheit

Das folgende Beispiel definiert nur eine Regelung für die Methoden POST, PUT und DELETE. Alle nicht genannten Methoden bleiben undefiniert und können gegebenenfalls weiterverwendet werden.

<Limit POST PUT DELETE>
Require valid-user</Limit>

Der Apache Webserver kennt folgende Methoden: GET, POST, PUT, DELETE, CONNECT, OPTIONS, PATCH, PROPFIND, PROPPATCH, MKCOL, COPY, MOVE, LOCK und UNLOCK.

Damit Sie bei Ihrer Definition nicht die eine oder andere Methode vergessen, können Sie auch die zweite Direktive <LimitExcept> einsetzen. Diese funktioniert genau entgegengesetzt und wendet die Definitionen auf alle Methoden außer den aufgeführten an.

<LimitExcept POST GET>
Require valid-user</LimitExcept>

Sie benötigen somit in diesem Beispiel für alle Methoden, außer POST und GET, einen gültigen Benutzer.

Achten Sie bei der Definition unbedingt darauf, dass der Methodenname großgeschrieben wird, da an dieser Stelle zwischen Groß- und Kleinschreibung unterschieden wird.

IP-Adresse und Herkunft

Bis jetzt haben Sie die Zugriffe auf Inhalte eingeschränkt und den Zugriff explizit über Freigaben geregelt. .htaccess bietet Ihnen darüber hinaus die Möglichkeit, einzelne Regeln auf Basis der Herkunft der Anfrage aufzustellen. Abhängig davon, woher die Anfrage kommt, lässt sich somit der Zugriff auf die Daten freigeben oder sperren.

order deny,allow
deny from 127.0.0.1
deny from .konkurrenz.de
allow from all

Die erste Anweisung deny from 127.0.0.1 sperrt den Zugriff für die IP-Adresse 127.0.0.1, den localhost. Außerdem werden alle Anfragen geblockt, welche im Referrer die URL konkurrenz.de haben. Allen anderen wird der Zugriff über die abschließende Definition erlaubt.

Sie können den Weg auch von der anderen Richtung aus beschreiten. Sperren Sie als Erstes alle Besucher aus und geben Sie anschließend den Zugriff auf die Inhalte für bestimmte Besucher, beispielsweise innerhalb des Intranets für einen speziellen IP-Range frei.

order deny,allow
deny from all
allow from 192.168

Der Aufbau des Blocks folgt immer einem wiederkehrenden Muster:

order [deny |(,) allow] leitet die Definition ein. Wenn Sie nur Ausschlüsse definieren, reicht auch die Verwendung von order deny aus. • deny from [all | IP-Adresse | host] sperrt den Zugriff für alle, bestimmte IP-Adressen oder bestimmte Hostnamen, wie konkurrenz.de. • allow from [all | IP-Adresse | host] bildet das entsprechende Gegenstück.

Die Zugangsbeschränkung über IP-Adressen kann jedoch nur einen beschränkten Zugriffsschutz bieten, da Sie über IP-Spoofing die IP-Adresse des Absenders fälschen können und den Empfänger so eine falsche Herkunft vorgaukeln. Sie sollten deswegen diese Sperre am besten nur in Kombination mit anderen Schutzmaßnahmen einsetzen.

Mehr zum Thema

HTML5: Quick Reference Guide
Ratgeber: "HTML5"

Die wichtigsten Tags auf einen Blick: In unserem praktischen Arbeitsblatt finden Sie einen wertvollen Begleiter für die Umstellung Ihrer Webprojekte…
internet, webdesign, google, content, ranking, seo, suchmaschine
Ratgeber: Urheberrecht

Einzigartige Inhalte bieten Lesern Mehrwert und sind ein wichtiges Qualitätsmerkmal. Ärgerlich, wenn sich jemand durch Kopieren an fremden Ergebnissen…
Die besten HTML5-Tipps
Neue Tipps & Tricks für blitz.io

Wer die Leistung einer Applikation ermitteln möchte, braucht keine Skripte zu schreiben, sondern kann einen der zahlreichen Online-Dienste einspannen.…
image.jpg
Ratgeber: Webentwicklung

Die clientseitige Javascript-Entwicklung bietet fast keine Entwicklungsumgebungen und auch keine vernünftigen Werkzeuge zur Fehlersuche. Eine der…
internet, webdesign, meteor, webapplikationen
Ratgeber

Mit Meteor sollen Entwickler in kurzer Zeit Umgebungen für Webapplikationen erstellen können, ohne sich um lästige Details kümmern zu müssen. Wir…