如何规避 Silverlight 跨域安全法?
这一点是我需要绕过跨域调用 - 浏览器或客户端 - 当它配置为每个托管在服务器上的客户端访问策略文件时允许的。
无论如何?文章?库?
如何规避 Silverlight 跨域安全法?
这一点是我需要绕过跨域调用 - 浏览器或客户端 - 当它配置为每个托管在服务器上的客户端访问策略文件时允许的。
无论如何?文章?库?
其他海报已经回答了你的问题——或者更确切地说,你应该问的问题——所以我可能在浪费我的呼吸。
但它可能会有所帮助 - 不仅可以帮助我们阅读您的问题,还可以帮助您自行解决问题 - 如果您尝试以更有用的方式重新构建它。与其问“我如何做 X”,其中 X 是无法通过设计完成的,您应该问:“除了 X 设计之外,还有哪些替代方案?”
在这种情况下,Silverlight 跨域限制是一项旨在无法逃避的安全功能(正如 rjmunro 指出的那样,即使有办法绕过它,您也不想在其上构建产品,因为它几乎肯定会在未来关闭)。
还有另一个原因要问自己可以扮演相同角色的替代方案:这个问题将您的注意力集中在跨域限制的安全目的上。如果您问自己如何“规避”跨域限制,您可能会说:“啊哈!我可以设置一个对所有人开放的简单网络代理!” 不幸的是,这允许任何人逃避跨域限制并在您的代理上下文中执行。
通过询问“有哪些替代方案可以替代不可能的跨域调用”,您(希望)提醒自己为什么存在跨域策略,并且(希望)考虑您实施的任何替代方案的安全隐患。
通常,我认为您可以在服务器上使用 Web 服务来处理此问题。您应该使您传递给您的 Web 服务的内容非常具体。不要让 Web 服务仅采用通用 URL,否则您可能会使 Web 服务处于开放状态以被利用。
查看 silverlight 网站上关于跨域策略文件的以下主题:
http://silverlight.net/learn/videos/all/how-to-use-cross-domain-policy-files-with-silverlight/
在您控制的服务器上使用某种代理 - 即您的最终用户连接到并且本身连接到网络的服务。
根据定义,任何其他答案几乎都是利用将在 Silverlight 的未来版本中修补的漏洞。