ScriptResource.axd Доступ запрещен. Междоменный iFrame - PullRequest
4 голосов
/ 15 декабря 2009

У нас есть веб-страница, содержащая фрейм, содержащий страницу, в которой файл cookie для аутентификации имеет родительскую страницу. Например, страница iframe находится на домене foo.domain.com, а страница, содержащая iframe, находится на foo2.domain.com. Оба совместно используют файлы cookie от domain.com. Аутентификация работает отлично, но проблема с ASP.NET в IE7, мы всегда получаем ошибку JavaScript:

Доступ запрещен.

ScriptResource.axd

Мы используем ASP.NET 3.5, мы также используем Ajax Control Toolkit (последняя версия 3.0.30930.0). Проблема не возникает для IE8. Также нет проблем в Firefox и Chrome.

Кто-нибудь сталкивался с этой проблемой раньше?

Ответы [ 2 ]

1 голос
/ 17 января 2010

Если есть перенаправление DNS, IE7 может иметь проблемы, например, если http://site.domain.com действительно http://www.domain.com/site, прозрачное перенаправление DNS имеет проблемы в IE7, но не в других браузерах, о которых вы упоминаете. IE7 рассматривает это как междоменный скрипт и блокирует ... вы просто получаете доступ запрещен.

Это так, или что-то похожее с перенаправлениями или другими доменами? Если вы можете проверить главную страницу просто как domain.com/, вы получаете ошибку? IE7 относится к ребенку иначе, чем к сестре.

0 голосов
/ 18 января 2010

В JavaScript вам может понадобиться изменить домен документа. Возможно, IE7 просматривает домены вплоть до уровня сервера: foo.domain.com! = Foo2.domain.com. IE8 и др., Вероятно, принимают домен документа по номиналу * .domain.com.

Вот небольшая статья в блоге: http://jszen.blogspot.com/2005/03/cross-domain-security-woes.html.

Чтобы скопировать код, добавьте следующее на обе страницы, чтобы оно снова заработало.

<script type="text/javascript">
  document.domain="example.com";
</script>
...