0

Я в настоящее время работает на большой внутренней сети мэшапа, который использует SharePoint агрегировать контент из нескольких внутренних серверов, таких как:SSRS Report Viewer в SharePoint с document.domain набор

  • moss.myapp.internalserver.local - портальные
  • ssrs.myapp.internalserver.local MOSS - службы отчетов SQL Server сообщает
  • app.myapp.internalserver.local - Пользовательские ASP.NET MVC формы

мох портал вызывает формы MVC с использованием iframes в диалоговом окне jQuery (в точности, точнее), которые, в свою очередь, возвращаются на страницу moss с javascript для разных вещей, включая закрытие диалогового окна jQuery.

Это, очевидно, приведет к тому, что в браузерах не будет такой же политики происхождения (и, следовательно, не позволит javascript вызывать в фреймах/окнах из разных источников), поэтому я работал над этим, установив document.domain = "myapp.internalserver .local "на главных страницах MOSS и страницах форм приложений, что позволяет использовать скрипты междоменных доменов между моском и содержимым приложения.

Итак, это отлично работает, пока я не добавлю отчет SSRS в микс, используя веб-часть средства просмотра отчетов (по умолчанию используется sharepoint, а также несколько сторонних, включая мои собственные, которые просто используют компонент просмотра отчетов ASP.NET).

Средство просмотра отчетов, похоже, требует обработчика, который возвращает html на страницу. Тем не менее, результирующее содержимое средства просмотра отчетов, похоже, отображает и создает сценарий в некоторых iframe, но это не дает нам никакого способа установить document.domain в этих iframe, и поэтому сценарии терпят неудачу.

В лучшем случае это означает, что мы получаем желтый значок ошибки javascript в строке состояния, и, в худшем случае, когда используется динамический рендеринг, прогресс-колесо «рендеринга» просто анимирует и никогда не доставляет отчет.

Кто-нибудь видел это раньше, и если да, то как вы обошли его?

Спасибо, Тони

ответ

0

Как правило, чтобы получить веб-части SSRS вести себя в SharePoint вы хотите включить Kerberos, если вы хотите передать те же отчеты (используя тот же контекст безопасности), вам необходимо будет предоставить права доступа к пулу приложений SharePoint для получения/запуска отчетов. Вы также можете рассмотреть возможность установки SSRS в «интегрированном» режиме, но это довольно сложный процесс, так как серверу sql необходимо будет разместить SharePoint в качестве другого члена фермы с полностью установленным SharePoint.

+0

Уже есть серверы и т.д. говорить друг с другом в порядке, и зритель отчет работает отлично - мы используем Kerberos. Это не проблема. Проблема заключается в том, что страница портала устанавливает домен документа в javascript для домена более высокого уровня, поэтому мы сталкиваемся с некоторыми проблемами с одним и тем же исходным политическим - IE: чтобы он мог выполнять перекрестный домен с другими страниц с других серверов в настройке. SSRS не устанавливает это и не может быть установлен из того, что я вижу, поэтому веб-часть средства просмотра отчетов работает некорректно, так как она не находится в том же домене, что и главная страница, поэтому скрипты iframes не выполняются. –

Смежные вопросы