【问题标题】:How can I fix a Flash security error #2048如何修复 Flash 安全错误 #2048
【发布时间】:2013-01-31 20:17:32
【问题描述】:

我在 Flash #2048 中遇到错误。我能找到的一切都表明这是一种安全预防措施,因为文件不在同一个域中。

我们有一个在 Rackspace 云服务器上运行的站点,现在正尝试使用云文件 CDN 来加速我们在站点上使用的产品轮换工具。您可以使用位于我们服务器上的文件以及我的演示来查看当前的工作工具,我在演示中切换了链接以反映云文件而不是本地文件。 (编辑:我已经删除了演示站点的链接,因为它们不再相关。)

我找到的解决方案似乎是根据this stackoverflow question添加几行代码。

从上面的 Stackoverflow 问题的回答中,我实现了以下代码:

allowscriptaccess = "always"
allownetworking = "all"

如我们的模板文件中所述。我担心的是列出的修复的第一部分。

<site-control permitted-cross-domain-policies="all"/>

我相信这在 crossdomain.xml 文件中。我创建了这个文件并将其放在根文件夹中,并使用了来自this documentation page 的代码。我使用了以下代码。

<?xml version="1.0"?>
<!DOCTYPE cross-domain-policy SYSTEM "http://www.adobe.com/xml/dtds/cross-domain-policy.dtd">

<cross-domain-policy>
  <site-control permitted-cross-domain-policies="master-only"/>
  <allow-access-from domain="*" secure="false" />
  <allow-http-request-headers-from domain="*" headers="*"/>
</cross-domain-policy> 

在这一切之后,我仍然收到错误 #2048。非常感谢您提供的任何帮助,谢谢!

【问题讨论】:

  • 请注意,将所有内容放在一起是不好的做法,因为这会使您的网站容易受到基于 Flash 的 XSS 的攻击。请不要将其投入生产。
  • 感谢您的提示,我已经编辑了上面的代码以反映此更改。

标签: flash security crossdomain.xml


【解决方案1】:

Thomas,您将 crossdomain.xml 放在哪个服务器上?

crossdomain.xml 文件属于提供数据的服务器。因此,如果您的 Flash 应用程序正在您的服务器上运行,并且它尝试从某个其他域下载数据......其他域需要提供一个 crossdomain.xml 文件。

根据您在链接到的其他 StackOverflow 问题中的评论,听起来您将 crossdomain.xml 放在自己的服务器上。通过这样做,您是说托管在其他网站上的 Flash 应用程序可以从您的网站获取数据。相反,您需要在 CDN 站点上放置一个 crossdomain.xml 文件,该文件授权其他域(如您自己的域)中的 Flash 应用程序访问 CDN 上的数据。

【讨论】:

    猜你喜欢
    • 2015-11-28
    • 2015-03-22
    • 2015-05-15
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多