对某些路径更严格的 crossdomain.xml 政策

More restrictive crossdomain.xml policy for some paths

假设我有一个具有典型 "very permissive" 政策的网站 (example.com):

<cross-domain-policy>
<allow-access-from domain="*" secure="false"/>
</cross-domain-policy>

这曾经很好,因为该网站仅包含 public 数据。但是现在,我添加了路径“http://example.com/sensitive”,其中可能包含一些关于用户浏览我网站的稍微敏感的信息。我想为它制定更严格的政策,例如:

<cross-domain-policy>
<allow-access-from domain="*.example.com"/>
</cross-domain-policy>

假设我把这个 "crossdomain.xml" 放在“http://example.com/sensitive”中,我也像这样修改根策略:

<cross-domain-policy>
<allow-access-from domain="*" secure="false"/>
<site-control permitted-cross-domain-policies="by-content-type"/>
</cross-domain-policy>

够了吗?我不明白 "child policy" 是否实际上可以比根策略更严格 - 即它是在 Flash 客户端的纬度上加载子策略,还是始终加载并强制执行?

找到答案,记录在这里以备不时之需。

您不能使子路径策略比主策略更严格(嗯,从技术上讲可以,但是 .swf 应用程序需要从代码中显式加载子策略,所以如果子策略更严格,它不是真正可执行的)。

你能做的就是移动你的“http://example.com/sensitive" path to something like "http://sensitive.example.com/”;在这种情况下,您可以对 sensitive.example.com 设置更严格的 crossdomain.xml 策略,Flash Player 将强制执行该策略。