Zugriff räumlich einschränken
In diesem Tutorial lernen Sie, wie Sie den Zugriff auf den Dienst https://services.conterra.de/arcgis/services/common/grenzen/MapServer/WMSServer räumlich einschränken können.
Voraussetzung
Dieses Tutorial baut auf den Dateien auf, die Sie im Tutorial Zugriff auf WMS erlauben erstellt haben.
Geometrie definieren
Um den Zugriff auf den WMS räumlich ungefähr auf das Gebiet von Nordrhein-Westfalen einzugrenzen, legen Sie zuerst die Datei nrw.geojson im Order policies an:
{
"type": "Polygon",
"coordinates": [
[
[ 5.86725, 50.32375 ],
[ 9.46245, 50.32375 ],
[ 9.46245, 52.52860 ],
[ 5.86725, 52.52860 ],
[ 5.86725, 50.32375 ]
]
]
}
Geometrien in dieser Datei müssen vom Typ Polygon oder MultiPoligon sein.
Sie beschreiben die Regionen, auf die der Zugriff erlaubt ist.
security.manager for OGC schneidet angefragte Karten entlang dieser Geometrien aus.
Eine genauere Beschreibung dieser Datei und den Bedingungen finden Sie unter Geometrien für räumliche Einschränkungen.
Räumliche Einschränkung definieren
Die räumliche Einschränkung muss nun in der Zugriffsrechte-Datei definiert werden.
Öffnen Sie hierzu die policies-grenzen-wms.json aus dem vorherigen Tutorial.
Ergänzen Sie die Datei um den Abschnitt restrictions und fügen eine räumliche Einschränkung wie folgt hinzu:
{
"policies": [{
"layers": ["*"],
"roles": ["enhancedSecurity_any"]
}],
"restrictions":{
"nrw":{
"type":"spatial",
"source":"nrw.geojson"
}
}
}
Einschränkung referenzieren
Nachdem Sie die Geometrien für die räumlich Einschränkung erstellt haben sowie eine räumliche Einschränkung definiert haben, müssen Sie diese noch in einem Zugriffsrecht referenzieren. Ergänzen Sie hierfür das Zugriffsrecht um eine Liste mit Einschränkungen. Fügen Sie dieser Liste den Namen der Einschränkung hinzu:
{
"policies": [{
"layers": ["*"],
"roles": ["enhancedSecurity_any"],
"restrictions":["nrw"]
}],
"restrictions":{
"nrw":{
"type":"spatial",
"source":"nrw.geojson"
}
}
}
Tomcat neustarten
Speichern Sie die Änderungen und starten den Tomcat neu, um die Änderungen zu übernehmen.
Konfiguration überprüfen
Um die Konfiguration zu überprüfen, rufen Sie den geschützten Dienstes auf:
http://localhost:8080/secman-ogc/arcgis/services/common/grenzen/MapServer/WmsServer?width=1160&height=1080&bbox=614000%2C6455000%2C1060000%2C6940000&crs=EPSG%3A3857&format=image%2Fpng&request=GetMap&service=WMS&styles=&transparent=TRUE&version=1.3.0&layers=0%2C1%2C2%2C3
Rufen Sie zum Vergleich auch den Ziel-Dienst mit den selben Parametern auf:
https://services.conterra.de/arcgis/services/common/grenzen/MapServer/WmsServer?width=1160&height=1080&bbox=614000%2C6455000%2C1060000%2C6940000&crs=EPSG%3A3857&format=image%2Fpng&request=GetMap&service=WMS&styles=&transparent=TRUE&version=1.3.0&layers=0%2C1%2C2%2C3

Sie können nun sehen, dass der geschützte Dienst auf die oben angegebene Region beschränkt ist und entlang dieser ausgestanzt ist.