Skip to content

Latest commit

 

History

History
24 lines (16 loc) · 2.69 KB

endpoints.md

File metadata and controls

24 lines (16 loc) · 2.69 KB

Endpoints

Web Map Service

Web Map Service (WMS) endpoint is implemented using combination of Layman's authentication proxy and GeoServer.

The authentication proxy understands same authentication credentials as Layman REST API (e.g. OAuth2 credentials) and passes the request to GeoServer with credentials understandable by GeoServer.

WMS respects publication access rights. If user asks for layer he has not read access to by GetMap or GetFeatureInfo request, GeoServer returns standard ServiceExceptionReport (code LayerNotDefined).

Web Feature Service

Web Feature Service (WFS) endpoint is implemented using combination of Layman's authentication proxy, Layman's WFS proxy, and GeoServer.

The authentication proxy behaves in the same way as in case of WMS.

The WFS proxy parses request and adapts it in few ways in case of WFS-T 1.0, 1.1 and 2.0:

  • If incoming WFS-T request Insert, Replace, or Update refers to an attribute, that does not exist yet in DB, the attribute is automatically created in DB table before redirecting WFS-T request to GeoServer. Data type of the attributes is VARCHAR(1024). Also if QML style is used, attribute is automatically added to QGS project file. If attribute creation fails for any reason, warning is logged and request is forwarded to GeoServer nevertheless.
  • Bounding box and thumbnail of each layer referenced in incoming Insert, Replace, Update, or Delete WFS-T request is updated in asynchronous chain after the request is finished.
  • Calling WFS-T on a layer when previous asynchronous chain of the layer (POST, PATCH or another WFS-T) is still running causes run of WFS-T asynchronous chain after the current one is finished.
  • Calling WFS-T on a layer that is contained by map whose previous asynchronous chain (POST, PATCH or another chain caused by WFS-T) is still running causes run of map's asynchronous chain after the current one is finished.

WFS respects publication access rights. If user asks for type (layer) he has not read access to by DescribeFeatureType or GetFeature request, GeoServer returns standard ExceptionReport (code InvalidParameterValue, locator typeName or typeNames). To perform WFS-T requests, write access is needed.

Catalogue Service

Catalogue Service (CSW) is implemented using Micka.