Сегодняшний автор, Джон Кэмпбэлл (John Campbell), является руководителем проекта, посвященного службам Excel. Он расскажет, как при помощи служб Excel можно наладить доступ к внешним данным, не прибегая к сложным способам.
Существует множество дельных советов по поводу обновления данных в таблицах Excel при помощи служб Excel. Тут и разделение страниц информационной панели, и использование файлов .odc, и многое другое. Один вопрос остается до конца нерешенным – как обеспечить такой доступ к данным, чтобы иметь возможность работать с ними в службах Excel. Ответ лежит исключительно в области определения сервером идентификационной информации пользователя во время подключения к источнику данных. Одни пользователи успешно справляются с этой задачей, другие до сих пор бьются над ней. Данная статья разъясняет, почему сервер работает именно так, как описано здесь, а также показывает простой способ запустить процесс. Разумеется, в ней описаны не все детали, опции и сценарии. Более подробную информацию желающие разобраться в процессе и познакомиться с дополнительными возможностями могут найти в моей работе по адресу http://technet.microsoft.com/en-us/library/cc262899.aspx.
Для начала, немного терминологии и вводной информации:
Учетная запись: запись имени/пароля пользователя. С ее помощью система или сеть другого уровня узнает пользователя.
Аутентификация: «Кто вы?» – так система проверяет учетные данные пользователя.
Авторизация: «Что вы можете делать?» – процесс, когда система определяет права либо полномочия пользователя.
Строка подключения: строка, находящаяся, как правило, в рабочей книге или файле .odc, содержащая первичную информацию, необходимую для подключения к источнику данных. В ее число входит: какой сервер использовать, как проходит проверка подлинности, а также некоторые специальные параметры, необходимые для raw-соединения к базе данных.
Ваша цель – просмотр пользователем нужной таблицы в браузере после его аутентификации и авторизации для доступа к источнику данных. (В конце концов, даже самый лучший отчет о данных продаж по разным периодам гроша ломаного не стоит, если пользователь не может обновить данные для просмотра текущей ситуации.) Если точнее, речь идет о получении пользователем учетной записи для аутентификации/авторизации на отрезке Сервер вычислений Excel (ECS) – Источник данных (отмечен на рисунке):
Строки подключения обычно содержат информацию о процессе аутентификации для доступа к источнику данных, но по некоторым причинам службы Excel не могут их проанализировать и определить, как проходит аутентификация. Поэтому необходимость явно указать ход аутентификации ложится на пользователя. Здесь имеется три альтернативы: Windows (передает учетные записи домена в каждом пункте на пути до источника данных, в т.ч. и на источнике данных), Единый вход SSO (сверяет комбинацию имени и пароля для использования ее от вашего имени вне SSO базы в SharePoint), или отсутствие специальных настроек (берете строку подключения и надеетесь, что все заработает). Как правило, Windows-аутентификация более популярна, потому что: A) этот способ более безопасный, и Б) он будет работать с большей вероятностью, так как Kerberos конфигурируется в обычном окружении, самостоятельно, без внешнего участия (администратора сервера или базы данных).
Итак, для вводной информации достаточно. Возможно, вам не удается настроить Kerberos, и вы не хотите тратить уйму времени на изучение подробностей аутентификации – чего же проще? Вся оставшаяся часть этой статьи посвящена реализации последнего варианта из трех вышеперечисленных, а также настройке связанных серверных коммутаторов для нормального обновления данных в службах Excel.
Шаг 1: Настройка автоматической учетной записи на странице администрирования служб Excel.
Автоматическая учетная запись – это набор учетных данных, созданных службами Excel перед некоторыми видами внешних подключений к данным. Можно назвать ее пустой пользовательской учетной записью, которую службы Excel используют для подключения к данным. По умолчанию многие строки подключения (например, подключение к SQL или службам анализа) сконфигурированы таким образом, чтобы использовать любую доступную в момент подключения учетную запись. Это сводится к следующему: если строка подключения определяет использование встроенных средств безопасности, то для аутентификации/авторизации на источнике данных используется автоматическая учетная запись.
Делается это следующим образом:
На странице администрирования служб Excel нажмите на «Пуск» (Start) на Панели задач, укажите «Все программы» (All Programs), отметьте Microsoft Office Server и нажмите на «Центр администрирования SharePoint 3.0» (SharePoint 3.0 Central Administration). Выберите название SSP из левой панели навигации. Например, SharedServices1, как показано на рисунке.
Затем нажмите на пункт «Изменение параметров службы Excel» (Edit Excel Service Settings). Ниже находятся настройки автоматической учетной записи (Unattended Account settings).
Введите имя и пароль учетной записи, имеющей доступ к источникам данных, и нажмите OK.
Следует обратить внимание на следующие моменты:
При необходимости использования данной учетной записи другими пользователями с целью обновления своих данных им придется убедиться, что данная запись позволяет получить доступ к нужным источникам данных.
Безопасность имеет огромное значение! Никогда не используйте учетную запись, имеющую доступ к базам данных SQL фермы SharePoint. При доступе к SharePoint через автоматическую учетную запись пользователи могут загрузить рабочую книгу на сервер, напрямую соединенный с базами данных SharePoint, в обход большинства средств безопасности SharePoint.
Шаг 2: Настройка подключения к данным в рабочей книге
На ленте «Данные» (Data), в разделе «Подключения (Connections) нажмите на «Подключения» ( Connections).
В окне «Подключения рабочей книги» (Workbook Connections), показывающем все внешние подключения к данным, используемые в текущий момент рабочей книгой, выберите подключение, которое необходимо настроить, и нажмите «Свойства» (Properties).
В окне «Свойства подключения» (Connection Properties), содержащем варианты настройки подключения, нажмите вкладку «Характеристика» (Definition).
Нажмите на кнопку «Настройки аутентификации» (Authentication Settings).
В окне «Настройки аутентификации служб Excel» выберите вариант «Без аутентификации» (None).
Теперь нужно просто нажимать OK в каждом диалоговом окне на обратном пути к таблице.
Вот и все, что нужно сделать. При выборе вариант «None» следует обратить внимание на следующее: если вы используете SQL-аутентификацию, где имя и пароль сохраняются в строке подключения, то SQL (или другой поставщик данных) должен использовать эти учетные записи при подключении к данным. Именно «должен», потому что Excel и службы Excel не контролируют этот момент – поэтому использование или неиспользование этого имени/пароля всецело зависит от особенностей работы поставщика данных.
За более подробной информацией об особенностях процесса аутентификации, о других опциях, о подключениях к данным или о нормативном руководстве, а также при возникающих вопросах по теме просьба обращаться к следующей работе: http://technet.microsoft.com/en-us/library/cc262899.aspx.
Опубликовано: Джозефом Чириловым (Joseph Chirilov)
Перевод: Екатерина Бондаренко, Михаил Даньшин
Оригинал: http://blogs.msdn.com/excel/archive/2009/02/05/quick-and-easy-data-access-with-excel-services.aspx
Комментариев нет:
Отправить комментарий