Поделиться через


Настройка служб Analysis Services для ограниченного делегирования Kerberos

Во время настройки служб Analysis Services для проверки подлинности Kerberos, скорее всего, потребуется добиться одного или обоих приведенных ниже результатов: олицетворение пользовательского удостоверения с помощью служб Analysis Services для доступа к данным или делегирование пользовательского удостоверения с помощью служб Analysis Services в службу более низкого уровня. У каждого сценария есть свои требования к конфигурации. Для обоих сценариев необходима проверка, чтобы убедиться в правильности настройки.

СоветСовет

Microsoft диспетчер конфигурации Kerberos для SQL Server — это диагностическое средство, которое помогает расследовать проблемы Kerberos со связью при использовании SQL Server. Дополнительные сведения см. в разделе Диспетчер конфигурации Microsoft Kerberos для SQL Server.

В этом разделе содержатся следующие подразделы:

  • Разрешение службам Analysis Services выполнять олицетворение пользовательского удостоверения

  • Настройка служб Analysis Services для доверенного делегирования

  • Проверка олицетворенного или делегированного удостоверения

ПримечаниеПримечание

Делегирование не требуется, если соединение со службами Analysis Services осуществляется в один этап или если решение использует сохраненные учетные данные, предоставленные службой SharePoint Secure Store или службами Reporting Services. Если все подключения являются прямыми подключениями от Excel к базе данных Analysis Services или основаны на хранящихся учетных данных, можно использовать Kerberos (или NTLM) без необходимости настройки ограниченного делегирования.

Ограниченное делегирование Kerberos требуется в случае, если удостоверение пользователя должно передаваться по подключению множества компьютеров («подключение в два этапа»). Если доступ к данным служб Analysis Services основан на пользовательском удостоверении и запрос соединения исходит от делегирующей службы, по контрольному списку в следующем разделе проверьте, что службы Analysis Services могут выполнить олицетворение исходного заявителя. Дополнительные сведения о потоках проверки подлинности служб Analysis Service см. в разделе Проверка подлинности для бизнес-аналитики Майкрософт и делегирование удостоверений.

Для повышения безопасности Майкрософт всегда рекомендует применять ограниченное делегирование вместо неограниченного. Неограниченное делегирование представляет серьезный диск для безопасности, поскольку удостоверение службы может олицетворять другого пользователя на любом компьютере более низкого уровня, службе или приложении (а не только для явным образом указанных служб при ограниченном делегировании).

Разрешение службам Analysis Services выполнять олицетворение пользовательского удостоверения

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

Задача

Описание

Шаг 1. Проверьте, что учетные записи подходят для делегирования

Убедитесь, что учетные записи, используемые для запуска служб, имеют необходимые свойства в Active Directory. Учетные записи службы в Active Directory должны быть отмечены как критические учетные записи или исключены явным образом из сценариев делегирования. Дополнительные сведения см. в разделе Основные сведения об учетных записях пользователей.

Важное примечаниеВажно!

Как правило, все учетные записи и серверы должны принадлежать к одному домену Active Directory или доверенным доменам одного леса. Но так как Windows Server 2012 поддерживает делегирование за пределами домена, можно настроить ограниченное делегирование Kerberos за пределами домена, если функциональный уровень домена — Windows Server 2012. Другой способ — настроить службы Analysis Services для доступа по протоколу HTTP и использовать методы проверки подлинности IIS для клиентского подключения. Дополнительные сведения см. в разделе Настройка HTTP-доступа к службам Analysis Services в службах Internet Information Services (IIS) 7.0.

Шаг 2. Регистрация имени участника-службы

Прежде чем задать ограниченное делегирование, необходимо зарегистрировать имя участника-службы (SPN) для экземпляра служб Analysis Services. Имя участника-службы Analysis Services необходимо при настройке ограниченного делегирования Kerberos для служб среднего уровня. Инструкции см. в разделе Регистрация имени участника-службы для экземпляра служб Analysis Services.

Имя участника-службы задает уникальный идентификатор службы в домене, настроенном для проверки подлинности Kerberos. Клиентские соединения с использованием встроенной безопасности часто запрашивают имя участника-службы в составе проверки подлинности SSPI. Запрос перенаправляется к контроллеру домена (DC) Active Directory, а служба проверки подлинности Kerberos предоставляет билет, если имя участника-службы, указанное клиентом, имеет совпадающую регистрацию имени участника-службы в Active Directory.

Шаг 3. Настройка ограниченного делегирования

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

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

Шаг 4. Проверка подключения

В процессе тестирования попробуйте установить соединение с удаленного компьютера с различными удостоверениями и запросите службы Analysis Services с использованием тех же приложений, которые будут использоваться пользователями из сферы бизнеса. Можно использовать приложение SQL Server Profiler для контроля за соединением. По запросу должно отобразиться пользовательское удостоверение. Дополнительные сведения см. в подразделе Тестирование применяемого для олицетворения или делегированного идентификатора в этом разделе.

Настройка служб Analysis Services для доверенного делегирования

Настройка служб Analysis Services для ограниченного делегирования Kerberos позволяет службе олицетворять клиентское удостоверение в службе более низкого уровня, например в реляционной базе данных, для передачи данных, как если бы клиент устанавливал соединение напрямую.

Сценарии делегирования для служб Analysis Services ограничены табличными моделями, настроенными для работы в режиме DirectQuery. Это единственный случай, когда службы Analysis Services могут передавать делегированные учетные данные в другую службу. Во всех прочих сценариях, например, в сценариях SharePoint, упомянутых в предыдущем разделе, службы Analysis Services находятся на принимающей стороне цепочки делегирования. Дополнительные сведения о DirectQuery см. в разделе Режим DirectQuery (табличные службы SSAS).

ПримечаниеПримечание

Существует распространенное заблуждение, состоящее в том, что хранение ROLAP, операции обработки или доступ к удаленным разделам каким-то образом образуют требования к ограниченному делегированию. На самом деле это не так. Все эти операции выполняются напрямую учетной записью службы (которая также называется учетной записью обработки) от собственного имени. Делегирование не требуется для этих операций в Analysis Services, поскольку разрешения для таких операций предоставляются напрямую учетной записи службы (например, предоставление разрешений db_datareader для реляционной базы данных, чтобы эта служба могла обрабатывать данные). Дополнительные сведения о серверных операциях и разрешениях см. в Настройка учетных записей служб (службы Analysis Services).

В этом разделе приводится описание настройки служб Analysis Services для доверенного делегирования. После выполнения этой задачи службы Analysis Services смогут передавать делегированные учетные данные серверу SQL Server для поддержки режима DirectQuery, используемого в табличных решениях.

Перед началом:

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

  1. В окне «Пользователи и компьютеры Active Directory» найдите учетную запись службы, от имени которой выполняются службы Analysis Services. Щелкните правой кнопкой учетную запись службы и выберите Свойства.

    Для иллюстрации действий на следующих снимках экрана OlapSvc и SQLSvc обозначают службы Analysis Services и SQL Server соответственно.

    OlapSvc — это учетная запись, которая будет настроена для ограниченного делегирования в SQLSvc. После завершения этой задачи OlapSvc получит разрешение передавать делегированные учетные данные по билету в службу SQLSvc, олицетворяя исходного заявителя при запросе данных.

  2. На вкладке «Делегирование» выберите Доверять этому пользователю делегирование только для указанных служб, затем Использовать только Kerberos. Нажмите кнопку Добавить, чтобы указать, каким службам службы Analysis Services могут делегировать учетные данные.

    Вкладка «Делегирование» отображается только в том случае, если учетная запись пользователя (OlapSvc) назначена службе (службам Analysis Services) и служба имеет зарегистрированное имя участника-службы. Для регистрации имени участника-службы необходимо, чтобы служба была запущена.

    Страница свойств учетных записей в Active Directory

  3. На странице «Добавление службы» выберите Пользователи или компьютеры.

    Добавление на страницу служб в Active Directory

  4. На странице «Выбор пользователей или компьютеров» введите имя учетной записи, используемой для запуска экземпляра SQL Server, который содержит табличные шаблоны баз данных служб Analysis Services. Нажмите кнопку ОК, чтобы подтвердить учетную запись службы.

    Если учетную запись выбрать не удается, убедитесь, что SQL Server запущен и имеет имя участника-службы, зарегистрированное для этой учетной записи. Дополнительные сведения об именах участников-служб для базы данных см. в разделе Регистрация имя участника-службы для соединений Kerberos.

    Выбор пользователей или компьютеров в Active Directory

  5. Экземпляр SQL Server должен появиться на странице «Добавление служб». Службы, которые используют эту учетную запись, также появятся в списке. Выберите нужный экземпляр SQL Server. Нажмите кнопку ОК, чтобы подтвердить экземпляр.

    Добавление службы в Active Directory

  6. Страница свойств учетной записи служб Analysis Services теперь должна выглядеть примерно так, как на следующем снимке экрана. Нажмите кнопку ОК, чтобы сохранить внесенные изменения.

    Заполненная страница свойств учетной записи

  7. Для проверки успешного делегирования подключитесь с удаленного клиентского компьютера под другим удостоверением и отправьте запрос для табличной модели. Пользовательское удостоверение должно отобразиться для соответствующего запроса в приложении SQL Server Profiler.

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

Приложение SQL Server Profiler позволяет отслеживать удостоверение пользователя, который запрашивает данные.

  1. Запустите приложение SQL Server Profiler на экземпляре служб Analysis Services, затем запустите новую трассировку.

  2. В разделе «Выбор событий» убедитесь, что объекты Audit Login и Audit Logout отмечены в разделе «Аудит безопасности».

  3. Подключитесь к службам Analysis Services через службу приложений (например, SharePoint или службы Reporting Services) с удаленного клиентского компьютера. Событие «Имя входа учетной записи аудита» отобразит удостоверение пользователя, подключенного к службам Analysis Services.

Для более тщательного тестирования потребуются средства сетевого мониторинга, которые способны отслеживать запросы и отклики Kerberos по сети. Для этой задачи может использоваться служебная программа монитора сети (netmon.exe), в которой применены фильтры для Kerberos. Дополнительные сведения об использовании Netmon 3.4 и других инструментов для тестирования средств проверки подлинности Kerberos см. в разделе Настройка проверки подлинности Kerberos. Основная конфигурация (SharePoint Server 2010).

Кроме того, см. статью Самое запутанное диалоговое окно в Active Directory для получения подробного описания каждого параметра на вкладке «Делегирование» в диалоговом окне свойств объекта Active Directory. В этой статье также поясняется, как использовать LDP для тестирования и интерпретации результатов.

См. также

Основные понятия

Подключение к службам Analysis Services

Регистрация имени участника-службы для экземпляра служб Analysis Services

Свойства строки подключения (службы Analysis Services)

Другие ресурсы

Проверка подлинности для бизнес-аналитики Майкрософт и делегирование удостоверения

Взаимная проверка подлинности на основе Kerberos