Autorisierung zum Zugriff auf Resourcen¶
Der Zugriff auf Resourcen kann beim Apache-Server in vielfältiger Weise gesteuert und durch Module ergänzt werden. Die grundlegensten Arten der Autorisierung (wiki) sind:
welcher Remote-Host, darf auf was zugreifen
Autorisierung auf Basis der Herkunft einer Anfrage auf die Resource. Diese Steuerung wird vom Apache mod_authz_host Modul zur Verfügung gestellt.
welche Person / welches Login darf auf was zugreifen
Autorisierung auf Basis einer (zurvor erfolgten) Authentifizierung (wiki). Mittels der Apache Require Direktive kann der Zugriff auf eine Resource auf ausgewählte Benutzer und Gruppen geregelt werden.
Die Herkunft einer Anfrage wird auf Basis der IP-Adresse der Anfrage festgestellt. Die (IP-) Adresse ist bereits bei der Anfrage im Internet-Protokoll gegeben. Für die Authentifizierung ist immer eine Art von Anmeldevorgang erforderlich (siehe Authentication and Authorization).
Die Autorisierung gehört zu den sicherheitsrelevantesten Konfiguration eines WEB-Servers, sie sollte einem unmissverständlichem und zukunftsfähigen Konzept folgen. Das Konzept in diesem hier vorgestellten Setup ist sehr einfach gewählt und gründet auf der Debian’s default Apache2 Installation. Es werden (wieder) die Grundsätze verfolgt:
alles dicht machen
Der Zugriff auf alle Resourcen wird für alle Logins und alle IP-Adressen gesperrt (wird in der /etc/apache2/conf-available/security.conf definiert).
expliziete Freigabe
Der kontrollierte Zugriff auf eine Resource wird in einer Site konfiguriert. Sites definieren
die Resource,
die Autorisierung und
die Art der ggf. erforderlichen Authentifizierung
Jede Site hat eine eigene Konfigurationsdatei (s.a.
available-sites
undenabled-sites
in Ordnerstruktur der Debian Apache Installation).
Hinweis
Authentifizierung meint den Vorgang, bei dem beispielsweise eine Person bei
der Anmeldung behauptet sie sei Benutzer (Identität) xyz
. Der Server
authentifiziert die Identität des Benutzers nachdem der Benutzer das
richtige Passwort angeben hat.
Autorisierung klingt so ähnlich, meint aber was völlig Anderes. Autorisieren ist das Einräumen bestimmter Rechte. Dieses Einräumen von Rechten kann und wird oftmals auf Basis einer Authentifizierung erfolgen, muss es aber nicht, wie man am Beispiel der IP-Adressen basierten Autorisierung des Apache WEB-Servers sehen kann.