如果我将某个站点添加到受信任的站点区域,并且该站点具有来自 Internet 区域站点的脚本,那么它将如何处理从不同区域的站点加载的内容?
它会将页面上的所有内容视为来自不太信任的区域吗?还是更信任的区域?还是会根据每个域来处理脚本?
我之所以问这个问题,是因为我有一个网站需要特定的脚本才能被信任,但是它有来自许多其他网站的资源。
答案1
这些脚本似乎是按域处理的。因此,每个域的脚本都会根据其所在的区域被阻止或运行。
我写了一个测试页面。rr() 和 qq() 都与内联脚本相同。通过在区域之间移动域,很容易看到有些被阻止,有些则没有。
<html>
<!-- Put yourjavascript.com temporarily into the untrusted zone -->
<script src="https://code.jquery.com/jquery-2.2.3.min.js"></script>
<script type="text/javascript" src="http://yourjavascript.com/51158106415/scare.js"></script>
<script type="text/javascript" src="script.js"></script>
<p id="one">Inline Script <span>Blocked</span></p>
<p id="two">Local Script <span>Blocked</span></p>
<p id="three">Trusted Script <span>Blocked</span></p>
<p id="four">Untrusted Script <span>Blocked</span></p>
<script>
//inline
document.getElementById('one').getElementsByTagName('span')[0].innerHTML = "Allowed";
</script>
<script>
//local
rr();
</script>
<script>
//trusted
$('#three span').html("Allowed");
</script>
<script>
//untrusted
qq();
</script>
</html>