GeoFence服务器GUI

GeoFence用户界面是Geoserver Web界面的一个组件。您可以从Geoserver Web界面中单击 GeoFence Data Rules 链接,登录后可在屏幕左侧找到。

规则页

所有规则的概述都具有优先级、规则的范围规范(角色、用户、服务、请求、工作区和层)及其访问行为。“*”符号表示该规则适用于该规范的所有可能值。规则总是按优先级排序,但按“P”优先级列标题可以颠倒顺序。

../../_images/rulespage.png

可以使用“添加新规则”链接添加新规则。通过选择规则,然后单击“删除所选规则”链接,可以删除任意数量的规则。

规则优先级顺序可以通过右侧的上下箭头轻松显示在该页上。可以使用铅笔符号修改规则,铅笔符号打开规则页面。

规则页

创建新规则和修改现有规则时都会显示此页面。

../../_images/rulepage.png

通过指定优先级编号,可以手动更改优先级。如果此优先级号已被另一个规则占用,这将导致该规则及其后的所有规则将一个位置移到较低的优先级。

如果使用IP地址范围限制访问,则在Linux(以及其他启用了IPv6的系统)上添加 -Djava.net.preferIPv4Stack=true 将标志添加到Geoserver启动选项,以确保IP范围匹配与IPv4样式地址一起工作。目前,GeoFence不支持IPv6样式的地址范围。

选择访问类型限制后,将显示其他选项,允许用户选择与此规则关联的目录模式和允许区域(WKT)。空间过滤类型参数允许定义是将允许区域过滤作为交叉点还是剪辑过滤应用于矢量数据。

../../_images/limit.png

当选择访问类型访问以及特定层时,可以在单独的选项卡中指定“层详细信息”。这样就可以为相关规则的层添加额外的过滤器。例如,规则可以更改层的默认样式,指定所有可用的样式,哪些属性可用于读取和/或写入,为读取和写入指定CQL筛选器,指定目录模式和允许的区域(WKT)筛选器。

../../_images/layerdetails.png

可以设置CQL读取筛选器以允许用户仅访问可用数据的子集。

例如,拥有每日时间序列层(具有时间属性/维度的层),可以将访问限制在给定的时间范围内。

将访问限制为整个2020年(静态时间范围)的CQL过滤器如下所示:

time between 2020-01-01 and 2020-12-31

限制访问超过一周的数据的CQL筛选器(动态时间范围)将如下所示::

dateDifference(now(), time, 'd') > 7

(见 temporal-functions 有关日期差异函数的更多详细信息)

允许的区域可以在任何SRID中定义。Geoserver会在需要时自动将其重新投影到资源CRS。

图层编组

还支持图层编组。如果没有指定工作空间,层下拉菜单将显示全局图层组,而如果选择了工作空间,则工作空间的图层组将与层一起显示。

配置图层组时,将禁用图层详细信息选项卡中的读写过滤器文本区域和样式选项板。

当请求LayerGroup时,将按以下方式处理包含的资源:

  • 应用于图层组的限制(允许区域或授权类型)将应用于所有包含的层。

  • 如果访问规则A包含的层拒绝用户请求组访问该层,则该层将不会显示在输出中。

  • 如果层的访问规则本身有限制,则在为同一角色定义了这两个限制的情况下,这些限制将以限制的方式(交集)与图层组的限制合并。

  • 如果层的访问规则本身有限制,如果为不同的角色定义了这两个限制,则它们将以允许的方式(并集)与图层组的限制合并。

在WMS请求的上下文中直接访问一个或多个图层组中包含的图层时,适用以下规则:

  • 如果包含所请求资源的任何图层组具有模式 SINGLE 不会应用最终为任何图层组定义的限制。

  • 如果包含所请求资源的所有图层组都具有模式 OPAQUE ,则该层将不可见。

  • 如果包含该资源的所有图层组的模式不同于 SINGLEOPAQUE ,则将应用图层组限制并将其与为资源定义的限制合并(如果存在)。对于每个图层组,如果为同一角色定义了规则,则限制将以限制性方式与为资源定义的限制合并。相反,如果这些限制来自为不同角色定义的规则,则限制将与扩大逻辑合并。