Geonode 中未显示的图层
Posted
技术标签:
【中文标题】Geonode 中未显示的图层【英文标题】:Layer NOT shown in Geonode 【发布时间】:2020-08-28 10:35:39 【问题描述】:当admin 登录GeoServer 时,Geonode 中会显示一个图层。当 admin 在 GeoServer 中注销时,图层不会显示在 Geonode 中。
geoserver-geonode 的 oauth 配置似乎没有正确完成(默认设置未更改),我无法解决。
geoserver 日志显示错误/异常如下:
ERROR [geoserver.ows] -
org.geoserver.platform.ServiceException: Could not find layer geonode:nepalNationalParks
.
.
WARN [geofence.cache] - org.geoserver.geofence.cache.CachedRuleReader$NoAuthException: Can't auth user [admin]
WARN [geoserver.security] - Failed login, user admin from 192.168.10.66
我的系统配置是 GeoNode 3.1.0 ,安装在 Ubuntu 18.04 上的 GeoServer 2.16.2。较大的日志文件是here。
谢谢。
【问题讨论】:
【参考方案1】:我认为您需要从 GeoFence 数据规则菜单 (GeoFence Data Rules>>Add new rule>>)
添加新的地理围栏规则,如下所示,
Priority: 0
Role: *
Username: *
Service: *
Request: *
Workspace: *
Layer: *
Access: ALLOW
或者您可以通过更改参数为特定的服务、工作区或层应用所需的角色。
【讨论】:
【参考方案2】:@Tekson 感谢您的建议。 我也尝试使用 GeoFence 规则。但是,我认为问题是由于 OAuth 设置中的错误配置造成的。当我使用正确的 IP 地址和 URL 重新安装 Geonode(并且没有更改 GeoFenceing 规则)时,问题得到了解决。
我关注了Geonode installation guide(ubuntu 18.04)。在我之前的安装中,可能在部分发生了错误配置 更新设置以更新在公共 IP 或主机名上运行的 GeoNode 和 GeoServer 服务,尤其是在第 3 步中(更新 OAuth2 配置以使用新主机名)。
【讨论】:
以上是关于Geonode 中未显示的图层的主要内容,如果未能解决你的问题,请参考以下文章