• 
    

    
    

      99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看

      ?

      通過互聯(lián)網訪問鐵路內網Web Service技術的研究與實現(xiàn)

      2016-02-16 06:20:23楊金剛高效松施卉磊
      鐵路計算機應用 2016年10期
      關鍵詞:令牌日志路由

      楊金剛,劉 軍,高效松,施卉磊

      (哈爾濱鐵路局 信息技術所,哈爾濱 150006)

      通過互聯(lián)網訪問鐵路內網Web Service技術的研究與實現(xiàn)

      楊金剛,劉 軍,高效松,施卉磊

      (哈爾濱鐵路局 信息技術所,哈爾濱 150006)

      文章通過互聯(lián)網訪問鐵路內網Web Service技術的研究探索,分析了鐵路安全平臺的原理和結構,提出了穿越鐵路安全平臺的一般實現(xiàn)方法,并指出了該方法的不足之處。文章結合哈爾濱鐵路局的實際項目,給出了互聯(lián)網訪問內部資源代理程序的實現(xiàn)方法,該代理程序實現(xiàn)了互聯(lián)網訪問路網資源的可配置性及零編程。

      安全平臺;Web Service;數(shù)字證書;令牌;代理程序

      近幾年,為了提升鐵路運輸服務質量,鐵路總公司相繼建立了12306互聯(lián)網售票、95306貨運電子商務平臺等,為旅客出行和貨主貨運提供了極大的便利,今后借助互聯(lián)網來方便公眾、提升服務質量的信息系統(tǒng)項目將會越來越多。本文結合哈爾濱鐵路局網絡電報手機App、職工互動交流平臺及微信平臺等項目,對通過互聯(lián)網訪問鐵路內部資源的技術進行深入研究,就通過互聯(lián)網穿越網絡安全平臺調用鐵路內部網Web Service的方法進行了詳細闡述,指出了一般實現(xiàn)方法的不足,并給出了互聯(lián)網訪問鐵路內部資源代理程序的實現(xiàn)方法。

      1 鐵路計算機網絡安全平臺概述

      鐵路計算機網絡安全平臺(簡稱:安全平臺)是鐵路總公司計算機網絡安全工程的重要組成部分,是鐵路綜合計算機內部網絡與外部網絡(互聯(lián)網)之間的唯一安全連接通道,其設計目標是建設一個先進的網絡安全體系架構,為鐵路內部和外部用戶提供安全可靠的網絡計算和通信環(huán)境,規(guī)范鐵路網絡基礎設置,形成縱深防御體系,提高網絡自身防御攻擊能力和網絡整體性能,滿足日益發(fā)展的內外網間應用系統(tǒng)數(shù)據(jù)傳輸和安全互訪的需求。

      安全平臺主要由網絡系統(tǒng)、訪問控制系統(tǒng)、證書管理系統(tǒng)及日志審計系統(tǒng)等組成。其中,訪問控制系統(tǒng)是劃分鐵路內部網絡和外部網絡的重要邊界,是實現(xiàn)應用系統(tǒng)安全訪問的基礎,它在物理隔離的內、外網絡之間建立安全的數(shù)據(jù)傳輸通道,對訪問者的身份和權限進行查驗,確保只有符合條件的授權用戶才能訪問到受保護的系統(tǒng)資源,同時對訪問數(shù)據(jù)格式的有效性進行校驗,它由訪問通道子系統(tǒng)、訪問控制子系統(tǒng)和配置管理子系統(tǒng)組成,訪問控制系統(tǒng)結構如圖1所示。

      圖1 安全平臺訪問控制系統(tǒng)結構圖

      1.1 訪問控制子系統(tǒng)

      主要負責對用戶的身份信息及訪問權限進行管理,同時進行用戶認證及鑒權工作。它提供的服務包括:用戶身份認證服務、訪問控制服務和單點登錄服務。

      1.2 訪問通道子系統(tǒng)

      在物理隔離的鐵路內部網絡與外部網絡之間建立一條安全的數(shù)據(jù)傳輸通道,并進一步檢查進出數(shù)據(jù)格式的有效性。它提供的服務包括:正向代理服務和反向代理服務。

      1.3 配置管理子系統(tǒng)

      對安全代理系統(tǒng)的配置項進行管理,以及對證書庫中的證書進行查詢。它提供的服務包括:安全代理系統(tǒng)的配置服務和證書庫證書的查詢服務。

      2 互聯(lián)網訪問內網Web Service方法研究

      2.1 安全平臺訪問控制流程

      互聯(lián)網用戶通過鐵路安全平臺訪問內部網應用系統(tǒng)的過程如圖2所示,過程說明見表1。

      2.2 通過互聯(lián)網訪問內部Web Service一般實現(xiàn)方法

      2.2.1 物理架構

      通過互聯(lián)網訪問內部Web Service一般需要3類服務器:第1類是在互聯(lián)網或鐵路外部服務網隔離區(qū)(DMZ)區(qū)部署的Web應用服務器,用于為互聯(lián)網用戶提供Web 服務;第2類是在鐵路外部服務網DMZ區(qū)部署的外網訪問接口服務器,用于部署安全平臺客戶端數(shù)字證書、獲取安全平臺訪問令牌(Token)以及為Web 應用服務器提供內部網Web Service的代理方法接口;第3類是在鐵路內部網部署的Web Service接口服務器,用于訪問鐵路內部網絡的業(yè)務數(shù)據(jù)。物理架構如圖3所示。

      圖2 安全平臺訪問控制流程圖

      表1 安全平臺訪問過程控制說明

      圖3 通過互聯(lián)網訪問內部Web Service物理架構圖

      2.2.2 外網訪問接口一般實現(xiàn)方法

      本節(jié)所闡述的實現(xiàn)方法以Java語言為例。

      2.2.2.1 創(chuàng)建客戶端密鑰倉庫(KeyStore)

      互聯(lián)網訪問內網資源時,安全平臺外網認證服務器需要驗證客戶端數(shù)字證書。編寫外網訪問接口使用Java KeyStore密鑰倉庫,用Java JDK提供的keytool工具生成密鑰倉庫并導入證書。導入的4個證書分別是:鐵路認證中心(CA)根證書、外網訪問控制證書、內網訪問控制證書以及安全平臺配置生成的PKCS#12格式客戶端證書。

      2.2.2.2 獲取安全平臺訪問令牌

      安全平臺的外網訪問控制服務采用的是基于SSL協(xié)議的HTTPS雙向認證方式,認證成功后安全平臺會為客戶端返回具有一定生存時間的訪問令牌,持有合法令牌的訪問請求可以通過安全平臺。

      取得安全平臺訪問令牌的方法是:(1)進行SSLSocket握手,初始化SSLSocket;(2)加載2.2.2.1生成的KeyStore格式的JKS文件和口令,返回SSL上下文的SSLSocketFactory對象;(3)向HttpsURLConnection對象注入SSLSocketFactory,利用HttpsURLConnection對象請求外網認證服務器URL,解析認證服務器返回內容,獲取訪問令牌。

      2.2.2.3 生成內網Web Service相應的客戶端代碼

      Java JDK提供了一個工具wsimport,可以根據(jù)WSDL生成相應的客戶端文件,在項目中使用這些客戶端類文件,就可以像調用本地類方法一樣調用遠程Web Service方法。wsimport工具可以生成由不同語言編寫的Web Service的Java客戶端,生成的內網Web Service的Java客戶端類文件和代碼文件,導入到項目中即可使用。

      2.2.2.4 為Web Service客戶端類添加訪問令牌

      通過2.2.2.3生成的客戶端在訪問內網Web Service時,必須在SOAP頭部插入采用2.2.2.2獲取的令牌信息,否則將不能通過安全平臺驗證。

      2.2.3 上述實現(xiàn)方法的不足

      利用上述方法實現(xiàn)通過互聯(lián)網訪問內網Web Service有兩方面不足:(1)編程工作量大,靈活性差。當內網Web Service改動時,如新增接口方法、接口參數(shù)更改及調用方式改變,都必須修改外網訪問接口程序,重新生成內網Web Service代理類,重新發(fā)布程序;(2)可擴展性差,這種方法僅能用于標準的Web Service,對于用戶自己實現(xiàn)的通信協(xié)議接口不支持。鑒于以上方法的不足,我們開發(fā)了互聯(lián)網訪問內部資源代理程序,實現(xiàn)了僅通過配置項目及內部資源的映射,無需編程即可實現(xiàn)通過互聯(lián)網對內部資源的訪問,并且支持標準的Web Service、Web API及用戶自定義的通信協(xié)議接口。

      3 代理程序的設計實現(xiàn)

      3.1 代理程序總體架構

      代理程序由配置、認證、路由及日志4部分組成。配置部分用于配置項目的數(shù)字證書、虛擬地址及內部資源映射,以及生成供互聯(lián)網調用的接口URL。配置部分采用Flask框架用Python語言編寫,配置項的存儲采用MongoDB數(shù)據(jù)庫;認證部分用于從配置庫中讀取數(shù)字證書文件及密碼,提交安全平臺外網認證服務器,獲取訪問令牌。認證部分用Java語言編寫;路由部分用于解析互聯(lián)網請求的URL,根據(jù)項目配置信息,轉換成內部資源訪問地址,并在內部資源訪問請求頭部附加令牌信息,然后轉發(fā)至內部Web Service接口服務器,獲取業(yè)務數(shù)據(jù)后響應互聯(lián)網請求。路由部分還負責根據(jù)配置庫中令牌生存時間來對認證部分獲取的令牌進行緩存。路由部分采用Flask框架用Python語言編寫,與認證部分的通信采用Thrift協(xié)議進行RPC調用;日志部分用于搜集代理程序的調試信息及性能信息,以便于系統(tǒng)排錯和性能瓶頸的確定。代理程序總體架構如圖4所示。

      3.2 配置項設計

      代理程序有兩類配置項:(1)項目配置項;(2)內部資源映射配置項。兩者是One-To-Many 關系,一個項目可包含多個內部資源映射,配置項存儲在MongoDB數(shù)據(jù)庫中,項目配置完成后,系統(tǒng)自動形成互聯(lián)網調用的接口URL。下面以哈爾濱鐵路局網絡電報手機APP項目為例闡述配置項設計。

      3.2.1 項目配置項

      下面是項目配置項的一個實例,JSON格式,各數(shù)據(jù)域含義見表2。

      表2 項目配置項各數(shù)據(jù)域含義

      3.2.2 內部資源映射配置項

      下面是內部資源映射配置項的一個實例,JSON格式,各數(shù)據(jù)域含義見表3。

      表3 內部資源映射配置項各數(shù)據(jù)域含義

      3.2.3 外部接口URL格式

      代理程序的配置部分根據(jù)項目及內部資源映射配置,自動為每個內部資源生成互聯(lián)網訪問接口URL,外部系統(tǒng)通過調用接口URL,實現(xiàn)內部資源的訪問。接口URL格式:

      http://[agent_ip]:[port]/[project]/[inner_url]。

      [agent_ip]:運行代理程序服務器IP地址;

      [port]:運行代理程序服務端口;

      [project]:項目名稱;

      [inner_url]:內部資源的相對訪問地址。

      3.3 路由時序設計

      路由部分由路由解析、路由轉發(fā)、配置讀取以及認證部分Thrift客戶端4個模塊組成,具體路由時序設計如圖5所示。

      圖5 代理程序路由時序圖

      3.4 認證設計

      為了提高性能,認證與路由之間內部通信沒有使用HTTP協(xié)議,而是使用了基于Thrift的RPC協(xié)議。Thrift是一個跨語言的服務部署框架,2007年由Facebook開發(fā),2008年成為Apache開源項目。認證部分Thrift服務端采用Java語言編寫,路由部分使用Python語言編寫Thrift客戶端。Thrift服務端代碼略。

      3.5 日志設計

      代理程序有兩類日志:(1)錯誤日志,記錄程序運行中出現(xiàn)的錯誤信息,便于分析產生錯誤原因及定位出錯位置;(2)性能日志,記錄認證及路由過程消耗的時間,便于確定程序性能瓶頸。認證部分日志工具采用了開源日志組件Log4j ,路由部分日志工具使用Python自帶的Logging日志模塊。代理程序日志分析統(tǒng)一使用了Python語言自行編寫的分析工具。

      4 結束語

      本文主要研究了通過互聯(lián)網訪問鐵路內部資源的原理及一般實現(xiàn)方法,并詳細闡述了穿越安全平臺代理程序的設計思路。隨著互聯(lián)網訪問鐵路內部網資源項目的逐漸增多,代理程序實現(xiàn)的無需編程及靈活配置的優(yōu)勢將日益顯現(xiàn),如今代理程序已經作為哈爾濱鐵路局網絡電報手機APP及數(shù)字哈局等項目的基礎設施,發(fā)揮著重要的作用。

      [1]Deepak Vohra .Java 7 JAX-WS Web Services[M].Birmingham:Packt Publishing,2012.

      [2]Kristina Chodorow.MongoDB權威指南[M].2版.北京:人民郵電出版社,2014.

      [3]李 亮,尹遜政,孟 軍.基于安全平臺裁決的ATO系統(tǒng)冗余設計與實現(xiàn)[J].鐵路計算機應用,2014,23 (2): 32-35.

      [4]Miguel Grinberg .Flask Web開發(fā):基于Python的Web應用開發(fā)實戰(zhàn)[M].北京:人民郵電出版社,2015.

      [5]廖天成,王 博,何化石.運輸全過程管理系統(tǒng)中列車運行圖數(shù)據(jù)接口的設計與實現(xiàn)[J].鐵路計算機應用,2013, 22(2):24-26.

      責任編輯 王 浩

      Web Service technology applied to access railway Intranet through Internet

      YANG Jingang,LIU Jun,GAO Xiaosong,SHI Huilei
      ( Institute of Information Technology,Harbin Railway Administration,Harbin 150006,China)

      This article made a research and exploration on Web Service technology to access railway Intranet through Internet,proposed a general method of crossing the railway safety platform through the analysis of the principle and structure of the railway safety platform,pointed out some shortcomings of the method.Based on the actual project of Harbin Railway Administration,an implementation method was given to access the internal resources agent program through Internet.The agent program achieved the confguration and zero programming to access resources of railway Intranet through Internet.

      security platform;Web Service;digital certifcate;token;proxy

      U29∶TP393

      A

      1005-8451(2016)10-0059-05

      2016-05-06

      哈爾濱鐵路局科研項目課題(KWH2015063)。

      楊金剛,高級工程師;劉 軍,高級工程師。

      猜你喜歡
      令牌日志路由
      稱金塊
      一名老黨員的工作日志
      華人時刊(2021年13期)2021-11-27 09:19:02
      扶貧日志
      心聲歌刊(2020年4期)2020-09-07 06:37:14
      基于路由和QoS令牌桶的集中式限速網關
      探究路由與環(huán)路的問題
      動態(tài)令牌分配的TCSN多級令牌桶流量監(jiān)管算法
      計算機工程(2018年8期)2018-08-17 00:26:54
      游學日志
      PRIME和G3-PLC路由機制對比
      WSN中基于等高度路由的源位置隱私保護
      計算機工程(2014年6期)2014-02-28 01:25:54
      eNSP在路由交換課程教學改革中的應用
      河南科技(2014年5期)2014-02-27 14:08:56
      巴青县| 搜索| 邢台县| 镇雄县| 沿河| 新营市| 萍乡市| 玛多县| 连城县| 叶城县| 海林市| 五莲县| 泾阳县| 廊坊市| 平潭县| 平乐县| 云阳县| 达日县| 南溪县| 阿坝县| 贵港市| 阳西县| 商丘市| 获嘉县| 淅川县| 塔河县| 河北省| 玛纳斯县| 隆林| 留坝县| 饶平县| 偃师市| 平潭县| 蓬安县| 修水县| 柳河县| 湟源县| 电白县| 鄂尔多斯市| 同江市| 永修县|