【问题标题】:How to evade Silverlight cross-domain security law?如何规避 Silverlight 跨域安全法?
【发布时间】:2010-12-16 21:40:28
【问题描述】:

如何规避 Silverlight 跨域安全法?

这一点是我需要考虑的 跨域调用 - 浏览器或客户端 - 根据服务器上托管的客户端访问策略文件配置时允许。

有什么办法吗? 文章? 库?

【问题讨论】:

    标签: c# silverlight-3.0 crossdomain.xml clientaccesspolicy.xml


    【解决方案1】:

    通常我认为您可以使用服务器上的 Web 服务来处理此问题。您应该使您传递给您的 Web 服务的内容非常具体。不要让 Web 服务仅采用通用 URL,否则您可能会使您的 Web 服务处于开放状态以被利用。

    查看 silverlight 网站上关于跨域策略文件的以下主题:

    http://silverlight.net/learn/videos/all/how-to-use-cross-domain-policy-files-with-silverlight/

    【讨论】:

      【解决方案2】:

      在您控制的服务器上使用某种代理 - 即您的最终用户连接到并且本身连接到网络的服务。

      根据定义,任何其他答案几乎都是利用将在 Silverlight 的未来版本中修补的漏洞。

      【讨论】:

        【解决方案3】:

        其他发帖人已经回答了你的问题——或者更确切地说,你应该问的问题——所以我可能是在浪费我的呼吸。

        但它可能会有所帮助 - 不仅可以帮助我们阅读您的问题,还可以帮助您自行解决问题 - 如果您尝试以更有用的方式重新构建它。与其问“我如何做 X”,其中 X 是无法通过设计完成的,您应该问:“除了 X 设计之外,还有哪些替代方案?”

        在这种情况下,Silverlight 跨域限制是一项旨在无法逃避的安全功能(正如 rjmunro 指出的那样,即使有办法绕过它,您也不希望在此基础上构建产品它,因为它几乎肯定会在未来关闭)。

        还有另一个原因要问自己可以扮演相同角色的替代方案:这个问题将您的注意力集中在跨域限制的安全目的上。如果您问自己如何“规避”跨域限制,您可能会说:“啊哈!我可以设置一个对所有人开放的简单网络代理!”不幸的是,这允许 任何人 规避跨域限制并在您的代理上下文中执行。

        通过询问“除了执行不可能的跨域调用,还有哪些替代方案”,您(希望)提醒自己为什么存在跨域策略,并且(希望)考虑您实施的任何替代方案的安全隐患。

        【讨论】:

          猜你喜欢
          • 2010-09-30
          • 1970-01-01
          • 1970-01-01
          • 2013-09-08
          • 2011-10-29
          • 2020-01-19
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          相关资源
          最近更新 更多