簡體   English   中英

如何從 javascript (leaflet/openlayers) 請求驗證 Geoserver 上的安全層

[英]How to authenticate secured layer on Geoserver from javascript (leaflet/openlayers) requests

我在 Ubuntu 主機上的 docker 容器上有一個 Geoserver 實例。 目前,對 Geoserver 容器的請求通過主機的 Apache Web 服務器轉發。 我正在從 javascript web 應用程序發出這些請求。

我想在 Geoserver 上保護我的一些圖層。

我的問題:如何提供正確的憑據(大概是用戶名和密碼)以從我的 javascript 應用程序訪問這些層,而不在我的源代碼中以普通視圖顯示它們?

您可以使用https://docs.geoserver.org/stable/en/user/community/authkey/index.html 中的 authkey 隱藏安全層的用戶名和密碼但是使用瀏覽器開發人員工具,每個人都可以看到請求並重用 authkey,因為它只是到用戶的映射,GeoServer 將生成一個 Cookie,其中第一個請求與所使用的映射權限相匹配 - 因此任何有興趣的人都可以將 authkey 用於它的映射用戶的所有內容允許。

唯一不顯示 authkey 的真正解決方案是在 Apache 的代理上添加 authkey。 或者甚至更好地限制對 Apache 上的 GeoServer 的請求僅適用於登錄用戶(如果您的應用程序使用 Apache 上的登錄名),並僅將請求轉發給在您的應用程序中(在 Apache 內)具有必要權限的用戶的 Geoserver。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM