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

0
分享 2013-07-22
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中,如果要使用跨域访问限制,则需要先安装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发布的一个切片地图服务。


首先对部署好的crossdomain.xml文件进行修改,如下图所示:


然后到虚拟机ags-01中打开应用进行访问,结果如下:


再次修改crossdomain.xml文件,允许ags-01机器访问,如下图:


然后到虚拟机ags-01中刷新应用进行访问,结果如下(可能需要清空浏览器缓存):


这样就实现了对访问机器来源的限制,可以是特定机器或域。访问源的限制结合前两篇博客介绍的用户权限控制及Token使用,就可以从来源,到访问过程多个层面进行安全控制,从而确保资源的安全。

文章来源:http://blog.csdn.net/esrichinacd/article/details/7973825

0 个评论

要回复文章请先登录注册