Інтеграція 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 – саме те, що забезпечує інтеграцію цих двох серверів. Він доступний для безкоштовного завантаження з центру 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.



Рис. 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 рекомендується наступний порядок (йдеться про встановлення з нуля):



  1. Запустіть інсталятор SharePoint 2010, який встановить підключається модуль SSRS 2008 R2 для SharePoint.

  2. Встановіть та налаштуйте SharePoint 2010 як ферму.

  3. Повторіть кроки 1 і 2 на сервері звітів, якщо клієнтський веб-інтерфейс SharePoint встановлений на іншому комп'ютері, і налаштуйте його так, щоб він підключався до ферми SharePoint, створеної на кроці 2.

  4. Встановіть SQL Server Reporting Services в режимі інтеграції з SharePoint.

  5. Налаштуйте проксі 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.


Налаштування сервера звітів дуже проста. Ось основні міркування:



Сервер звітів реалізований як окрема служба 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 на всіх або вибраних наборах сайтів ферми.



Рис. 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. В цілому процес виглядає так.



  1. SharePoint виконує належну перевірку справжності на основі заявок і за допомогою служби маркерів безпеки SharePoint передає маркер запиту на проксі Reporting Services.

  2. Проксі Reporting Services використовує маркер запиту для обміну з об'єктною моделлю SharePoint і створення відповідних маркерів користувачів SharePoint, які він потім пересилає на сервер звітів.

  3. Сервер звітів використовує маркер користувачів SharePoint в локальній об'єктної моделі SharePoint для створення потрібного контексту користувача SharePoint.

  4. Якщо у користувача є необхідні дозволи, сервер звітів відправляє запитану інформацію на 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 до даних списків. Перший полягає у використанні веб-сервісу lists.asmx, а другий заснований на API-функції об'єктної моделі SharePoint. У будь-якому примірнику SharePoint при введенні адреси http:// <імя_сервера_sharepoint> lists.asmx ви отримаєте всі доступні списки сайту SharePoint у форматі XML. Цей метод дозволяє отримати ці списки в компонент звітів версії 3.0. Цей же метод застосовується сервером звітів, які працюють в основному режимі.


Метод з використанням API-функцій об'єктної моделі SharePoint може використовуватися в двох ситуаціях. У першій сервер звітів працює в режимі інтеграції з SharePoint, а список є на фермі SharePoint, з якою інтегровані служби Reporting Services, і це все працює на одній машині. Потрібно пам'ятати, що в такій ситуації треба пам'ятати, що доступ до API забезпечує примірник SharePoint, що працює на сервері звітів. Інша ситуація – установка SharePoint 2010 разом з підключається модулем, але без сервера звітів. Це називається локальним режимом і описується далі в розділі "Отримання звітів без служб Reporting Services ".


Щоб використовувати дані, отримані зі списку SharePoint у звіті, спочатку потрібно створити джерело даних, потім – набір даних, який використовує це джерело даних. В компонент звітів версії 3.0 є новий тип підключення на сторінці властивостей джерела даних під назвою список Microsoft SharePoint (рис. 3). Тут вказується URL-адреса сайту SharePoint, при цьому не потрібно додавати lists.asmx на адресу. Для джерела даних можна задати різні облікові дані для доступу до сервера SharePoint.



Рис. 3. Типи підключення SharePoint до списків


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


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


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



Рис. 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 дані відомості про підтримувані поєднаннях продуктів.



Рис. 5. Підтримувані поєднання SharePoint, модулів і серверів звітів


Схожі статті:


Сподобалася стаття? Ви можете залишити відгук або підписатися на RSS , щоб автоматично отримувати інформацію про нові статтях.

Коментарів поки що немає.

Ваш отзыв

Поділ на параграфи відбувається автоматично, адреса електронної пошти ніколи не буде опублікований, допустимий HTML: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>

*

*