授权访问动态时空数据

在集合和用户群规模都较大且是动态的情况下,对集合中的单个数据对象进行访问授权会比较困难。如果授权策略是基于数据对象的时间和空间参照,这将变得更为复杂。本文以我的公司CycloMedia Technology的真实场景为例,给大家介绍了这一问题的解决方案,该方案结合使用了Oracle数据库企业版的两个组件:Spatial选件和虚拟专用数据库特性。

CycloMedia Technology

CycloMedia专业从事基于360度的全景图像(即环形全景图)实现环境的系统性大规模可视化。要创建环形全景图,需要对广阔区域进行拍照,并将其输入到联机数据库。注册完每个记录、位置、方位后,就可以实现多样化的应用,如3-D测量和建模。(请参见以下示例。)

图像 Id 记录位置 记录日期时间
43c5klf8h0cg 5.70698580234006,50.8474750817698 2005-03-12 15:22
6ju83ks7u6pg 4.59019800392403,52.4622636292842 2004-08-02 08:51
85s8hi4nl7u2 6.9008111752263,52.4115443666161 2006-06-21 12:17
.... .... ....

图 1 使用地理空间数据的环形全景图示例

DCR7 是 CycloMedia 自行开发的一系列记录系统中最新的模型,可用于表现外观质量、量度精度和高速直观记录。DCR7 能够以 5 米间隔、80 公里/小时的速度生成环形全景图,CycloMedia 有意使用它将欧洲大部分公共空间转化为图像。由于这些进步,环形全景图集合有望快速增长。

授权挑战

在 CycloMedia 案例中,我们面临着这样一种情况,即需要向许多用户授予对带有空间和时间参照的动态对象集合的访问权。授权参数基于集合的时间和空间维度。

传统上,这一问题的解决方案是创建静态数据集或授权表来描述每个主体(客户端或用户)与集合中各对象之间的每一种单一关系。构建这些数据集和表通常要使用专业工具来计算对象和授权区域之间的空间关系。

当用户群体和集合都较大且是动态的情况下,构建和维护这些即席数据集和授权表以支持访问控制并不合适。而且,即席数据不支持访问控制策略中的灵活保护粒度和动态变化。

近来提出的几个解决方案有着不同缺点。导致这些缺点的主要原因与所提出的解决方案的体系结构相关。在数据库外实施授权,或在执行查询后实施授权,因此限制了数据的使用。甚至 Open Geospatial Consortium 当前建议的新标准 GeoXACML 体系结构也存在问题。它基于用于空间数据(GML、WMS)和授权 (XACML) 的标准,为不受保护的 Web 地图服务提供了一种无需更改现有基础架构即可进行访问控制的解决方案。为此,它拦截了传输至 WMS 的消息,对目标 WMS 执行检索任务,将检索结果发送至决策点,然后基于得到的授权决定创建结果集。

这一概念在很大程度上基于这一体系结构原型,该原型会导致一些效率低下的后果:所有数据均选自原始数据库,然后转换为 GML, 再使用外部工具根据授权策略按特征逐一划分并计算。因此无法使用原始数据库中的空间索引,而且必须在其他组件中实施空间比较函数。另外,该体系结构不能执行复杂的分析任务,因为数据首先经过了选择然后依据授权策略进行了筛选。即使是简单查询最近邻居也会出问题:您最后可能会发现一开始所选择的最近对象是无法到达的。

时间: 2024-10-02 12:35:25

授权访问动态时空数据的相关文章

Memcache未授权访问漏洞利用及bug修复详解

memcached是一套分布式的高速缓存系统.它以Key-Value(键值对)形式将数据存储在内存中,这些数据通常是应用读取频繁的.正因为内存中数据的读取远远大于硬盘,因此可以用来加速应用的访问. 漏洞成因: 由于memcached安全设计缺陷,客户端连接memcached服务器后 无需认证就 可读取.修改服务器缓存内容. 漏洞影响: 除memcached中数据可被直接读取泄漏和恶意修改外,由于memcached中的数据像正常网站用户访问提交变量一样会被后端代码处理,当处理代码存在缺陷时会再次导

js-jquery动态生成数据问题

问题描述 jquery动态生成数据问题 一开始数据加载的时候执行 $(document).ready(function(){ $.post("news.do?method=getChannel", function(data) { 返回的datao数据 var obj = eval("("+data+")"); $.each(obj.channels,function(i,n){ $("#channel").append(&q

使用javascript动态添加数据到 HTML 页面

今天简单的学习了一下有关对象字面量的定义和 javascript 如何取出对象字面量的值的知识,javascript 动态添加数据到 HTML 页面的问题. [学习目标]有如下的一组数据通过 Ajax 传递过来: var dataList = [ { state: 2, // 0:sharing 1:unJoin 2:sharingEnd name: '客户1', phone: 13675896031 }, { state: 1, // 0:sharing 1:unJoin 2:sharingE

MaxCompute访问TableStore(OTS) 数据(20170601更新)

免费开通大数据服务:https://www.aliyun.com/product/odps 0. 前言 MaxCompute作为阿里云大数据平台的核心计算组件,承担了集团内外大部分的分布式计算需求.而MaxCompute SQL作为分布式数据处理的主要入口,为快速方便处理/存储EB级别的离线数据提供了强有力的支持. 随着大数据业务的不断扩展,新的数据使用场景在不断产生,在这样的背景下,MaxCompute计算框架也在不断的演化,原来主要面对内部特殊格式数据的强大计算能力,也正在一步步的开放给不同

RDS PostgreSQL\HDB PG 毫秒级海量时空数据透视 典型案例分享

标签 PostgreSQL , GIS , 时空数据 , 数据透视 , bitmapAnd , bitmapOr , multi-index , 分区 , brin , geohash cluster 背景 随着移动终端的普及,现在有越来越多的业务数据会包含空间数据,例如手机用户的FEED信息.物联网.车联网.气象传感器的数据.动物的溯源数据,一系列跟踪数据. 这些数据具备这几个维度的属性: 1.空间 2.时间 3.业务属性,例如温度.湿度.消费额.油耗.等. 数据透视是企业BI.分析师.运营非

Redis3未授权访问漏洞导致服务器被入侵

今天在腾讯云上搭的开发环境里的一台机器cpu load飚升老高,然后还能登陆上去,top后发现两个可疑进程./root/目录下有修改过的文件./opt目录被干掉了, 后经分析,这台机器上有redis外网服务,/root目录下还有个READ_ME.txt,  内容如下: 中招了,,两个可疑进程 在腾讯云上找到篇处理步骤: Redis 默认情况下,会绑定在 0.0.0.0:6379,这样会将 Redis 服务暴露到公网上,在Redis服务器没有开启认证的情况下,可以导致任意用户在可以访问目标服务器的

ASP.NET MVC 5 学习教程:通过控制器访问模型的数据

原文 ASP.NET MVC 5 学习教程:通过控制器访问模型的数据 起飞网 ASP.NET MVC 5 学习教程目录: 添加控制器 添加视图 修改视图和布局页 控制器传递数据给视图 添加模型 创建连接字符串 通过控制器访问模型的数据 生成的代码详解 使用 SQL Server LocalDB Edit方法和Edit视图详解 添加查询 Entity Framework 数据迁移之添加字段 添加验证 Details 和 Delete 方法详解 在本节中,你将新建一个MoviesController

【译】ASP.NET MVC 5 教程 - 6:通过控制器访问模型的数据

原文:[译]ASP.NET MVC 5 教程 - 6:通过控制器访问模型的数据 在本节中,你将新建一个MoviesController 类,并编写获取电影数据的代码,使用视图模板将数据展示在浏览器中. 在进行下一步之前,你需要先编译应用程序,否则在添加控制器的时候会出错. 在解决方法资源管理器的Controllers文件夹右键,选择"添加">"支架": 在"添加支架"对话框,选择 MVC 5 Controller with read/wri

Redis 未授权访问缺陷可轻易导致系统被黑

Sebug 网站公布了 Redis 未授权访问缺陷的详细漏洞信息,这个 Redis 未授权访问缺陷可轻易导致系统被黑.详细内容请看下文: 漏洞概要 Redis 默认情况下,会绑定在 0.0.0.0:6379,这样将会将Redis服务暴露到公网上,如果在没有开启认证的情况下,可以导致任意用户在可以访问目标服务器的情况下未授权访 问Redis以及读取Redis的数据.攻击者在未授权访问Redis的情况下可以利用Redis的相关方法,可以成功将自己的公钥写入目标服务器的 /root/.ssh 文件夹的