Layer NOT shown in Geonode

819 views Asked by At

A layer is displayed in Geonode when admin is logged in GeoServer. When the admin logs off in GeoServer the layer is not displayed in Geonode.

enter image description here

It seems like oauth configuration of geoserver-geonode is not done properly (the default settings are not changed) which I am not able to solve.

The geoserver log shows errors/exceptions as follows:

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

My System Configuration is GeoNode 3.1.0 , GeoServer 2.16.2 installed on Ubuntu 18.04. The larger log file is here.

Thank You.

2

There are 2 answers

0
bdur On BEST ANSWER

@Tekson Thank You for your suggestion. I tried to play with GeoFence Rules as well. However, I think the problem was due to mis-configuration in OAuth setting. The issue was solved when I re-installed Geonode with proper IP Address and URLs (and did not altered the GeoFenceing Rules).

I followed Geonode installation guide(ubuntu 18.04). In my previous installation, mis-configuration might had happened around section Update the settings in order to update GeoNode and GeoServer services running on a public IP or hostname particularly in Step 3 (Update OAuth2 configuration in order to hit the new hostname).

0
Tek Kshetri On

I think you need to add new geofench rule from GeoFence Data Rules menu (GeoFence Data Rules>>Add new rule>>) as below,

Priority: 0
Role: *
Username: *
Service: *
Request: *
Workspace: *
Layer: *
Access: ALLOW

Or you can apply the required role for specific serice, workspace, or layer by just changing the parameter.