Zugriff auf Layer steuern

In diesem Tutorial lernen Sie, wie Sie mit security.manager for OGC den Zugriff auf den WMS https://services.conterra.de/arcgis/services/common/grenzen/MapServer/WMSServer auf die Layer World und Bundeslaender einschränken können.

Voraussetzung

Dieses Tutorial baut auf den Dateien auf, die Sie im Tutorial Zugriff auf WMS erlauben erstellt haben.

Namen der Layer herausfinden

Um den Zugriff auf die Layer World und Bundeslaender einzuschränken, rufen Sie die Capabilities des Dienstes auf: https://services.conterra.de/arcgis/services/common/grenzen/MapServer/WMSServer?request=GetCapabilities&service=WMS Hier finden Sie einen Abschnitt <Layer>, in dem die Layer des Dienstes samt Namen aufgeführt sind:

Auszug aus den Capabilities
<Layer>
    <Title>
      <![CDATA[ Layers ]]>
    </Title>
    <!-- ... -->
    <Layer queryable="1">
        <Name>0</Name>
        <Title>
          <![CDATA[ World ]]>
        </Title>
        <!-- ... -->
    </Layer>
    <Layer queryable="1">
        <Name>1</Name>
        <Title>
          <![CDATA[ Bundeslaender ]]>
        </Title>
        <!-- ... -->
    </Layer>
    <Layer queryable="1">
        <Name>2</Name>
        <Title>
          <![CDATA[ Kreise ]]>
        </Title>
        <!-- ... -->
    </Layer>
    <Layer queryable="1">
        <Name>3</Name>
        <Title>
          <![CDATA[ Gemeinden ]]>
        </Title>
        <!-- ... -->
    </Layer>
</Layer>

In diesem Fall benötigen Sie die Namen 0 (World) und 1 (Bundeslaender).

Zugriffsrecht anpassen

Öffnen Sie nun die policies-grenzen-wms.json aus dem Tutorial Zugriff auf WMS erlauben. Ändern Sie dort den Layereintrag des Zugriffsrechts, um den Zugriff auf die Layer World und Bundeslaender zu beschränken:

${user.home}/.secman-ogc/policies/policies-grenzen-wms.json
{
  "policies": [{
    "layers": ["0", "1"],
    "roles": ["enhancedSecurity_any"]
  }]
}

Tomcat neustarten

Speichern und schließen Sie die Datei und starten Sie den Tomcat neu, um die Änderungen zu übernehmen.

Konfiguration überprüfen

Um die Konfiguration zu überprüfen, rufen Sie die Capabilites des geschützten Dienstes auf: http://localhost:8080/secman-ogc/arcgis/services/common/grenzen/MapServer/WMSServer?request=GetCapabilities&service=WMS

Auszug aus Capabilites
<Layer>
    <Title>
      <![CDATA[ Layers ]]>
    </Title>
    <!-- ... -->
    <Layer queryable="1">
        <Name>0</Name>
        <Title>
          <![CDATA[ World ]]>
        </Title>
        <!-- ... -->
    </Layer>
    <Layer queryable="1">
        <Name>1</Name>
        <Title>
          <![CDATA[ Bundeslaender ]]>
        </Title>
        <!-- ... -->
    </Layer>
</Layer>

Sie sehen dort unter <Layer> lediglich die erlaubten Layer World und Bundeslaender. Auf die Layer Kreise und Gemeinden kann hingegen nicht mehr zugegriffen werden.