1. 程式人生 > >企業級 GIS 安全性(二)——應用程式安全性

企業級 GIS 安全性(二)——應用程式安全性

本部分主要是針對系統架構人員設定的,幫助他們瞭解特定的 Esri 應用程式架構和產品的安全選項。

ArcGIS 技術目前廣泛應用於商業環境和機密環境中的安全性解決方案。Esri 將繼續對產品進行配置和測試,以便輕鬆整合到企業安全解決方案 - 通常與其他提供/啟用安全性功能的產品協同工作。其中包括針對資料保密性和資料訪問控制的關係型資料庫管理系統 (RDBMS),針對強驗證的輕量級目錄訪問協議 (LDAP) 和單點登陸 (SSO) 系統,以及針對資料完整性的防火牆和入侵檢測系統。Esri 還在其事務管理產品中加入了不可否認性。

在典型的企業解決方案中,許多安全性服務將由託管 GIS 應用程式的底層 IT 基礎架構提供。Esri 努力確保企業架構在發揮 Esris 產品的強大功能的同時,能夠充分利用資料管理和身份驗證技術方面的進展。

GIS 解決方案的安全性包括以下幾個基本層面:

  • 系統安全性
  • 本地連線安全性
  • Web 服務安全性
  • Web 應用程式安全性


----------------------------------------------------------------------------------

版權所有,文章允許轉載,但必須以連結方式註明源地址,否則追究法律責任!

From:                              resources.arcgis.com

Blog:               http://blog.csdn.net/linghe301

----------------------------------------------------------------------------------



富客戶端應用程式的安全性


傳統意義上,ArcGIS 富客戶端應用程式架構涉及執行在客戶端桌面上的使用者介面(ArcInfo、ArcEditor、ArcView、ArcEngine 和 ArcGIS Explorer)與由 ArcGIS Server 利用位於一個或多個伺服器上的 ArcSDE 技術管理的核心資料來源 (RDBMS) 兩者之間的互動。應用程式邏輯可執行在 ArcSDE/資料庫伺服器或 ArcGIS 客戶端上。

安全問題涉及一系列需要關注的事項,包括保護敏感資料、使用者身份驗證和授權,保護系統免受來自惡意程式碼和使用者的攻擊以及稽核和記錄事件和使用者活動。為解決這些問題,ArcGIS 集成了可提供基礎性服務的行業標準和技術。您可使用業內的最佳做法保護這些服務,同時不影響到 ArcGIS 的正常執行。

常規的富客戶端安全準則:

  • 確定用於驗證使用者身份的技術和方法,包括為單個富客戶端應用程式例項提供多使用者支援。您應考慮到使用者的登入方式和登入時間、是否需要支援具有不同許可權(例如管理員和標準使用者)的不同型別使用者(不同角色),以及如何記錄成功和失敗的登入。還應考慮對斷開連線或離線身份驗證的相關需求。
  • 如果使用者必須能夠以同一憑據或身份標識訪問多個應用程式,則可考慮採用單點登入 (SSO) 或聯合身份驗證解決方案。您可通過註冊到一個提供了聯合身份驗證的外部代理實現適當的解決方案,使用證書系統,或者為所在組織機構建立自定義的解決方案。
    • 可創造性地將 Windows 整合身份驗證與 ArcGIS 富客戶端相結合以用於 SSO 使用者體驗。
  • 考慮您將如何保護應用程式和資源(例如應用程式所使用的檔案、快取和文件)中儲存的資料。加密可能暴露的敏感資料並考慮使用數字簽名來防止發生篡改。在高安全性應用程式中,請考慮加密儲存在記憶體中的易失資訊。另外,還要記住保護應用程式通過網路或通訊通道傳送的敏感資訊。
  • 考慮您將如何對應用程式實現稽核和日誌記錄,以及確定要在這些日誌中包含的資訊。請記住可通過加密保護日誌中的敏感資訊,也可為易遭篡改的大多數敏感型別資訊使用數字簽名。
  • 考慮選擇適當的客戶端/伺服器 ArcGIS 通訊協議
    • 直連
      • 目前在富客戶端和資料庫伺服器之間最常用的通訊機制
      • 將標準 SQL 協議通訊與資料庫伺服器配合使用
      • 允許通過將標準資料庫供應商解決方案與 SSL 或 IPSec 配合使用來保護客戶端和資料庫系統之間的通訊安全
    • 應用程式連線
      • 客戶端和伺服器之間的專有通訊協議
      • 某些客戶更傾向於使用這種解決方案,以避免將資料庫客戶端軟體部署到富客戶端計算機
    • 為 ArcGIS Server 提供的 Web 服務介面

利用實現富客戶端安全的 ArcGIS Server 令牌

  • 使用者向連線對話方塊中輸入有效的使用者名稱和密碼。
  • 如果未輸入使用者名稱或密碼,或者登入不正確,軟體會提示使用者輸入正確的憑據。
  • 輸入正確的使用者名稱和密碼後,使用者即可正常使用服務。

富客戶端安全的自定義開發

桌面應用程式的安全可通過使用自定義控制元件擴充套件來改進。

  • 實現諸如標識管理 (IM) 和訪問控制之類的技術,並提供能夠限制授權使用者可執行的 ArcGIS 客戶端操作(編輯、複製、儲存和列印)的能力
  • 使用 ArcObjects 開發介面進行開發

----------------------------------------------------------------------------------

版權所有,文章允許轉載,但必須以連結方式註明源地址,否則追究法律責任!

From:                              resources.arcgis.com

Blog:               http://blog.csdn.net/linghe301

----------------------------------------------------------------------------------


移動應用程式

移動裝置往往是單使用者裝置,除了簡單的密碼外,通常缺少基本的使用者配置檔案和安全性跟蹤。其他的常規桌面機制也可能丟失。移動裝置通過協議進行搜尋的能力(如藍芽功能)可能給使用者帶來意外情況。移動應用程式尤其會面臨連線中斷帶來的挑戰。要考慮到所有可能的連通性情況,是無線連線還是有線連線。

一般性移動應用程式安全準則:

即使您使用相同的工具,也不要主觀地認為在較大型平臺(如 Windows XP)上可用的安全機制在移動平臺上也可用。例如,訪問控制列表 (ACL) 在 Windows Mobile 中不可用,因此不存在作業系統級別的檔案安全性。

保護移動解決方案需主要考慮以下幾點:

保護伺服器

  • 遵循標準伺服器硬化建議

保護通訊管道

  • 如果您要支援 GIS 資料的無線/外業同步,您需要確保 DMZ 外部的伺服器可以訪問。為應對該需求,使用者通常要實現 2 個解決方案:
    • 使用反向代理
    • 完全託管在 DMZ 上的伺服器
  • 為無線同步、底座插入同步、藍芽搜尋和本地 SD 卡幾種情況設計身份驗證。
  • 確保對通過藍芽裝置進行的訪問進行身份驗證。
  • 在移動應用程式圖層中標出信任邊界;例如,客戶端與伺服器之間或伺服器與資料庫之間。這樣有助於您確定進行身份驗證的位置及方式。
  • 從資料的角度來看,外業專案很少能在生產地理資料庫上完成。多數情況下,先建立複本,然後將複本中的資料提供給移動使用者。這樣做是出於兩個原因:
    • 隔離編輯
    • 外業使用需要變換資料模型。

保護移動快取

  • 如果您正使用“移動 ADF”建立自定義應用程式,則可應用“密碼術”加密快取。
    • 許多使用者主要以保護裝置為主。

保護移動裝置

針對特定 Esri 移動產品的安全準則摘要:

ArcPad

  • 密碼保護和加密 AXF 資料檔案
  • 加密移動裝置記憶體卡
  • 通過使用者和組對可釋出 ArcPad 資料的人員範圍進行限制,以保護您的 ArcGIS Server 環境
  • 保護用於同步 ArcPad 資料的 Internet 連線

ArcMobile


----------------------------------------------------------------------------------

版權所有,文章允許轉載,但必須以連結方式註明源地址,否則追究法律責任!

From:                              resources.arcgis.com

Blog:               http://blog.csdn.net/linghe301

----------------------------------------------------------------------------------



Web 應用程式的安全性

安全性對於保護 Web 應用程式資料和資源的完整性和隱私至關重要。您應為 Web 應用程式設計一種保護策略,此策略採用一套經測試並且驗證成功的安全方案,並通過實現身份驗證、授權和資料驗證等手段來保護應用程式免受一系列威脅。

Web 應用程式的常規安全準則

  • 考慮通過實現一種強身份驗證機制來限制資源的訪問並保護業務邏輯。
    • 第三方企業級單點登入解決方案可作為 ArcGIS web 應用程式服務的身份驗證和身份驗證閘道器
  • 考慮在每一信任邊界處都使用輸入驗證和資料驗證,以減少跨站點指令碼執行和程式碼注入之類的安全威脅。
  • 不要僅依賴客戶端驗證。還要使用伺服器端驗證。
  • 考慮對任一經由網路傳送的敏感資料進行加密
    • 基本安全解決方案著重於加密使用者名稱/密碼資訊
    • 高階安全解決方案著重於加入數字簽名 (PKI)

應用程式開發框架 (ADF) Web 應用程式安全指導

ArcGIS Server 為基於 ADF 的 web 應用程式提供了即用的安全性,您無需進行任何程式設計。採用 ASP.NET 和 JavaEE 的 Web 應用程式的安全配置可通過 ArcGIS 管理器自動執行。

富 Internet 應用程式 (RIA) 安全準則

對於基於較新的 RIA 技術的 REST API(例如 Javascript、Flex 和 Silverlight)Web 應用程式,Esri 提供了多個可加快開發進度的有關安全的程式碼段/示例。由於執行在瀏覽器的沙箱內,RIA 應用程式(例如 Flex 和 Silverlight)減少了各種常見的攻擊向量。不過,如果要將程式碼部署到客戶端瀏覽器上,則應考慮超出基本 web 應用程式以外的其他安全準則:

  • 應用程式執行在瀏覽器的沙箱內,佔用與其他應用程式相隔絕的記憶體空間。
  • 對於本地客戶端檔案系統的瀏覽受到限制。
  • 限制對專門的本地裝置(如網路攝像頭)的訪問。
  • 限制對除應用程式所在域以外的其他域的訪問,從而保護使用者免受跨站點指令碼的攻擊

    • 這可通過位於 Web 伺服器根目錄中針對 Flash 的 CrossDomain.xml 和針對 SilverLight 的 ClientAccessPolicy.xml 來實現
    • Esri 跨域指導

  • 下載客戶端上使用的敏感業務邏輯時,請務必慎重。因為當前已存在一些工具能夠提取所下載的 XAML 瀏覽器應用程式 (XBAP) 和 Shockwave Flash (SWF) 檔案中的邏輯。

    • 使用 Web 服務實現敏感業務邏輯。
    • 如果出於效能考慮,必須要將邏輯置於客戶端,請研究和利用任何可用的模糊處理方法。

    • 為了將敏感資料處於客戶端的時間縮至最短,請利用資源的動態載入功能,並覆蓋或清除瀏覽器快取中包含敏感資料的元件。

針對基於 REST 的應用程式的 ArcGIS 安全令牌指導

  • 對於安全性解決方案,將服務的使用者名稱和密碼嵌入客戶端 JavaScript 中的做法並不合適。
  • 可以從令牌伺服器獲取長期令牌,而且此令牌可包含在客戶端頁面中。隨後此令牌將被包含在服務請求中。
    • 長期令牌通常不適用於“基本 GIS 安全模式”以外的解決方案需求,這是由於可能存在重複攻擊造成的,攻擊者可截獲資料並將其(例如允許訪問的令牌)重新傳輸。

----------------------------------------------------------------------------------

版權所有,文章允許轉載,但必須以連結方式註明源地址,否則追究法律責任!

From:                              resources.arcgis.com

Blog:               http://blog.csdn.net/linghe301

----------------------------------------------------------------------------------


服務安全性

當通過服務暴露業務功能時,必須在保護業務規則、資料和功能方面發揮作用。安全問題涉及一系列需要關注的事項,包括保護敏感資料、使用者身份驗證和授權,保護系統免受來自惡意程式碼和使用者的攻擊以及稽核和記錄事件和使用者活動。

服務安全的常規準則

  • 最常見的服務安全機制目前是傳輸層安全性(例如 SSL)。
  • 改進使用者在“高階安全性”中的身份驗證需要公鑰基礎設施 (PKI) 環境
    • 對於基於 extranet 和 intranet 的解決方案,您可以使用通過基於組織的證書服務頒發的證書。
    • 對於業務至業務 (B2B) 服務和常用公共服務,證書應由商業證書頒發機構頒發。
  • 如果服務通過其他伺服器,則考慮實現基於訊息的安全性。這是因為,使用傳輸層安全性保護的訊息在每次通過其他伺服器時,該伺服器會對該訊息進行解密,然後在重新加密後再將其傳送到下一個伺服器。

      相關推薦

      企業級 GIS 安全性——應用程式安全性

      本部分主要是針對系統架構人員設定的,幫助他們瞭解特定的 Esri 應用程式架構和產品的安全選項。 ArcGIS 技術目前廣泛應用於商業環境和機密環境中的安全性解決方案。Esri 將繼續對產品進行配置和測試,以便輕鬆整合到企業安全解決方案 - 通常與其他提供/啟用安全性功能的產品協同工作。其中包

      Flume NG原始碼分析應用程式使用的RpcClient設計

      上一篇Flume NG原始碼分析(五)使用ThriftSource通過RPC方式收集日誌 介紹了ThriftSource利用Thrfit服務ThriftSourceProtocol來收集日誌。這篇說說flume-ng-sdk中提供給應用層序使用的RpcClient的設計和實現。繼續使用ThriftR

      WPF模板應用

      hiera 性能 bject present yellow loaded reg msd margin 原文:WPF模板(二)應用 本次內容來源於電子書,和上一篇一樣。 在WPF中有三大模板ControlTemplate,ItemsPanelTempla

      企業級 SpringCloud 教程 服務消費者rest+ribbon

      一、ribbon簡介 Ribbon is a client side load balancer which gives you a lot of control over the behaviour of HTTP and TCP clients. Feign already uses Ribbo

      企業級 SpringBoot 教程 Spring Boot配置檔案詳解

      springboot採納了建立生產就緒Spring應用程式的觀點。 Spring Boot優先於配置的慣例,旨在讓您儘快啟動和執行。在一般情況下,我們不需要做太多的配置就能夠讓spring boot正常執行。在一些特殊的情況下,我們需要做修改一些配置,或者需要有自己的配置屬性

      MPI學習之路程式編譯

      [email protected]:~/wmw$ mpicc -o try_mpi1 try_mpi1.c [email protected]:~/wmw$ mpiexec -n 1 ./try_mpi1 Hello World! Process 0 of 1 on them

      EMV規範學習與研究——應用選擇

      應用選擇的目的是給正在執行的交易選擇一個應用。首先建立應用候選列表,然後從候選列表選擇一個應用。應用選擇有兩種方法: 目錄選擇法: 終端使用SELECT命令選擇檔名為‘1PAY.SYS.DDF01’的支付系統環境而開始,由此建立支付系統環境並進入初始目錄。卡片返回短檔案識

      SpringBoot應用程式的監控SpringBoot Admin客戶端

      一、pom.xml依賴 <!-- spring boot -->         <dependency>             <groupId>org.spr

      Spring Cloud系列 應用監控與管理Actuator

      前言:要想使用Spring Cloud ,Spring Boot 提供的spring-boot-starter-actuator模組是必須瞭解的,這篇文章就先介紹一下actuator的使用。        由於我們把一個複雜高耦合的單體系統拆分成了多個小型服務,所以部署應用

      【Android應用開發】-9應用程式安裝解除安裝原理

      本文粗體部分來自網路上的一篇文章,已不知出處,知道的告知,在此謝謝原作者。引出安裝解除安裝的原理之前,先實現一個簡單的安裝解除安裝應用程式的功能。文章是我之前寫的一篇部落格,這裡就不在敘述,只補充幾點: 1、由於程式碼中用到了PackageInstallObserver,PackageInstallObse

      編譯原理學習筆記翻譯程式的實現

      上一節所學的主要是語法到語義的內容,通過手動構造語法樹來理解編譯過程。 在3.5節,書中給出了字尾表示式翻譯程式的java實現。根據前面的內容,今天對NC程式碼編譯給出簡易的實現。 在實現前,需要幾個準備內容用以簡化程式碼: 1. 正則表示式 正則表示式

      Asp.Net底層解析——應用程式生命週期與HttpModule

          前言:一般ASP.NET開發者對頁面生命週期(PageLife Cycle)是比較熟悉的,在開發ASP.NET應用程式中經常需要從頁面週期的角度去思考問題。實際上在頁面生命週期的背後,還存在著一個不太為人所熟知的更廣義的週期——應用程式生命週期(Applicatio

      Android Sprd省電管理應用省電模式設定流程

      在Android Sprd省電管理(一)appPowerSaveConfig.xml,我們介紹了appPowerSaveConfig.xml的主要引數的意義,這一篇我們介紹下,怎麼設定應用的各種省電模式 首先看SprdManageApplications這個類 以鎖屏清理為例,點選開關

      ASP.NET Core 中文文件 第三章 原理1應用程式啟動

      ASP.NET Core 為你的應用程式提供了處理每個請求的完整控制。Startup 類是應用程式的入口(entry point),這個類可以設定配置(configuration)並且將應用程式將要使用的服務連線起來。開發人員可以在 Startup 類中配置請求管道,該管道將用於處理應用程式的所有請求。 章

      Mybatis學習筆記--入門程式

      1.下載Mybatis包 mybaits的程式碼由github.com管理 下載地址:https://github.com/mybatis/mybatis-3/releases 選擇對應的版本下載 下載後解壓mybatis後 2.環境搭建 2.1 建立工程

      深入理解計算機系統-之-數值儲存--C程式列印變數的每一位元組或者位

      大端與小端 前面我們提到了依據CPU端模式的不同,資料的儲存順序也不一樣。 採用大小模式對資料進行存放的主要區別在於在存放的位元組順序,BE big-endian 大端模式 ,最直觀的位元組序 ,地址低位儲存值的高位,地址高位儲存值的低位 ,不需要考慮對

      Android深入四大元件應用程式啟動過程

      前言 在此前的文章中,我講過了Android系統啟動流程和Android應用程序啟動過程,這一篇順理成章來學習Android 7.0的應用程式的啟動過程。分析應用程式的啟動過程其實就是分析根Activity的啟動過程。 1.Launcher請求A

      linux c/c++ 程式設計shell程式程式設計

      shell 其實是一個指令碼語言,裡面有一整套的東西,一般如果不是在linux下程式設計很少用到。本人有一整套基礎程式碼可以讓初學者學習。 這是我在2014年學習shell程式設計時寫的一套程式碼,需要的可以在我git的找到。git地址稍後貼出 希望可以幫到大家

      GIS演算法運用C#自帶的函式繪製五角星和多邊形C#

      前言: 當我們敲下第一行程式碼向計算機世界說一句—–Hello World 我們就打開了一扇通往計算機世界的大門。 計算機的世界總是充滿著未知和挑戰, 當我們的程式碼第一次出現在漆黑的控制檯; 當我們第一次實現和計算機的互動; 當我們第一次完成自己的

      hadoop叢集的搭建指令碼及構思程式檔案的管理思路

      安裝了幾次hadoop系統後終於開始有了一點感覺,對程式檔案的管理有了一點想法,這裡先記著。等搞完了再仔細地總結一下。 網路上的基本教程都是從0開始,建使用者,建目錄,拷貝壓縮包,然後再解壓,再修改配置檔案,再修改系統配置檔案;然後從一個機器(基本是master node)