Интеграция SQL Server 2008 R2 Reporting Services и SharePoint 2010

SQL Server и SharePoint всегда хорошо «дружили». Все же в SharePoint Server 2010 и SQL Server 2008 R2 внесены значительные улучшения в плане интеграции меж SharePoint и SQL Server 2008 R2 Reporting Services (SSRS). В этой статье я расскажу, как настраивать и использовать эту новейшую функциональность.

Архитектура интеграции серверов

Модуль Reporting Services для SharePoint — конкретно то, что обеспечивает интеграцию этих 2-ух серверов. Он доступен для бесплатной загрузки с центра Microsoft Download Center и его необходимо устанавливать на все клиентские веб-интерфейсы (Web Front End, WFE) серверов SharePoint 2010, нуждающиеся в интеграции с Report Server. На рис. 1 показана архитектура интеграции компонент.

В клиентском веб-интерфейсе SharePoint 2010, модуль устанавливает три компонента: прокси SSRS, веб-часть «Средство просмотра отчетов» (Report Viewer) и странички приложений, позволяющих просматривать, хранить и управлять содержимым сервера отчетов на веб-сайте либо ферме SharePoint. Прокси SSRS обеспечивает связь меж клиентским веб-интерфейсом и сервером отчетов. На страничке Central Administration Reporting Services в SharePoint задают прокси для сервера отчетов, к которому необходимо получить доступ, также способ проверки подлинности и учетные данные для доступа к серверу. Чтоб интеграции заработала, нужно настроить сервер отчетов для работы в режиме интеграции с SharePoint.

Интеграция SQL Server 2008 R2 Reporting Services и SharePoint 2010

Рис. 1/ Архитектура интеграции серверов

Направьте внимание, что на рис. 1 на сервере отчетов находится компонент «Объектная модель SharePoint». Чтоб сервер отчетов «понимал» информацию отчетов, лежащую в SharePoint, и был в состоянии обеспечить ее безопасность, он обязан иметь возможность вести взаимодействие с базами данных конфигурации и содержимого SharePoint, установленного на компьютере либо ферме. Этого можно достигнуть, установив на сервере отчетов SharePoint в малой конфигурации и присоединив его к ферме.

Версия SharePoint, устанавливаемая на сервере отчетов, должна совпадать с версией на ферме. Это необходимо, только если сервер отчетов работает на отдельном компьютере. Если же SharePoint и службы Reporting Services установлены на одном компьютере, необходимо только установить модуль Reporting Services для SharePoint.

Настройка интеграции

В целом, настройка интеграции SharePoint 2010 и SQL Server 2008 R2 упростилась. Последовательность конфигурирования, находится в зависимости от того, что уже установлено. Даже если начинать с нуля либо с имеющегося экземпляра, главное — чтоб все главные составляющие были установлены до начала опции прокси SSRS в SharePoint. Для заслуги лучших результатов при интеграции служб Reporting Services сервера SQL Server 2008 R2 с SharePoint 2010 рекомендуется последующий порядок (идет речь об установке с нуля):

Запустите установщик SharePoint 2010, который установит подключаемый модуль SSRS 2008 R2 для SharePoint.
Установите и настройте SharePoint 2010 как ферму.
Повторите шаги 1 и 2 на сервере отчетов, если клиентский веб-интерфейс SharePoint установлен на другом компьютере, и настройте его так, чтоб он подключался к ферме SharePoint, сделанной на шаге 2.
Установите SQL Server Reporting Services в режиме интеграции с SharePoint.
Настройте прокси SSRS, используя страничку служб интеграции Reporting Services, и запустите службы Reporting Services.

Если на веб-сайте в меню Документ/Новые (Document/New) не видно типов содержимого служб Reporting Services, их необходимо добавить вручную. О том, как это делать, см. раздел Интеграция с построителем отчетов версии 3.0.

В данной ситуации случае в качестве для базы данных SharePoint я бы использовал SQL Server, а не версию Embedded Edition, которая применяется в SharePoint по дефлоту. Если планируется установить все составляющие на одной машине, шаг 5 излишний. Шаги 1 и 2 можно выполнить в процессе установки SQL Server.

Если SharePoint уже установлен, скачать и установить модуль можно позднее. В процессе установки добавляются нужные странички Центра администрирования SharePoint, также новые типы содержимого сервера отчетов в имеющиеся библиотеки SharePoint на веб-сайтах, сделанных на базе шаблонов Business Intelligence Center (BI).

На стороне SharePoint можно настроить интеграцию с SharePoint Server 2010 либо SharePoint Foundation 2010. Оба продукта поддерживают установку служб Reporting Services. При установке SharePoint и службы Reporting Services на различных машинах нужно установить ту же версию SharePoint на сервере отчетов. К примеру, нельзя устанавливать SharePoint Foundation 2010 на сервере отчетов, если в качестве веб-интерфейса употребляется SharePoint Server 2010.

Установка надстройки очень ординарна; необходимо всего только указать свое имя и заглавие компании. Если вы устанавливаете SharePoint в первый раз, необходимо установить надстройку перед установкой SharePoint; это производится автоматом при запуске подготовительных критерий SharePoint 2010.

Настройка сервера отчетов очень ординарна. Вот главные суждения:

редакция SQL Server должна быть Standard, Enterprise либо выше;
в базах данных сервера отчетов следует включить режим интеграции с SharePoint;
если SharePoint и сервер отчетов установлены на различных машинах, будет нужно установить сервер SharePoint в малой конфигурации и присоединить к ферме на сервере отчетов.

Сервер отчетов реализован как отдельная служба Windows, которая работает под интегрированной учетной записью или локальной либо доменной учетной записью юзера Windows. В режиме интеграции с SharePoint учетная запись службы сервера отчетов автоматом изменяется так, что получает нужный доступ к конфигурации SharePoint и содержимому базы данных, также к ресурсам объектной модели SharePoint. Это происходит при настройке интеграции служб Reporting Services с SharePoint средствами странички интеграции служб Reporting Services.

В режиме встроенной проверки подлинности Windows при подключении к серверу отчетов через клиентский веб-интерфейс происходит олицетворение юзера Windows, вошедшего в систему SharePoint. Когда проверка подлинности проходит в режиме доверенной учетной записи, контекст вошедшего в систему SharePoint юзера передается на сервер отчетов как маркер юзера SharePoint. Для подключения средствами клиентского веб-интерфейса SharePoint к серверу отчетов употребляется учетная запись пула приложений этого интерфейса. Информацию о конфигурировании учетной записи службы вы отыщите в статье Настройка служб Reporting Services для интеграции с SharePoint 2010».

Если службы Reporting Services уже установлены в конфигурации по дефлоту, база данных служб Reporting Services работает в главном режиме. Чтоб перейти в режим интеграции с SharePoint придется возвратиться к средству конфигурации служб Reporting Services, а поменять режим на страничке опции базы данных.

Основной режим сервера отчетов можно поменять на режим интеграции с SharePoint в хоть какой момент, но это не приведет к преобразованию имеющейся базы данных. Всякий раз при переключении нужно или сделать новейшую базу данных, или подключиться к уже имеющейся.

Перед настройкой прокси Reporting Services в SharePoint нужно сделать очередное изменение конфигурации — убедиться, что в веб-приложениях не разрешен анонимный доступ. Это не помешает настройке прокси Reporting Services, но пытаясь просмотреть отчеты, юзеры будут получать ошибку. Можно использовать проверку подлинности Windows либо проверку подлинности на базе заявок (claims-based authentication), предоставляемую другими провайдерами проверки подлинности, а при настройке интеграции сервера отчетов и фермы SharePoint, каждое веб-приложение SharePoint можно настроить на внедрение различных провайдеров проверки подлинности.

Подключаемый модуль делает для службы Reporting Services новый раздел на страничке (General Application Settings) Центра администрирования SharePoint (SharePoint Central Administration). На страничке «Интеграция со службами Reporting Services» (Reporting Services Integration) вводится URL-адрес сервера отчетов и информация для проверки подлинности, также производится активация служб Reporting Services на всех либо избранных наборах веб-сайтов фермы.

Интеграция SQL Server 2008 R2 Reporting Services и SharePoint 2010

Рис. 2. Настройка прокси Reporting Services

Процесс опции интеграции завершается наполнением странички, показанной на рис. 2.

Интеграция с Построителем отчетов версии 3.0

Основное преимущество интеграции SharePoint и службы Reporting Services состоит в том, что она позволяет юзерам создавать, изменять и публиковать отчеты в SharePoint. Службы Reporting Services предоставляют несколько готовых типов содержимого, служащих для управления разными файлами, в том числе файлами общих источников данных отчетов (.rsds), модели Report Builder (.smdl), также файлами определений отчетов Построитель отчетов (.rdl). После опции интеграции нужно включить новые виды содержимого в библиотеки, чтоб юзеры могли создавать и управлять этими новыми типами содержимого, пользуясь лентой и контекстными меню.

Если употребляется шаблон веб-сайта BI Center, ничего не нужно делать — типы содержимого автоматом доступны из-за внедрения шаблона и для всех веб-сайтов, сделанных с внедрением этого шаблона. Для всех других веб-сайтов и библиотек документов нужно выполнить двушаговую настройку: поначалу необходимо разрешить управление типами содержимого (Content Type Management) в библиотеке (по дефлоту оно отключено), а потом включить поддержку типов содержимого в библиотеке. Тщательно о включении управления типами содержимого в библиотеке документов см. статью Как добавить в библиотеку типы содержимого сервера отчетов (службы Reporting Services в режиме интеграции с SharePoint).”

После прибавления этих новых типов содержимого в библиотеку в раскрывающемся перечне «Новый документ» (New Document) на вкладке «Документы» (Documents) появятся три новых элемента. Сейчас, если избрать элемент «Отчет» Построителя отчетов, на клиентский компьютер будет загружен и запущен Построитель отчетов версии 3.0 (Report Builder 3.0). Это поведение можно поменять средствами Центра администрирования SharePoint. Страничка «Значения по дефлоту для сервера служб Reporting Services» (Reporting Services Server Defaults) позволяет отключить этот элемент, также настроить другой URL-адрес для отчетов.

Внедрение веб-части «Средство просмотра отчетов» на веб-сайте SharePoint

Веб-часть «Средство просмотра отчетов» (Report Viewer Web Part) — пользовательская веб-часть, которая устанавливается при установке модуля Reporting Services. Она позволяет просматривать, находить, экспортировать и печатать отчеты на сервере отчетов. О том, как расположить веб-часть на страничке, см. статью «Как добавить на интернет-страницу веб-часть “Как добавить на интернет-страницу веб-часть «Средство просмотра отчетов» (службы Reporting Services в режиме интеграции с SharePoint).”

Любая веб-часть средства просмотра отчетов в каждый момент времени воспроизводит один отчет, сделанный на базе файла с расширением .rdl, на который показывает абсолютный URL-адрес в свойстве «Отчет» (Report). URL-адрес должен содержать полный путь к отчету на текущем веб-сайте SharePoint либо на веб-сайте в границах такого же веб-приложения либо фермы. Этот URL должен принадлежать библиотеке документов либо папке в библиотеке документов, которые содержат отчет. URL отчета должен включать расширение файла .rdl. Если для отчета необходимы файлы модели либо общий источник данных, эти файлы не надо указывать в URL. В отчете содержатся ссылки на файлы, в каких он нуждается.

Проверка подлинности на базе заявок и службы Reporting Services

Одной из новых способностей в SharePoint Server 2010 — поддержка проверки подлинности на базе заявок. В поддерживающих проверку подлинности на базе заявок приложениях (claims-aware application) клиент предоставляет приложению так именуемую «заявку», которая содержит определенную информацию о юзере, такую как имя юзера, адресок электрической почты либо имя менеджера. Это предоставляет приложению больше инфы, чем оно получает средствами Kerberos. Возьмем, например, приложение для организации закупок. Две заявки из переданных приложению могут содержать адресок электрической почты менеджера и предел на закупки юзера. В приложении, не поддерживающем заявки, этой информацией управляет само приложение.

В мире SharePoint проверка подлинности на базе заявок решает делему перекрестного доступа к веб-сайтам SharePoint различных организаций. Используя таковой продукт как Службы федерации Active Directory (Active Directory Federation Services, AD FS), две организации, использующие разные способы проверки подлинности, могут организовать обработку заявок, которая позволит SharePoint идентифицировать юзера и назначать ему правильные разрешения.

Так как эта функциональность встроена в продукты SharePoint 2010, службы Reporting Services поддерживают эту модель проверки подлинности. Службы Reporting Services не поддерживают заявки, а заместо этого при подключении к SharePoint употребляют модель доверенной учетной записи. Прокси-служба в модуле SQL Server 2008 R2 употребляет объектную модель SharePoint для преобразования маркера заявок в соответственный контекст юзера SharePoint в виде маркера юзера SharePoint, который сервер отчетов в состоянии «понять» и использовать для проверки по базе данных SharePoint. В целом процесс смотрится так.

SharePoint делает соответствующую проверку подлинности на базе заявок и при помощи службы маркеров безопасности SharePoint передает маркер запроса на прокси Reporting Services.
Прокси Reporting Services употребляет маркер запроса для обмена с объектной моделью SharePoint и сотворения соответственных маркеров юзеров SharePoint, которые он потом пересылает на сервер отчетов.
Сервер отчетов употребляет маркер юзеров SharePoint в локальной объектной модели SharePoint для сотворения подходящего контекста юзера SharePoint.
Если у юзера есть нужные разрешения, сервер отчетов посылает запрошенную информацию на SharePoint, используя соответственный контекст юзера SharePoint, как это происходило и ранее.

Отчеты на базе списков

Службы Reporting Services SQL Server 2008 R2 сейчас способны работать со перечнями SharePoint как с источником данных. Это позволяет получать перечень данных от SharePoint Foundation 2010, SharePoint Server 2010, Windows SharePoint Services 3.0 и Office SharePoint Server 2007. Возможность доступа к списку данных не находится в зависимости от наличия модуля либо от режима сервера — основного либо режима интеграции с SharePoint. Функциональность встроена в сервер отчетов. Отличие разных конфигураций заключается в изменившемся способе доступа.

Есть два метода доступа SharePoint к данным списков. 1-ый заключается в использовании веб-сервиса lists.asmx, а 2-ой основан на API-функциях объектной модели SharePoint. В любом экземпляре SharePoint при вводе адреса http://lists.asmx вы получите все доступные списки веб-сайта SharePoint в формате XML. Этот способ позволяет получить эти списки в Построителе отчетов версии 3.0. Тот же способ применятся сервером отчетов, работающим в главном режиме.

Способ с внедрением API-функций объектной модели SharePoint может употребляться в 2-ух ситуациях. В первой сервер отчетов работает в режиме интеграции с SharePoint, а перечень есть на ферме SharePoint, с которой интегрированы службы Reporting Services, и это все работает на одной машине. Необходимо держать в голове, что в таковой ситуации нужно держать в голове, что доступ к API обеспечивает экземпляр SharePoint, работающий на сервере отчетов. Другая ситуация — установка SharePoint 2010 совместно с подключаемым модулем, но без сервера отчетов. Это именуется локальным режимом и описывается дальше в разделе «Получение отчетов без служб Reporting Services».

Чтоб использовать данные, приобретенные из перечня SharePoint в отчете, поначалу требуется сделать источник данных, потом — набор данных, который употребляет этот источник данных. В Построителе отчетов версии 3.0 есть новый тип подключения на страничке параметров источника данных под заглавием перечень Microsoft SharePoint (рис. 3). Тут указывается URL-адрес веб-сайта SharePoint, при всем этом не надо добавлять lists.asmx в адресок. Для источника данных можно задать разные учетные данные для доступа к серверу SharePoint.

Интеграция SQL Server 2008 R2 Reporting Services и SharePoint 2010

Рис. 3. Типы подключения SharePoint к перечням

Создав на базе этого источника данных новый набор, вы получите перечень всех списков SharePoint на веб-сайте, к которым вам разрешен доступ. Этот перечень можно разворачивать, просматривая отдельные элементы, создавать фильтры, характеристики и отчеты, в общем делать то же, что и с таблицей базы данных SQL.

Поддержка сравнения для альтернативного доступа

Очередное усовершенствование интеграции — поддержка сравнения для альтернативного доступа (Alternate Access Mapping, AAM). Этот механизм находился в SharePoint, начиная с 2007 версии, но службы Reporting Services его не поддерживали. Сейчас, при настройке сравнения для альтернативного доступа в Центре администрирования SharePoint, модуль Reporting Service поддерживает структуру URL, как показано в ординарном отчете на рис. 4. Отчеты http://sql-01 и http://www.contoso.com совпадают.

Интеграция SQL Server 2008 R2 Reporting Services и SharePoint 2010

Рис. 4. Сравнение для альтернативного доступа

Получение отчетов без Reporting Services

Пока вся информация в данной статье относилась к тому, что именуется режимом с подключением. В прошлых версиях служб Reporting Services это был единственный доступный режим, и это означало, что для отображения отчетов при помощи Средства просмотра отчетов SharePoint был должен быть подключен к серверу отчетов Reporting Services, работающему в режиме интеграции с SharePoint.

С выходом SQL Server 2008 R2 стало вероятным показывать отчеты без интеграции веб-сайта SharePoint либо фермы с сервером отчетов со службами Reporting Services. Заместо этого можно использовать Средство просмотра отчетов для конкретной генерации отчетов средствами SharePoint, если расширения данных поддерживают создание отчетов в локальном режиме. В стандартной конфигурации только расширения SharePoint List и Microsoft Access 2010 поддерживают такую возможность.

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

Сочетаемость модулей SharePoint и сервера отчетов

С выходом SQL Server 2008 R2 и SharePoint Server 2010 существует три версии SQL, три версии модулей, также две версии SharePoint. Составляющие интеграции могут работать на хоть какой из этих выпусков, но необходимо верно их соединять. В таблице на рис. 5 даны сведения о поддерживаемых сочетаниях товаров.

Интеграция SQL Server 2008 R2 Reporting Services и SharePoint 2010

Рис. 5. Поддерживаемые сочетания SharePoint, модулей и серверов отчетов

Материалы по теме

Reporting Services с интеграцией SharePoint
Безопасность SharePoint: Базы безопасности развертывания SharePoint
Защита данных SharePoint

Аналогичный товар: Комментирование на данный момент запрещено, но Вы можете оставить ссылку на Ваш сайт.

Комментарии закрыты.