每当我公司域中具有IE9的计算机导航到网站(从链接)时,我们会在访问以下任何窗口属性时收到“权限拒绝”错误对话框(styleMedia,clientInformation,screen,history,navigator, localStorage,performance,sessionStorage)。初始页面加载有效但当您有到同一页面的链接时会发生错误。
最初这在加载JQuery库时表现出来。 JQuery第一次访问window.navigator.userAgent时会发生权限被拒绝错误。
我们所有的机器都是Windows 7 64位Enterprise SP1。下面的代码可以从IIS运行,也可以直接打开.html文件。
我们无法在公司域名之外重现此问题。我们在公司环境中怀疑某些政策,但无法确定导致此问题的政策。
我们可以按如下方式解决问题:
的test.html
<html>
<head>
<title>Permission Denied</title>
</head>
<body>
<a href="test.html">Click Here</a>
<script type="text/javascript">
alert(window.navigator);
</script>
</body>
</html>
要查看所有无法访问的属性,我们可以打开此html并点击页面上的链接:
testWindow.html
<html>
<head>
<title>Permission Denied</title>
</head>
<body>
<a href="testWindow.html">Click Here</a>
<script type="text/javascript">
var deniedProperties = '';
for (var i in window) {
var obj = window[i];
if (obj == null) continue;
try {
obj._____x = 1; // Attempt to access the object and set a new value on that object.
}
catch (e) {
if (e.number == -2146828218) { // Permission Denied error number.
deniedProperties += i + '\n';
}
}
}
alert('Permission Denied:\n' + deniedProperties);
</script>
</body>
</html>
的更新
这是针对IE6问题制定的域名政策。我们通过与微软的支持人员合作发现了导致问题的政策,他们记录并分析了我在工作机器上重现问题时如何使用政策。
您可以尝试的另一个想法是在Active Directory中设置一个您具有完全修改权限的组织单位。让它继承企业的所有策略,然后使用二进制消除来阻止策略,直到找到导致问题的策略。
答案 0 :(得分:2)
我们遇到了同样的问题,发现在注册表中搜索<strong> FEATURE_OBJECT_CACHING 并设置 iexplore.exe = 1 修复了该问题。
对我们来说,这实际上是在:
HKEY_LOCAL_MACHINE \ SOFTWARE \政策\微软\互联网 资源管理器\主\ FeatureControl \ FEATURE_OBJECT_CACHING