国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

要素級地圖服務(wù)權(quán)限控制策略與技術(shù)研究

2021-09-27 18:09:00馮推亮熊小青王春曉
地理空間信息 2021年9期
關(guān)鍵詞:訪問控制切片客戶端

馮推亮,熊小青,王春曉

(1.自然資源部海南基礎(chǔ)地理信息中心,海南 海口 570203)

近年來,隨著計(jì)算機(jī)、通信、網(wǎng)絡(luò)等技術(shù)和測繪地理信息技術(shù)的快速發(fā)展以及國家政策的支持,各地市“數(shù)字城市”建設(shè)已基本完成,“智慧城市”、物聯(lián)網(wǎng)建設(shè)也相繼開展,對于基礎(chǔ)地理空間數(shù)據(jù)的需求將會不斷增長[1]。目前基礎(chǔ)地理空間數(shù)據(jù)的提供方式為地圖服務(wù),ArcGIS Server作為地圖服務(wù)器,已被各政府機(jī)關(guān)、企事業(yè)單位和公眾認(rèn)可,并得到了廣泛應(yīng)用。為了保護(hù)數(shù)據(jù)所有者的權(quán)限,必須對空間數(shù)據(jù)進(jìn)行安全保護(hù)[2],針對不同的用戶,需配置不同的地圖服務(wù),因此需要相關(guān)的運(yùn)維管理平臺對地圖服務(wù)訪問進(jìn)行管理[3]。 ArcGIS Server平臺服務(wù)器具有對應(yīng)的運(yùn)維管理模塊,包括地圖服務(wù)管理、權(quán)限管理和日志記錄等,但其地圖服務(wù)權(quán)限管理功能只能控制到用戶是否能訪問某些地圖服務(wù)的級別,無法對地圖服務(wù)中的要素訪問范圍和切片訪問范圍起到控制作用,需要進(jìn)行二次開發(fā)才能實(shí)現(xiàn)該功能。鑒于此,為了滿足實(shí)際業(yè)務(wù)對數(shù)據(jù)細(xì)粒度的控制要求,本文設(shè)計(jì)并開發(fā)了基于ArcGIS Server的要素級地圖服務(wù)權(quán)限控制系統(tǒng)。系統(tǒng)在ArcGIS Server擴(kuò)展接口的基礎(chǔ)上進(jìn)行二次開發(fā),采用REST接口[4]、SOI服務(wù)對象攔截器技術(shù)和OpenCV開源輕量級且跨平臺的視覺處理技術(shù)[5]等進(jìn)行開發(fā)。系統(tǒng)建成后已應(yīng)用到具體的業(yè)務(wù)中,實(shí)現(xiàn)了對地圖服務(wù)要素訪問范圍和切片訪問范圍的有效控制。

1 權(quán)限控制架構(gòu)設(shè)計(jì)

地圖服務(wù)權(quán)限控制采用SOA架構(gòu),包括基礎(chǔ)層、數(shù)據(jù)層、服務(wù)層和應(yīng)用層,如圖1所示。SOA架構(gòu)便于實(shí)現(xiàn)跨平臺和互操作,利用 REST接口實(shí)現(xiàn)一種松散耦合的異構(gòu)式環(huán)境的集成,采用OGC標(biāo)準(zhǔn)規(guī)范接口構(gòu)建面向服務(wù)的集共享服務(wù)提供方、使用方和管理方于一體的地理信息數(shù)據(jù)共享框架體系結(jié)構(gòu),實(shí)現(xiàn)基于統(tǒng)一注冊和分級授權(quán)的服務(wù)組織模式與運(yùn)行管理機(jī)制,從而實(shí)現(xiàn)地理信息共享交換的持續(xù)發(fā)展[6-8]。

圖1 系統(tǒng)架構(gòu)設(shè)計(jì)

基礎(chǔ)層包括存儲、網(wǎng)絡(luò)、系統(tǒng)、數(shù)據(jù)庫、安全設(shè)備等,為數(shù)據(jù)層、服務(wù)層和應(yīng)用層的建設(shè)與運(yùn)行提供基礎(chǔ)保障。數(shù)據(jù)層采用Oracle關(guān)系型數(shù)據(jù)庫為基礎(chǔ)地理空間數(shù)據(jù)和應(yīng)用系統(tǒng)數(shù)據(jù)提供高效存儲,采用文件系統(tǒng)存儲地圖切片數(shù)據(jù)。服務(wù)層基于Web API開發(fā)框架,利用RESTful風(fēng)格構(gòu)建地圖服務(wù)目錄、服務(wù)代理、切片訪問控制、要素訪問控制、切片處理和地圖服務(wù)權(quán)限管理等模塊,負(fù)責(zé)數(shù)據(jù)層業(yè)務(wù)邏輯的實(shí)現(xiàn),為應(yīng)用層的數(shù)據(jù)展現(xiàn)和功能實(shí)現(xiàn)提供服務(wù)接口。應(yīng)用層包括外部的App移動端和Web應(yīng)用程序端的服務(wù)使用方以及框架內(nèi)部的地圖服務(wù)運(yùn)維系統(tǒng)的管理方。

2 權(quán)限控制策略設(shè)計(jì)

權(quán)限控制策略主要由地圖服務(wù)目錄、服務(wù)代理、切片處理、地圖服務(wù)權(quán)限管理端、切片訪問控制和要素訪問控制等模塊組成。具體控制策略和流程結(jié)構(gòu)如圖2所示。

圖2 權(quán)限控制策略流程圖

App移動端或Web客戶端通過訪問地圖服務(wù)目錄提供的服務(wù)地址訪問系統(tǒng)提供的地圖服務(wù),目錄服務(wù)將客戶端的請求提交給服務(wù)代理,由服務(wù)代理根據(jù)請求的服務(wù)類型調(diào)用對應(yīng)的處理程序,若是請求切片則調(diào)用切片訪問控制模塊來處理客戶端的請求,切片訪問控制模塊再調(diào)用切片處理工具,根據(jù)級別和行列號參數(shù)提取原始切片并進(jìn)行空間關(guān)系運(yùn)算和透明化等處理,最后將處理后的切片返回給客戶端;若是請求要素查詢則調(diào)用要素訪問控制模塊來處理該請求,根據(jù)客戶端傳遞的查詢參數(shù)進(jìn)行要素查詢,并根據(jù)用戶的可訪問范圍對要素查詢結(jié)果進(jìn)行空間過濾處理,最后將處理后的結(jié)果返回給客戶端。

2.1 權(quán)限控制數(shù)據(jù)庫設(shè)計(jì)

權(quán)限控制數(shù)據(jù)庫用于保存用戶、地圖服務(wù)、權(quán)限范圍信息。數(shù)據(jù)庫表結(jié)構(gòu)主要包括用戶表、用戶組表、地圖服務(wù)表、范圍表、用戶與地圖服務(wù)關(guān)系表、用戶與范圍關(guān)系表、業(yè)務(wù)系統(tǒng)表、業(yè)務(wù)系統(tǒng)秘鑰表等,具體結(jié)構(gòu)如表1所示。

表1 數(shù)據(jù)庫表結(jié)構(gòu)說明

2.2 地圖服務(wù)目錄

REST是一種軟件架構(gòu)風(fēng)格,由Roy Thomas Fielding 博士于2000年提出,是一種針對網(wǎng)絡(luò)應(yīng)用的設(shè)計(jì)和開發(fā)方式,可降低開發(fā)的復(fù)雜性,提高系統(tǒng)的可伸縮性。通俗地說,即網(wǎng)絡(luò)中的所有資源都有唯一的網(wǎng)絡(luò)地址與其一一對應(yīng)[9]。

地圖服務(wù)目錄模塊的主要功能是采用REST架構(gòu)風(fēng)格將系統(tǒng)的地圖服務(wù)通過REST接口對外提供地圖服務(wù)的調(diào)用地址和詳細(xì)信息,類似于ArcGIS Server 的Services目錄服務(wù),從而方便用戶快速查找相關(guān)的地圖服務(wù)。相關(guān)部分代碼為:

2.3 服務(wù)代理

服務(wù)代理模塊的主要功能是接收來自地圖服務(wù)目錄提交的服務(wù)地址。通過服務(wù)地址提取Token(ArcGIS 的令牌)、key(秘鑰)和userid(用戶id)參數(shù)驗(yàn)證 key 的有效性,通過Token驗(yàn)證用戶是否有權(quán)限訪問該地圖服務(wù)以及該服務(wù)是否設(shè)置了要素可訪問范圍的限制;再根據(jù)服務(wù)地址識別請求的服務(wù)類型,若請求切片,代理則將調(diào)用切片訪問控制模塊進(jìn)行切片訪問控制操作,同時將傳遞范圍信息給該模塊,若請求要素查詢,代理則將調(diào)用要素訪問控制模塊進(jìn)行要素查詢控制操作,同時將傳遞范圍信息給該模塊。

2.4 切片訪問控制

切片訪問控制模塊的主要功能是接收來自服務(wù)代理模塊傳遞的服務(wù)地址和訪問范圍信息。通過服務(wù)地址和訪問范圍信息進(jìn)行數(shù)據(jù)庫查詢,得到切片處理工具處理好的切片存放路徑,并根據(jù)切片請求地址中的行列號和級別信息調(diào)用后臺切片讀取程序讀取相應(yīng)的切片文件,再將切片以二進(jìn)制流的形式返回給客戶端。

2.5 要素訪問控制

要素訪問控制模塊的主要功能是接收來自服務(wù)代理模塊傳遞的服務(wù)地址和訪問范圍信息。以Query查詢?yōu)槔?,將訪問范圍與用戶輸入的圖形進(jìn)行空間關(guān)系運(yùn)算,若訪問范圍與輸入圖形無交集,則結(jié)束請求并提示超出權(quán)限范圍;若訪問范圍包含輸入圖形,則將Query的geometry參數(shù)設(shè)置為用戶輸入的圖形;若訪問范圍與輸入圖形相交,則將Query的geometry的參數(shù)設(shè)置為訪問范圍與輸入圖形相交計(jì)算的交集。然后,調(diào)用ArcGIS Server 的對應(yīng)接口獲取要素查詢結(jié)果,若客戶端請求地址的參數(shù)中設(shè)置了需對查詢結(jié)果進(jìn)行裁剪,則將訪問范圍與查詢結(jié)果進(jìn)行相交運(yùn)算,只保留訪問范圍內(nèi)的要素,最后將結(jié)果以JSON格式返回給客戶端。

2.6 切片處理

切片處理模塊的主要功能是對ArcGIS Server生成的切片文件進(jìn)行二次處理。讀取boundle文件中的每張瓦片,并與訪問范圍進(jìn)行空間關(guān)系運(yùn)算,將訪問范圍之外的部分進(jìn)行透明化處理;然后將每張瓦片重新存儲到新的切片文件中。對每個服務(wù)切片、每個級別、每行每列進(jìn)行相同處理,最終生成指定訪問范圍的地圖服務(wù)切片。相關(guān)部分代碼為:

2.7 地圖服務(wù)權(quán)限管理端

地圖服務(wù)權(quán)限管理端的主要功能是集成ArcGIS Server發(fā)布的地圖服務(wù)。集成業(yè)務(wù)系統(tǒng)獲取其用戶和角色數(shù)據(jù),通過服務(wù)權(quán)限配置功能可為每個用戶配置可訪問的地圖服務(wù)以及每個服務(wù)里用戶能訪問的空間范圍,同時提供切片處理工具運(yùn)行的啟動按鈕和工具運(yùn)行相關(guān)的配置項(xiàng)管理。相關(guān)界面如圖3 所示。

圖3 地圖服務(wù)權(quán)限管理端界面

3 關(guān)鍵技術(shù)

3.1 SOI技術(shù)

ArcGIS Server平臺服務(wù)器提供SOI擴(kuò)展開發(fā)接口,即服務(wù)對象攔截器接口,目前支持使用.NET或Java進(jìn)行二次開發(fā)。利用攔截器可攔截到客戶端發(fā)送的地圖服務(wù)要素查詢請求或服務(wù)響應(yīng)的結(jié)果,在攔截器中開發(fā)者可修改客戶端發(fā)送請求的參數(shù)再繼續(xù)請求服務(wù),也可修改地圖服務(wù)查詢結(jié)果再將修改后的結(jié)果返回給客戶端。本系統(tǒng)采用攔截器攔截了客戶端的請求,并對查詢的參數(shù)進(jìn)行了修改;再繼續(xù)請求服務(wù);然后對服務(wù)響應(yīng)的結(jié)果再次進(jìn)行攔截,并修改查詢的結(jié)果;最后把修改后的結(jié)果返回給客戶端。

3.2 OpenCV技術(shù)

OpenCV是一種開源輕量級且跨平臺的視覺處理庫,支持C#、Java、C++等主流開發(fā)語言 。利用OpenCV可實(shí)現(xiàn)圖像處理操作、構(gòu)建圖形用戶界面、視頻分析、人臉和目標(biāo)檢測以及形狀分析等功能。本系統(tǒng)采用OpenCV的圖像處理功能進(jìn)行瓦片處理,將每張瓦片轉(zhuǎn)換為圖片,再利用特定的訪問范圍與瓦片圖片進(jìn)行比較,對超出訪問范圍的圖片部分進(jìn)行透明化圖像處理,最后將瓦片圖片保存到新的切片文 件中。

4 技術(shù)實(shí)現(xiàn)與對比實(shí)驗(yàn)

4.1 技術(shù)實(shí)現(xiàn)

技術(shù)實(shí)現(xiàn)時,實(shí)驗(yàn)網(wǎng)絡(luò)環(huán)境采用局域網(wǎng),開發(fā)環(huán)境采用DotNet Framework 4.5+VS 2013,數(shù)據(jù)庫采用Oracle關(guān)系型數(shù)據(jù)庫,實(shí)驗(yàn)數(shù)據(jù)采用地理國情普查地表覆蓋數(shù)據(jù)。系統(tǒng)利用ArcGIS Server SOI擴(kuò)展接口進(jìn)行二次開發(fā),開發(fā)語言選用C#。

4.2 要素控制對比實(shí)驗(yàn)

本文將某地區(qū)兩個行政區(qū)交界區(qū)域的地表覆蓋圖層發(fā)布為要素服務(wù),通過上述要素訪問控制技術(shù)進(jìn)行控制,并進(jìn)行不同行政區(qū)劃下數(shù)據(jù)控制的對比實(shí)驗(yàn)。實(shí)驗(yàn)結(jié)果如圖4、5所示,可以看出,未對訪問范圍進(jìn)行控制時,可同時查看兩個行政區(qū)的數(shù)據(jù),空間點(diǎn)選查詢均正常;對其中的一個行政區(qū)的訪問范圍進(jìn)行限制時,該行政區(qū)以外的數(shù)據(jù)沒有顯示,點(diǎn)選也無法查詢,能保證無限制訪問區(qū)域數(shù)據(jù)的顯示效果,點(diǎn)選效果正常。實(shí)驗(yàn)結(jié)果表明,對用戶設(shè)置訪問范圍前,用戶可查詢?nèi)∫?,而設(shè)置訪問范圍后用戶只能查詢指定范圍內(nèi)的要素。

圖4 要素訪問控制前效果圖

圖5 要素訪問控制后效果圖

4.3 切片控制對比實(shí)驗(yàn)

本文將上述地表覆蓋圖層發(fā)布為切片服務(wù),通過切片訪問控制技術(shù)進(jìn)行控制,并進(jìn)行不同行政區(qū)劃下數(shù)據(jù)控制的對比實(shí)驗(yàn)。實(shí)驗(yàn)結(jié)果如圖6、7所示,可以看出,未對訪問范圍進(jìn)行控制時,可同時查看兩個行政區(qū)的數(shù)據(jù),空間點(diǎn)選查詢均正常;對其中的一個行政區(qū)的訪問范圍進(jìn)行限制時,該行政區(qū)以外的數(shù)據(jù)沒有顯示,點(diǎn)選也無法查詢,能保證無限制訪問區(qū)域數(shù)據(jù)的顯示效果,點(diǎn)選效果正常。實(shí)驗(yàn)結(jié)果表明,對用戶設(shè)置訪問范圍前,用戶可查看該服務(wù)全省的切片,而設(shè)置訪問范圍后用戶只能查看指定范圍內(nèi)的切片。

圖6 切片訪問控制前效果圖

圖7 切片訪問控制后效果圖

4.4 結(jié)果分析

針對該地圖服務(wù),在未對用戶設(shè)置訪問范圍權(quán)限時,用戶可查看全省的切片和進(jìn)行全省的要素查詢,但在對用戶設(shè)置訪問范圍權(quán)限后,用戶只能看到指定區(qū)域的切片和進(jìn)行指定區(qū)域的要素查詢。通過切片訪問控制效果對比圖和要素訪問控制效果對比圖可知,本系統(tǒng)提出的權(quán)限控制策略可根據(jù)用戶可訪問范圍進(jìn)行切片顯示和要素查詢的空間范圍控制。

5 結(jié) 語

針對當(dāng)前ArcGIS Server的地圖服務(wù)權(quán)限管理體系只能控制到用戶是否有權(quán)限訪問某些服務(wù)的級別,無法滿足對地圖服務(wù)中指定空間范圍內(nèi)要素的訪問控制問題,本文基于SOI服務(wù)對象攔截器技術(shù)和OpenCV開源圖像處理技術(shù)等關(guān)鍵技術(shù),提出了基于ArcGIS Server的要素級地圖服務(wù)權(quán)限控制策略,利用DotNet Framework 4.5+VS 2013的開發(fā)環(huán)境、Oracle關(guān)系型數(shù)據(jù)庫環(huán)境和局域網(wǎng)網(wǎng)絡(luò)環(huán)境進(jìn)行了技術(shù)實(shí)現(xiàn),并利用地理國情普查地表覆蓋數(shù)據(jù)進(jìn)行了實(shí)驗(yàn)。實(shí)驗(yàn)結(jié)果表明,該策略可對地圖服務(wù)進(jìn)行要素級別和訪問范圍級別的精細(xì)化權(quán)限控制,加強(qiáng)了地圖服務(wù)權(quán)限的管理。該策略建成后經(jīng)過不斷的測試和完善,已運(yùn)行穩(wěn)定并及時應(yīng)用到實(shí)際生產(chǎn)環(huán)境中,滿足了實(shí)際業(yè)務(wù)對地圖服務(wù)訪問更精細(xì)化控制的需求,增強(qiáng)了地圖服務(wù)權(quán)限精細(xì)管理能力。

猜你喜歡
訪問控制切片客戶端
縣級臺在突發(fā)事件報(bào)道中如何應(yīng)用手機(jī)客戶端
傳媒評論(2018年4期)2018-06-27 08:20:24
孵化垂直頻道:新聞客戶端新策略
傳媒評論(2018年4期)2018-06-27 08:20:16
基于Vanconnect的智能家居瘦客戶端的設(shè)計(jì)與實(shí)現(xiàn)
電子測試(2018年10期)2018-06-26 05:53:34
ONVIF的全新主張:一致性及最訪問控制的Profile A
基于SDN與NFV的網(wǎng)絡(luò)切片架構(gòu)
動態(tài)自適應(yīng)訪問控制模型
淺析云計(jì)算環(huán)境下等級保護(hù)訪問控制測評技術(shù)
大數(shù)據(jù)平臺訪問控制方法的設(shè)計(jì)與實(shí)現(xiàn)
腎穿刺組織冷凍切片技術(shù)的改進(jìn)方法
冰凍切片、快速石蠟切片在中樞神經(jīng)系統(tǒng)腫瘤診斷中的應(yīng)用價(jià)值比較
南靖县| 仪陇县| 白山市| 南陵县| 班玛县| 咸宁市| 辽源市| 贺州市| 阿克| 大庆市| 枣庄市| 封丘县| 庆阳市| 阿拉善盟| 荥经县| 射洪县| 新源县| 如皋市| 右玉县| 华阴市| 宜宾市| 乐平市| 依兰县| 和林格尔县| 淮南市| 报价| 泸溪县| 通州区| 五华县| 台南市| 大石桥市| 兰州市| 民权县| 蒙自县| 调兵山市| 苍溪县| 台中市| 太保市| 洛扎县| 连山| 华宁县|