GeoAdapter实现WMS、WMTS、ArcGIS MapService的区域权限授权管理
背景:
在实际GIS应用中,我们经常会发布GIS地图服务,然后供WebGIS调用。在某些特殊情况下,需要对服务进行区域授权,特定的用户只能够浏览特定范围内的地图数据。通常情况下大家采用的实现方式是使用掩膜服务把权限范围外的数据进行遮挡,这种实现方式的局限性在于用户调取的服务还是所有范围,仅仅通过障眼法在应用系统中进行了屏蔽,如果直接访问地图服务还是可以看到授权区域外部的数据。
解决方案:
针对以上问题,开发了一个产品用于对服务进行区域授权控制,命名为GeoAdapter。GeoAdapter可以实现以下功能:
(1)服务的访问权限控制
对用户进行授权,仅有授权用户可以对服务进行访问,实现了地图服务的统一用户管理。
(2)服务的区域权限控制
可以对用户进行区域授权,授权用户访问地图服务时GeoAdapter返回的服务进行了区域限制,仅返回授权区域内部的数据。第三方应用接入地图服务时自动进行了区域过滤,无需编写相关代码。
目前支持的服务类型包括:WMS、WMTS、ArcGIS 的 MapService(Dynamic/Tiled)
效果展示:

GeoAdapter实现WMS、WMTS、ArcGIS MapService的区域权限授权管理的更多相关文章
- OGC WebGIS 常用服务标准(WMS/WMTS/TMS/WFS)速查
本文只介绍实际工作中常用的 WMS.WMTS.WFS.TMS 四种,WCS.WPS 等其它 OGC WebService 类型请自行查阅官方资料. 目录 0. 参数传递方式 1. WMS 速查 1.1 ...
- ArcGIS Runtime SDK for Android 授权(arcgis android 去除水印)
ArcGIS Runtime SDK for Android 授权 ESRI中国北京 要下载和安装 ArcGIS Runtime SDK for Android,您需要注册开发者账户,进而便拥有了访问 ...
- 在ASP.NET MVC中使用区域来方便管理controller和view
在ASP.NET MVC中使用区域来方便管理controller和view 在mvc架构中,一般在controllers和views中写所有控制器和视图, 太多控制器时候,为了方便管理,想要将关于pe ...
- ArcGIS runtime sdk for wpf 授权
这两天由于runtime sdk for wpf的授权和runtime sdk 其他产品的授权的不一样导致自己混乱不堪. 总结下吧. sdk 简介 当前ArcGIS runtime sdk 包括一系列 ...
- ArcGIS 按多边形区域统计栅格影像的一些信息
在使用ArcGIS对栅格影像进行分析时,难免要进行一些统计类的分析.如统计框选区域的像素的个数,面积.均值等内容. 下面给出使用“Spatial Analyst Tools -- > Zonal ...
- Arcgis Runtime sdk for android 授权
要下载和安装 ArcGISRuntime SDK for Android,您需要注册开发者账户,进而便拥有了访问所有功能的权限,从而实现开发和测试目的.但是,这种情况下,应用程序中的所有地图都具有水印 ...
- Linux内存描述之内存区域zone--Linux内存管理(三)
1 内存管理域zone 为了支持NUMA模型,也即CPU对不同内存单元的访问时间可能不同,此时系统的物理内存被划分为几个节点(node), 一个node对应一个内存簇bank,即每个内存簇被认为是一个 ...
- 【JeeSite】区域和菜单管理
/** * 区域Entity * @author ThinkGem * @version 2013-05-15 */ public class Area extends TreeEntity<A ...
- Arcgis for Js之加载wms服务
概述:本节讲述Arcgis for Js加载ArcgisServer和GeoServer发布的wms服务. 1.定义resourceInfo var resourceInfo = { extent: ...
随机推荐
- java-webuploader+Java如何实现分片+断点续传
我们平时经常做的是上传文件,上传文件夹与上传文件类似,但也有一些不同之处,这次做了上传文件夹就记录下以备后用. 首先我们需要了解的是上传文件三要素: 1.表单提交方式:post (get方式提交有大小 ...
- 【bzoj2763】[JLOI2011]飞行路线
*题目描述: Alice和Bob现在要乘飞机旅行,他们选择了一家相对便宜的航空公司.该航空公司一共在n个城市设有业务,设这些城市分别标记为0到n-1,一共有m种航线,每种航线连接两个城市,并且航线有一 ...
- Oracle 字符串拼接会出现0自动忽略,解决方案
解决方案 ,),'||num,num) from table_name 参考:https://blog.csdn.net/menghuannvxia/article/details/73089903
- 【Python】学习笔记三:序列
sequence(序列) sequence(序列)是一组有序的元素的集合,序列可以有任何元素,也可以没有元素 元组与表的区别:一旦建立,tuple的各个元素不可再变更,而list的各个元素可以再变更 ...
- java 强弱软虚 四种引用,以及用到的场景
1.利用软引用和弱引用解决OOM问题:用一个HashMap来保存图片的路径和相应图片对象关联的软引用之间的映射关系,在内存不足时,JVM会自动回收这些缓存图片对象所占用的空间,从而有效地避免了OOM的 ...
- 模板引擎ejs的include方法
html无法include header.ejs footer.ejs 最后用 user.ejs在首尾include
- 一、基础篇--1.1Java基础-Exception、Error、RuntimeException与一般异常有何异同
Throwable.Error.Exception.RuntimeException 关系如下类图所示: Throwable: Throwable类是java语言中所有错误或者异常的超类.它的两个子类 ...
- leetcode-mid-backtracking -78 Subsets
mycode 86.06% class Solution(object): def subsets(self, nums): """ :type nums: List ...
- pyhton2与pyhton3切换
ubuntu中默认的Python版本是Python2.X,但是现在Python的最新版本是Python3.X. 那么怎么修改ubutun系统默认的Python解释器呢? 如果没有安装,则使用以下命令安 ...
- 使用 circleci 自动部署 vuepress 到 github
概述 今天我想把博客什么的搬到 github 的 vuepress 上面.但是每次提交 md 文件需要手动打包然后再提交到 github 的 gh-pages,非常麻烦.所以我去研究了一下用 circ ...