WMS nur für bestimmte IP-Adressen zulassen

Aus kvwmap
Wechseln zu: Navigation, Suche

--Markus Hentschel 10:16, 4. Apr 2008 (CEST)

Die Forderung war, den ALK-WMS zu schützen. Nur bestimmte autorisierte Clients sollen diesen Dienst empfangen können. Die Mapdatei ist die MV-weit einheitliche alk-mv.map der AG Webservices.

Die Lösung beruht auf dem Ansatz, der auf der Mapbender-Homepage beschrieben wird.

  • Die Mapdatei des ALK-WMS bekommt den Namen alk_mv-nvp.map und liegt hier: /pfad/zur/mapdatei
  • Im cgi-bin-Verzeichnis wird ein Script mit Namen alk_mv-nvp abgelegt. Dieses ist ausführbar für alle und sieht folgendermaßen aus:
#!/bin/sh
export MS_MAPFILE=/pfad/zur/mapdatei/alk_mv-nvp.map
exec /pfad/zum/cgi-bin/mapserv
  • In der Datei httpd.conf des Apache wird folgender Eintrag gemacht (und der Apache anschließend neu gestartet):
# setzt location defaults für wms mapping
<Location /cgi-bin/alk_mv-nvp>
Order deny,allow
Deny from all
# Landkreis Nordvorpommern
Allow from IP.des.Landkreises.Nordvorpommern
# DVZ
Allow from IP.des.DVZ.MV
# Landkreis Bad Doberan
Allow from IP.des.Landkreis.Bad.Doberan
# Landkreis Demmin
Allow from IP.des.Landkreis.Demmin
</Location>
Für FGS-Nutzer: Es wird eine Datei im conf.d-Ordner angelegt mit Namen httpd_wms.conf und obigem Inhalt.
  • In der Mapdatei wird abschließend die ONLINERESOURCE im Metadata-Objekt geändert:
"WMS_ONLINERESOURCE" "http://servername/cgi-bin/alk_mv-nvp?"

Jetzt ist der Dienst nur noch für die eingetragenen IPs erreichbar und - feiner Nebeneffekt - sicherheitsrelevante Informationen wie der Pfad zur Mapdatei müssen nicht mehr angegeben werden und erscheinen auch nicht mehr im GetCapabilities-Dokument.

Dank an Ronald Wojta!