首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 网站开发 > CGI >

ArcGIS 10.1 for Server 保险机制(3)跨域访问限制

2012-09-16 
ArcGIS 10.1 for Server 安全机制(3)跨域访问限制1限制访问源在实际应用中,常常会遇到如下的需求:1)GIS资

ArcGIS 10.1 for Server 安全机制(3)跨域访问限制
1  限制访问源

在实际应用中,常常会遇到如下的需求:

1)       GIS资源只允许某个部门里的机器访问;

2)       GIS资源只允许参与该项目的个别机器访问;

通过这样的限制,能够使得GIS资源只被可信来源的应用访问,增强GIS资源的安全性。在ArcGIS 10.1 forServer中,通过跨域访问限制来达到这个目的。

2  跨域访问策略

跨域访问限制,是通过编辑跨域访问策略文件来实现的。常见的跨域访问策略文件有Flex和Silverlight通用的crossdomain.xml和Silverlight专用的clientaccesspolicy.xml。关于跨域访问策略文件内容和部署位置等知识,可以参考Flex或Silverlight开发帮助。

通过在上述文件中添加允许请求的域名或机器名,就可以实现对访问源的限制。例如,网易的跨域访问文件(http://www.163.com/crossdomain.xml)内容如下:
ArcGIS 10.1 for Server 保险机制(3)跨域访问限制

在ArcGIS 10.1 for Server中,如果要使用跨域访问限制,则需要先安装ArcGIS Server Adaptor(for IIS或for Java),本例中安装了Adaptorfor IIS,然后在C:\inetpub\wwwroot目录下部署crossdomain.xml文件。

3 示例效果示例使用了两台机器,一台是本机esri-huangd,另一台是虚拟机ags-01。在ags-01上面部署了一个使用ArcGISFlex API开发的简单地图应用,调用esri-huangd发布的一个切片地图服务。
ArcGIS 10.1 for Server 保险机制(3)跨域访问限制
首先对部署好的crossdomain.xml文件进行修改,如下图所示:
ArcGIS 10.1 for Server 保险机制(3)跨域访问限制
然后到虚拟机ags-01中打开应用进行访问,结果如下:
ArcGIS 10.1 for Server 保险机制(3)跨域访问限制
再次修改crossdomain.xml文件,允许ags-01机器访问,如下图:
ArcGIS 10.1 for Server 保险机制(3)跨域访问限制
然后到虚拟机ags-01中刷新应用进行访问,结果如下(可能需要清空浏览器缓存):
ArcGIS 10.1 for Server 保险机制(3)跨域访问限制
这样就实现了对访问机器来源的限制,可以是特定机器或域。访问源的限制结合前两篇博客介绍的用户权限控制及Token使用,就可以从来源,到访问过程多个层面进行安全控制,从而确保资源的安全。

热点排行