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


Настройка учетных записей служб (службы Analysis Services)

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

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

Дополнительный шаг настройки, не описанный здесь, заключается в регистрации имени субъекта-службы (SPN) для экземпляра служб Analysis Services и учетной записи службы. Данный шаг позволяет пройти проверку подлинности от приложений клиента до внутренних источников данных посредством сценариев двойного прыжка. Данный шаг применим только к службам, настроенных для ограниченного делегирования Kerberos. Обратитесь к разделу Configure Analysis Services for Kerberos constrained delegation за дополнительными инструкциями.

Рекомендации по учетной записи входа в систему

В отказоустойчивом кластере все экземпляры служб Analysis Services должны быть настроены для использования учетной записи пользователя домена Windows. Назначьте одну и ту же учетную запись для всех экземпляров. Подробные сведения см. в разделе Кластеризация служб Analysis Services .

Изолированные экземпляры должны использовать виртуальную учетную запись по умолчанию, NT Service\MSSQLServerOLAPService для экземпляра по умолчанию или NT Service\MSOLAP$имя_экземпляра для именованного экземпляра. Данная рекомендация применяется для экземпляров служб Analysis Services во всех режимах сервера, при условии, что в качестве операционной системы используется Windows Server 2008 R2 и более поздних версий, а для служб Analysis Services используется SQL Server 2012 и более поздних версий.

Предоставление разрешений для служб Analysis Services

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

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

Имя группы безопасности соответствует шаблону. Всегда используется префикс SQLServerMSASUser$, затем имя компьютера, и в конце стоит имя экземпляра. Экземпляром по умолчанию является MSSQLSERVER. Именованный экземпляр имеет имя, заданное во время установки.

Можно найти эту группу безопасности в локальных параметрах безопасности:

  • Запуск compmgmt.msc | Локальные пользователи и группы | Группы | SQLServerMSASUser$<server-name>$MSSQLSERVER (для экземпляра по умолчанию).

  • Дважды щелкните группу безопасности для просмотра ее элементов.

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

Права доступа Windows, назначенные учетной записи служб Analysis Services

Службе Analysis Services необходимы разрешения от операционной системы для запуска службы и для запроса ресурсов системы. Требования различаются в зависимости от режима сервера и от того, является ли экземпляр кластеризованным. Если вы не знакомы с правами доступа Windows, обратитесь к разделу Права доступа и Константы прав доступа (Windows) за дополнительной информацией.

Всем экземплярам службы Analysis Services необходимо право доступа Вход в качестве службы (SeServiceLogonRight). Установка SQL Server назначает для вас право доступа под учетной записью службы, определенной во время установки. Для серверов, запущенных в Многомерном режиме и в режиме Интеллектуального анализа данных, данное право доступа Windows является единственным правом, необходимым учетной записи службы Analysis Services для установок отдельного сервера, а также единственным правом, настраиваемым Установкой для службы Analysis Services. Для кластерных и табличных экземпляров вручную должны быть добавлены дополнительные права доступа Windows.

Отказоустойчивые экземпляры кластера, либо в табличном режиме, либо в многомерном режиме, должны иметь Увеличение приоритета выполнения (SeIncreaseBasePriorityPrivilege).

Табличные экземпляры используют следующие три дополнительных права доступа, которые должны быть предоставлены вручную после установки экземпляра.

Увеличение рабочего набора процесса (SeIncreaseWorkingSetPrivilege) Данное право доступа доступно всем пользователям по умолчанию через группу безопасности Пользователи . Если вы заблокируете сервер, удалив привилегии для этой группы, службы Analysis Services могут не запуститься, занося в журнал следующую ошибку: "Необходимые привилегии не удерживается клиентом". При возникновении этой ошибки восстановите привилегию служб Analysis Services, предоставив ее соответствующей группе безопасности служб Analysis Services.
Настройка квот памяти для процесса (SeIncreaseQuotaSizePrivilege) Данное право доступа используется для запроса большего количества памяти, если процессу не хватает ресурсов для завершения своего выполнения в связи с порогами памяти, установленными для экземпляра.
Блокировка страниц в памяти (SeLockMemoryPrivilege) Данное право доступа необходимо только когда страница полностью отключена. По умолчанию, экземпляр табличного сервера использует файл подкачки Windows, но вы можете запретить ему использование подкачки Windows, установив значение VertiPaqPagingPolicy на 0.

Значение "1" для VertiPaqPagingPolicy (по умолчанию) указывает экземпляру табличного сервера использовать файл подкачки Windows. Распределения не заблокированы, что позволяет Windows откачивать страницы из оперативной памяти по мере необходимости. Так как была использована подкачка, нет необходимости блокировать страницы в памяти. Таким образом, для конфигурации по умолчанию (где VertiPaqPagingPolicy = 1) не нужно предоставлять права блокировки страниц в памяти табличному экземпляру.

VertiPaqPagingPolicy до 0. Если вы отключаете подкачку для службы Analysis Services, распределения будут заблокированы, при условии, что право доступа Блокировка страниц в памяти предоставлено табличному экземпляру. Установив данную настройку и право доступа Блокировка страниц в памяти , Windows не сможет откачивать распределения памяти, выделенные службе Analysis Services, когда системе не будет хватать памяти. Службы Analysis Services используют разрешение Блокировать страницы в памяти в качестве принудительного применения за VertiPaqPagingPolicy = 0. Обратите внимание на то, что отключение подкачки Windows не рекомендуется. Оно увеличит число ошибок в связи с нехваткой памяти для операций, которые в противном случае, при разрешенной подкачке, должны были завершиться успешно. Дополнительные сведения о VertiPaqPagingPolicyсм. в разделе Свойства памяти.

Для просмотра или добавления прав доступа Windows учетной записи службы

  1. Запустите GPEDIT.msc | Политика Локального Компьютера | Конфигурация Компьютера | Настройки Windows | Настройки Безопасности | Локальные Политики | Назначения Прав Пользователя.

  2. Ознакомьтесь с существующими политиками, включающими SQLServerMSASUser$. Это локальная группа безопасности, расположенная на компьютерах, имеющих установку службы Analysis Services. И права доступа Windows и разрешения файловой папки предоставляются данной группе безопасности. Дважды щелкните на политику Вход в качестве службы , чтобы увидеть как определена группа безопасности в вашей системе. Полное название группы безопасности будет изменяться в зависимости от того, установили ли вы службу Analysis Services в качестве именованного экземпляра. Используйте эту группу безопасности вместо фактической учетной записи службы при добавлении прав доступа учетной записи.

  3. Для того, чтобы добавить права доступа в GPEDIT, щелкните правой кнопкой мыши Увеличение рабочего набора процесса и выберите Свойства.

  4. Нажмите кнопку Добавить пользователя или группу.

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

    Следующий список демонстрирует два примера для экземпляра по умолчанию и именованного экземпляра с названием "Табличный", на компьютере с названием "SQL01-WIN12", где имя компьютера является локальным доменом.

    • SQL01-WIN12\SQL01-WIN12$SQLServerMSASUser$MSSQLSERVER

    • SQL01-WIN12\SQL01-WIN12$SQLServerMSASUser$TABULAR

  6. Повторите для Корректировка квоты памяти для процесса, и, при необходимости, для Блокировка страниц в памяти или для Увеличение приоритета выполнения.

Примечание

Предыдущие версии программы установки непреднамеренно добавляли учетную запись службы Analysis Services в группу Пользователи журнала производительности . Это ошибка была исправлена, но существующие установки могут иметь это ненужное членство в группе. Так как учетная запись службы Analysis Services не требует членства в группе Пользователей журнала производительности , ее можно удалить из группы.

Разрешения файловой системы, назначенные учетной записи служб Analysis Services

Примечание

Список разрешений, связанных с каждой программной папкой, см. в разделе Настройка учетных записей службы Windows и разрешений .

Сведения о разрешениях на доступ к файлам, связанные с конфигурацией IIS и службами Analysis Services, см. в статье Настройка http access to Analysis Services on INTERNET Information Services (IIS) 8.0 .

Все разрешения файловой систем, необходимые для операций сервера- включая разрешения, которые требуются для загрузки и выгрузки баз данных из назначенной папки данных- назначены Установкой SQL Server во время установки.

Держатель разрешений в отношении файлов данных, исполняемых программных файлов, файлов конфигурации, файлов журнала и временных файлов является локальная группа безопасности, созданная Установкой SQL Server.

Для каждого устанавливаемого вами экземпляра создается одна группа безопасности. Группа безопасности называется в честь экземпляра , либо SQLServerMSASUser$MSSQLSERVER для экземпляра по умолчанию, либо SQLServerMSASUser$<servername>$<instancename> для именованного экземпляра. Установка обеспечивает данную группу безопасности разрешениями файла, необходимые для осуществления операций сервера. При проверке прав доступа на каталог \MSAS12.MSSQLSERVER\OLAP\BIN можно увидеть, что группа безопасности (а не учетная запись службы или ее идентификатор безопасности) является держателем разрешения в этом каталоге.

Группа безопасности содержит только один член: идентификатор безопасности (SID) службы для учетной записи запуска экземпляра служб Analysis Services. Установка добавляет идентификатор безопасности по службе в локальную группу безопасности. Использование локальной группы безопасности с ее членством идентификатора безопасности службы немного, но заметно отличается от того, как Установка SQL Server обеспечивает службу Analysis Services, в сравнении с ядром СУБД.

Если вы думаете, что разрешения файла повреждены, следуйте данной инструкции для удостоверения, что служба все еще обеспечена надлежащим образом:

  1. Используйте средство командной строки Управления службой (sc.exe) для получения идентификатора безопасности службы экземпляра службы по умолчанию.

    SC showsid MSSqlServerOlapService

    Для именованного экземпляра (где имя экземпляра - Табличный) используйте следующий синтаксис:

    SC showsid MSOlap$Tabular

  2. Используйтегруппу локальных пользователей и группДиспетчера | компьютеров | для проверки членства в группе безопасности SQLServerMSASUser$<имя_>сервера$<имя_>экземпляра.

    Элемент идентификатора безопасности службы должен совпадать с идентификатором безопасности по службе из пункта 1.

  3. Использование Windows Обозреватель | Program Files | Microsoft SQL Server | MSASxx.MSSQLServer | OLAP | bin для проверки того, что свойства безопасности папки предоставлены группе безопасности на шаге 2.

Примечание

Никогда не удаляйте и не изменяйте идентификатор безопасности службы. Сведения о том, как восстановить идентификатор безопасности для каждой службы, который был случайно удален, см. в разделе https://support.microsoft.com/kb/2620201.

Дополнительная информация об идентификаторах безопасности по службе

Каждая учетная запись Windows имеет связанный идентификатор безопасности, однако службы также могут иметь идентификаторы безопасности, которые именуются идентификаторами безопасности по службе. Идентификатор безопасности по службе создается при установке экземпляра службы в качестве уникального постоянного оборудования службы. Идентификатор безопасности по службе является локальным ИД безопасности на уровне компьютера, создаваемым от имени службы. Понятное имя экземпляра по умолчанию — NT SERVICE\MSSQLServerOLAPService.

Преимуществом идентификатора безопасности конкретной службы является то, что он позволяет произвольным образом менять более широко видимую учетную запись входа, не затрагивая разрешений на файлы. Например, предположим, что вы установили два экземпляра служб Analysis Services, экземпляр по умолчанию и именованный экземпляр, при этом оба они работают под одной учетной записью Windows. Хотя учетная запись входа является общей, каждый экземпляр службы будет иметь уникальный идентификатор безопасности по службе. Этот идентификатор безопасности отличается от такового для учетной записи входа. Идентификатор безопасности конкретной службы используется для разрешений на файлы и привилегий Windows. В противоположность этому идентификатор безопасности учетной записи входа используется для сценариев проверки подлинности и авторизации — разные идентификаторы безопасности используются для разных целей.

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

Предоставление дополнительных разрешения службе Analysis Services для определенных операций сервера

Службы Analysis Services выполняют некоторые задачи в контексте безопасности учетной записи службы (или учетной записи входа), которая используется для запуска служб Analysis Services, и выполняют другие задачи в контексте безопасности пользователя, запрашивающего задачу.

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

Операция сервера Рабочий элемент Обоснование
Удаленный доступ к реляционным внешним источникам данных Создание имени для входа в базу данных для учетной записи службы Обработка относится к получению данных из внешнего источника данных (обычно реляционной базы данных), который впоследствии загружается в базу данных служб Analysis Services. Один из способов использования учетных данных для доступа к внешним данным является применение учетной записи службы. Этот вариант работает только в том случае, если вы создали имя входа в базу данных для учетной записи службы и предоставили разрешение на чтение в базе данных-источнике. Дополнительные сведения об использовании параметра учетной записи службы для этой задачи см. в статье Настройка параметров олицетворения (SSAS — многомерная ). Аналогично, если в качестве режима хранения используется ROLAP, доступны такие же варианты применения олицетворения. В этом случае учетная запись также должна иметь права на ведение записи в данных источника для обработки секций ROLAP (для сохранения агрегатов).
DirectQuery Создание имени для входа в базу данных для учетной записи службы DirectQuery — это табличный компонент, используемый для запросов ко внешним наборам данных, которые либо слишком велики и не помещаются в табличную модель, либо имеют другие характеристики, делающие DirectQuery более удачным вариантом, чем используемое по умолчанию хранение в памяти. В режиме DirectQuery в качестве одного из вариантов соединения можно использовать учетную запись службы. Как и раньше, этот вариант работает только в том случае, если учетная запись имеет имя входа в базу данных и разрешения на чтение из целевого источника данных. Дополнительные сведения об использовании параметра учетной записи службы для этой задачи см. в статье Настройка параметров олицетворения (SSAS — многомерная ). Кроме того, для получения данных могут использоваться учетные данные текущего пользователя. В большинстве случаев этот вариант означает применение соединения с двойным переходом, поэтому необходимо настроить учетную запись службы на использование ограниченного делегирования Kerberos, чтобы учетная запись службы могла делегировать идентификаторы принимающему серверу. Дополнительные сведения см. в разделе Configure Analysis Services for Kerberos constrained delegation.
Удаленный доступ к другим экземплярам служб SSAS Добавьте учетную запись службы к ролям базы данных службы Analysis Services, определенных на удаленном сервере Удаленные секции и ссылки на связанные объекты в других удаленных экземплярах служб Analysis Services — это возможности системы, требующие разрешений на удаленном компьютере или устройстве. Если пользователь создает и заполняет удаленные секции или настраивает связанный объект, то подобные операции выполняются в контексте безопасности текущего пользователя. Если впоследствии вы автоматизируете эти операции, службы Analysis Services будут обращаться к удаленным экземплярам в контексте безопасности своей учетной записи службы. Чтобы получить доступ к связанным объектам на удаленном экземпляре служб Analysis Services, учетная запись для входа должна иметь разрешение на чтение соответствующих объектов на удаленном экземпляре, например доступ на чтение для определенных измерений. Аналогично для использования удаленных секций учетная запись должна иметь права администратора на удаленном экземпляре. Такие разрешения предоставляются на удаленном экземпляре служб Analysis Services с помощью ролей, которые связывают разрешенные операции с определенным объектом. Инструкции по предоставлению разрешений на полный доступ, которые позволяют выполнять операции обработки и запросов, см. в разделе Предоставление разрешений для базы данных (службы Analysis Services). Дополнительные сведения об удаленных секциях см. в статье Создание удаленной секции (службы Analysis Services) и управление ими .
Обратная запись Добавьте учетную запись службы к ролям базы данных службы Analysis Services, определенных на удаленном сервере Обратная запись — функция многомерных моделей, которая может быть включена в клиентских приложениях и которая позволяет создавать новые значения данных во время анализа. Если обратная запись включена в любом измерении или кубе, учетная запись службы Analysis Services должна иметь разрешения на запись в таблицу обратной записи в исходной SQL Server реляционной базе данных. Если эта таблица еще не существует и ее необходимо создать, учетная запись службы Analysis Services также должна иметь разрешения на создание таблицы в указанной SQL Server базе данных.
Запись в таблицу журнала запросов в SQL Server реляционной базе данных Создайте имя для входа в базу данных для учетной записи службы и назначьте разрешения на чтение для таблицы журнала запросов. Можно включить функцию ведения журнала запросов для сбора сведений об использовании запросов в таблицу базы данных для последующего возможного анализа. Учетная запись службы Analysis Services должна иметь разрешения на запись в таблицу журнала запросов в указанной базе данных SQL Server. Если эта таблица еще не существует и ее необходимо создать, учетная запись для входа в службы Analysis Services также должна иметь разрешения на создание таблицы в указанной SQL Server базе данных. Дополнительные сведения см. в блогах Improve SQL Server Analysis Services Performance with the Usage Based Optimization Wizard (Улучшение производительности служб SQL Server Analysis Services с помощью мастера оптимизации с учетом использования служб) и Query Logging in Analysis Servicess(Ведение журнала запросов в службах Analysis Services).

См. также:

Настройка учетных записей службы Windows и разрешений
Учетная запись службы SQL Server и идентификатор безопасности службы (блог)
SQL Server идентификатор безопасности службы для обеспечения изоляции служб (статья базы знаний)
Маркер доступа (MSDN)
Идентификаторы безопасности (MSDN)
Маркер доступа (Википедия)
Списки управления доступом (Википедия)