东直门 美术馆 请问:空间信息共享关键因素之安全

来源:百度文库 编辑:偶看新闻 时间:2024/05/01 14:29:09

空间信息共享关键因素之安全

——ArcGIS Server安全策略

 

空间信息共享主要面对的用户有三类:社会公众、企事业和政府部门。不用的用户对空间信息的需求不同,共享的途径和使用方式也不尽相同,即使是政府的不同职能部门对空间信息的需求也有很大差别。然而复杂的事情本质上往往又很简单:空间信息共享就是让用户能够以“服务”的方式,安全、稳定、方便地使用各类空间数据和分析功能。因此,如何有效解决好平台的安全性、稳定性、服务多样性以及开放能力是空间信息共享平台建设的四个关键因素。作为企业网络系统组成部分的空间信息共享平台,根据空间数据及功能模型的敏感程度,合理地评估其安全级别,综合进行风险分析,制定完整的安全控制体系和保证体系,是首要考虑的因素。

安全控制主要包括物理访问控制和逻辑访问控制。物理访问控制主要是指对网络中任何节点的物理访问进行限制,如数据链路、路由器等;逻辑访问控制主要是指通过识别用户,将特定用户限定在被授权的活动和资源范围内。ArcGIS Server提供了丰富、完善的安全策略,既可以阻止非授权用户访问服务资源或应用程序,又可以将用户分成组,提供不同层次的访问控制。ArcGIS Server的安全策略包括以下几方面。

1. 服务器整体保护策略

整体保护策略包括硬件、软件的保护,以及在企业已有的安全架构内运行ArcGIS Server。企业通常都会有防火墙隔离内网和外网,ArcGIS Server一般都在企业防火墙内,因此不需要在ArcGIS Server的各个组件之间再设置防火墙。防火墙适合用于检测通过开放端口出入系统的攻击,如蠕虫和一些特洛伊木马,但无法阻挡附加在电子邮件中的病毒或网络内部的威胁。因此,除防火墙外,还应一同部署其他安全策略,如防病毒软件、安全可靠的身份验证、防篡改、DDoS工具保护系统以及系统和授权技术等等。下图是Esri推荐的安全体系架构。

GIS 服务器在工作时,需要启动和停止进程、读取数据并将数据写入到文件系统中的相应位置以及在计算机之间进行通信。GIS 服务器使用三种操作系统帐户:ArcGIS 服务器对象管理器 (SOM) 帐户、ArcGIS 服务器对象容器 (SOC) 帐户和 ArcGIS Web 服务帐户。为了安全地执行这些任务,需要为相关帐号授权,但应避免赋予多余的权限。同时,当用户发送敏感数据(例如登录帐号)时,应使用SSL(Secure Sockets Layer)连接。

 

2. 本地连接保护策略

对于不同的操作系统,ArcGIS Server对本地访问权限的管理和验证模式稍有差异:对于Linux/Solaris,连接到ArcGIS服务器的本地连接是由服务器对象管理器(SOM)进行管理;对于Windows,连接到ArcGIS服务器的本地连接和GIS服务是由服务器对象管理器(SOM)所在计算机的操作系统进行管理。因此,GIS服务器管理员可以在Windows中将用户的操作系统账号添加到对服务器有访问权限的用户列表中,或在Linux/Solaris中添加到服务器对象管理器(SOM)的本地用户列表中,从而授予这些用户对GIS服务器的本地访问权限。

为了有效保护ArcGIS服务器,系统中存在两个列表:一个是对服务器上运行的服务具有使用权限的用户列表,一个是对服务器本身具有管理(即:添加、删除和修改GIS服务)权限的用户列表。由于在Windows中对服务器具有最终访问控制权的是操作系统,因此管理员可使用两个操作系统用户组(agsusers组和agsadmin组)来管理这两个用户列表,从而授权哪些用户对特定资源具有访问权限。在Linux/Solaris中,此类分组信息还可通过 ArcGIS Server管理器进行维护,管理员既可以在添加新的本地用户时分配组,也可以对用户组进行更改。

 

3. Internet连接保护策略

ArcGIS Server基于角色的访问控制(RBAC)安全模型保护GIS服务和Web程序。这个安全模型(如图所示)涉及的组件包括主存储(Principal store)、权限存储(Permission store)、令牌服务(Token Service)、受保护的GIS服务(Secured GIS services)等。

主存储用来保存用户和角色信息,ArcGIS Server支持关系数据库、目录服务器以及基于主存储API自定义的存储方式。令牌服务在做用户验证时会连接到主存储;服务处理程序(Service Handler)也会查询主存储来确定与当前发送请求的用户相关的角色信息。

权限存储用来保存角色的授权信息,保存了每个角色可以访问的GIS服务列表。权限存储有SOM维护,管理员无需自己去配置和管理,但是开发人员可通过API进行访问。

ArcGIS Server对受保护GIS服务提供两种安全认证方式:

  •  基于Web容器身份验证

采用这种认证方式,客户端需要提供身份验证凭据并将由Web容器的进行检验。服务处理程序(例如REST和Web服务处理程序)会受到在部署此类程序的Web容器的保护。大多数Web容器支持不同的身份验证方案(如 BASIC、DIGEST、客户端证书等)。

  • 基于令牌的身份验证

采用这种认证方式,客户端必须提供有效令牌才能访问启用ArcGIS Server安全保护的GIS服务。通常,客户端程序首先向ArcGIS Server的令牌服务(Token Service)提供用户凭据请求令牌,令牌服务对用户凭据进行验证通过后会颁发一个令牌,该令牌中包含了用户的各类信息,服务处理程序可以处理令牌并对客户端用户进行权限认证。

当客户端应用程序尝试访问受保护的 ArcGIS Web 服务时会依次发生以下事件:

a) 客户端发出访问受保护的ArcGIS Web服务的请求。

b) ArcGIS Web服务做出响应要求使用令牌,同时将提供令牌服务的URL。

c) 客户端提供有效的用户名和密码向令牌服务请求令牌。

d) 令牌服务验证用户名和密码,如果它们有效,则向客户端返回令牌。

e) 客户端发出访问受保护的ArcGIS Web服务的请求,这次请求中包含令牌。

f) ArcGIS服务验证令牌,然后将对服务请求的响应发送回客户端。

 

基于令牌的认证方式提供了一些特殊的角色(匿名、已验证、任何人),可以很方便地为服务和文件夹设定访问权限。这些角色对ArcGIS Server的安全模块有特殊的意义,它们不保存在安全存储中:

  •  匿名(Anonymous):不需要提供授权信息就可以访问服务。
  • 已验证(Authenticated):只要提供正确的授权信息就可以访问服务(不一定要求具有某个角色)。
  • 任何人(Everyone):任何用户(匿名用户或已验证用户)都可以访问服务。

总结

安全是任何信息系统都需要面对的问题,如何在用户可承受的风险和成本之间寻求平衡,制定合理、完善、高效的安全策略,最大程度地保证系统的稳定和各类信息资源的安全,是系统建设的首要任务。ArcGIS Server提供了丰富、完善的安全访问机制,为空间信息系统建设奠定了坚实基础,灵活运用这些的安全策略,可以极大地提高空间信息的安全性。同时,ArcGIS Server还提供了灵活的安全扩展API,使用户能够实现个性化或更深入的安全访问控制。

 

(作者:李斌)