Настройка учетных записей служб (службы Analysis Services)
Подготовка учетных записей для всего продукта задокументирована в Настройка учетных записей службы Windows и разрешений. В этом разделе содержится подробная информация об учетной записи служб для всех служб SQL Server, включая Службы Analysis Services. См. этот раздел для получения информации о допустимых типах учетных записей, о правах доступа Windows, назначаемых программой установки, о разрешения файловой системы, разрешениях реестра и прочем.
В этом разделе содержится дополнительная информация по Службы Analysis Services, включая дополнительные разрешения, необходимые для табличного режима и кластерной установки. Также рассматриваются разрешения, необходимые для поддержки серверных операций. Например, можно настроить выполнение обработки и операций запроса с учетной записью службы. В этом случае потребуется предоставить дополнительные разрешения, чтобы такой подход работал.
Привилегии Windows, назначенные для служб Analysis Services
Разрешения файловой системы, назначенные службам Analysis Services
Предоставление дополнительных прав для определенных операций сервера
Дополнительный этап настройки, не описываемый здесь: нужно зарегистрировать имя субъекта-службы (SPN) для экземпляра Службы Analysis Services и учетной записи службы. Этот шаг обеспечивает сквозную проверку подлинности от клиентских приложений к внутренним источникам данных в сценариях с подключением в два этапа. Этот шаг применяется только для служб, для которых настроено ограниченное делегирование Kerberos. Дальнейшие инструкции см. в разделе Настройка служб Analysis Services для ограниченного делегирования Kerberos.
Рекомендации по учетной записи входа в систему
В отказоустойчивом кластере все экземпляры служб Analysis Services должны быть настроены для использования учетной записи пользователя домена Windows. Назначьте одну учетную запись для всех экземпляров. Дополнительные сведения см. в разделе Кластеризация служб Analysis Services.
Отдельные экземпляры должны использовать виртуальную учетную запись по умолчанию: NT Service\MSSQLServerOLAPService — для экземпляра по умолчанию или **NT Service\MSOLAP$**имя экземпляра — для именованного экземпляра. Эта рекомендация относится к экземплярам служб Analysis Services во всех режимах сервера (предполагается Windows Server 2008 R2 и более поздней версии для операционной системы и SQL Server 2012 и более поздней версии служб Analysis Services).
Предоставление разрешений для служб Analysis Services
В этом разделе представлены разрешения, необходимые для локальных и внутренних операций служб Analysis Services, таких как запуск исполняемого файла, чтение файла конфигурации и загрузка баз данных из каталога данных. Сведения о настройке разрешений для доступа к внешним данным и о взаимодействии с другими службами и приложениями см. в разделе Предоставление дополнительных разрешений для определенных серверных операций далее в этой статье.
Для внутренних операций владелец разрешений в службах Analysis Services имеет не учетную запись входа, но входит в локальную группу безопасности Windows, созданную программой установки, которая содержит идентификатор безопасности службы. Назначение разрешений для группы безопасности согласуется с предыдущими версиями служб Analysis Services. Кроме того, учетные записи входа могут изменяться со временем, но идентификатор безопасности службы и локальная группа безопасности являются постоянными в течение времени существования экземпляра сервера. Вследствие этого для служб Analysis Services группа безопасности представляется лучшим выбором для размещения разрешений по сравнению с учетной записью входа. Каждый раз при назначении прав для экземпляра службы вручную (разрешений файловой системы или привилегий Windows), предоставьте разрешения локальной группе безопасности, созданной для экземпляра сервера.
Имя группы безопасности соответствует шаблону. Всегда используется префикс SQLServerMSASUser$, а затем имя компьютера с именем экземпляра. Экземпляр по умолчанию — MSSQLSERVER. Именованный экземпляр имеет имя, заданное во время установки.
Можно просмотреть эту группу безопасности в локальных параметрах безопасности.
Выполните команду compmgmt.msc | Локальные группы и пользователи | Группы | SQLServerMSASUser$<имя-сервера>$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. Если параметр VertiPaqPagingPolicy равен 1 (по умолчанию), экземпляр табличного сервера использует файл подкачки Windows. Выделение памяти не заблокировано: Windows может предоставлять дополнительные страницы памяти по мере необходимости. Поскольку используется подкачка, нет необходимости блокировать страницы в памяти. Таким образом, в конфигурации по умолчанию (где VertiPaqPagingPolicy = 1) нет необходимости предоставлять табличному экземпляру право доступа Блокировка страниц в памяти. VertiPaqPagingPolicy имеет значение 0. Если отключить подкачку для Analysis Services, выделение памяти будет заблокировано, если право доступа Блокировка страниц в памяти предоставлена табличному экземпляру. С учетом этого параметра и разрешения Блокировка страниц в памяти Windows не может выделять страницы в памяти для Analysis Services, когда в системе недостаточно памяти. Службы Analysis Services используют разрешение Блокировка страниц в памяти для реализации VertiPaqPagingPolicy = 0. Обратите внимание, что не рекомендуется отключать файл подкачки Windows. При этом возрастает количество ошибок нехватки памяти для операций, которые при включенной подкачке успешно бы работали. См. Свойства памяти для получения дополнительных сведений о VertiPaqPagingPolicy. |
Просмотр или добавление прав доступа Windows для учетной записи службы
Запустите GPEDIT.msc | Политика «Локальный компьютер» | Конфигурация компьютера | Конфигурация Windows | Параметры безопасности | Локальные политики | Назначение прав пользователя.
Просмотрите существующие политики, содержащие SQLServerMSASUser$. Это локальная группа безопасности на компьютерах, где установлены службы Analysis Services. Этой группе безопасности предоставляются и права доступа Windows, и разрешения для папок и файлов. Дважды щелкните политику Вход в качестве службы, чтобы увидеть, каким образом группа безопасности указана в системе. Полное имя группы безопасности будет различаться в зависимости от того, установлены ли службы Analysis Services в качестве именованного экземпляра. При добавлении прав доступа учетных записей используйте эту группу безопасности, а не фактическую учетную запись службы.
Чтобы добавить права доступа учетной записи в GPEDIT, щелкните правой кнопкой мыши Увеличение рабочего набора процесса и выберите Свойства.
Нажмите кнопку Добавить пользователя или группу .
Введите имя группы безопасности экземпляра Analysis Services. Помните, что имя состоит из группы безопасности, компьютера и имени экземпляра
В следующем списке приведено два примера для экземпляра по умолчанию "MSSQLSERVER" и именованного экземпляра "Tabular" на компьютере "SQL01-WIN12", где имя компьютера и будет именем локального домена.
SQL01-WIN12\SQLServerMSASUser$SQL01-WIN12$MSSQLSERVER
SQL01-WIN12\SQLServerMSASUser$SQL01-WIN12$TABULAR
Повторите эту процедуру для разрешения Настройка квот памяти для процесса, а также, при необходимости, для разрешений Блокировка страниц в памяти или Увеличение приоритета выполнения.
Примечание |
---|
Предыдущие версии программы установки самопроизвольно добавляли учетную запись служб Analysis Services в группу Пользователи журнала производительности. Несмотря на то что этот дефект исправлен, в существующих установках пребывание в этой группе, которое не требуется, может сохраняться. Поскольку учетной записи служб Службы Analysis Services не требуется членство в группе Пользователи журнала производительности, ее можно оттуда удалить. |
Разрешения файловой системы, назначенные службам Analysis Services
Примечание |
---|
Список разрешений, связанных с каждой папкой программы, см. в разделе Настройка учетных записей службы Windows и разрешений. Сведения о разрешениях, связанных с настройкой служб IIS и Службы Analysis Services, см. в разделе Настройка HTTP-доступа к службам Analysis Services в службах Internet Information Services (IIS) 7.0. |
Все разрешения файловой системы, необходимые для работы сервера (включая разрешения, необходимые для загрузки и выгрузки баз данных из заданной папки данных) назначаются программой установки SQL Server в ходе установки.
Помните, что владельцем разрешений для файлов данных, исполняемых файлов программ, файлов конфигурации, файлов журналов и временных файлов является локальная группа безопасности, создаваемая программой установки SQL Server.
Для каждого устанавливаемого экземпляра создается одна группа безопасности. Имя группы безопасности зависит от экземпляра: SQLServerMSASUser<имя_сервера>$MSSQLSERVER для экземпляра по умолчанию или SQLServerMSASUser$<имя сервера>$<имя экземпляра> для именованного экземпляра. Программа установки предоставляет этой группе безопасности файловые разрешения, необходимые для выполнения работы сервера. Если посмотреть права доступа для каталога \MSAS11.MSSQLSERVER\OLAP\BIN, становится очевидно, что владельцем разрешений на этот каталог является группа безопасности (а не учетная запись входа или идентификатор безопасности службы).
В этой группе безопасности только один член: идентификатор безопасности службы стартовой учетной записи экземпляра служб Службы Analysis Services. Программа установки добавляет SID службы в локальную группу безопасности. Выделение ресурсов программой установки SQL Server службам Analysis Services отличается от компонента Database Engine использованием локальной группы безопасности с членством SID.
Если вы считаете, что файловые разрешения повреждены, выполните следующие действия, чтобы проверить правильность выделения ресурсов для службы:
Используйте программу командной строки Service Control (sc.exe) для получения SID экземпляра службы по умолчанию.
SC showsid MSSqlServerOlapService
Для именованного экземпляра (где имя экземпляра — Tabular) используйте следующий синтаксис:
SC showsid MSOlap$Tabular
В диспетчере компьютера откройте раздел Локальные пользователи и группы | Группы для проверки членства группы безопасности SQLServerMSASUser$<имя_сервера>$<имя_экземпляра>.
SID члена должен совпадать с SID службы с шага 1.
В проводнике Windows откройте папку Program Files | Microsoft SQL Server | MSASxx.MSSQLServer | OLAP | bin, чтобы убедиться, что для папки на шаге 2 были заданы свойства безопасности.
Примечание |
---|
Никогда не удаляйте и не изменяйте идентификатор безопасности. Сведения о восстановлении непреднамеренно удаленного SID службы см. по адресу https://support.microsoft.com/kb/2620201. |
Дополнительные сведения о SID служб
Каждой учетной записи Windows назначен идентификатор безопасности, но у служб также могут быть идентификаторы безопасности, которые в этом случае называются "идентификаторы безопасности службы". Идентификатор безопасности службы создается при установке экземпляра службы в виде уникального и постоянного атрибута службы. Идентификатор безопасности службы является локальным идентификатором безопасности на уровне компьютера, созданным из имени службы. Понятное имя экземпляра по умолчанию — NT SERVICE\MSSQLServerOLAPService.
Преимущество идентификатора безопасности службы состоит в том, что можно произвольно изменять учетную запись входа, не затрагивая файловые разрешения. Например, предположим, что вы установили два экземпляра служб Analysis Services, экземпляр по умолчанию и именованный экземпляр, при этом оба они работают под одной учетной записью Windows. Хотя учетная запись входа является общей, каждый экземпляр службы будет иметь уникальный идентификатор безопасности службы. Этот идентификатор безопасности отличается от идентификатора безопасности учетной записи входа. Идентификатор безопасности службы используется для файловых разрешений и привилегий Windows. В то же время идентификатор безопасности учетной записи входа используется для сценариев проверки подлинности и авторизации ─ различные идентификаторы безопасности используются для разных целей.
Поскольку SID неизменен, списки управления доступом файловой системы, созданные при установке службы, могут быть использованы сколь угодно долго вне зависимости от того, насколько часто меняется учетная запись службы. В качестве дополнительной меры обеспечения безопасности списки управления доступом, которые задают разрешения посредством идентификатора безопасности, гарантируют, что доступ к исполняемым файлам программ и папкам данных получит только один экземпляр службы, даже если под этой же учетной записью работают и другие службы.
Предоставление дополнительных прав для определенных операций сервера
Службы Службы Analysis Services выполняют одни задачи в контексте безопасности учетной записи службы (или учетной записи входа), используемой для запуска служб Службы Analysis Services, а другие — в контексте безопасности пользователя, который запрашивает выполнение задачи.
В следующей таблице перечислены дополнительные разрешения, которые необходимы для поддержки выполнения задач от имени учетной записи службы.
Операция сервера |
Рабочий элемент |
Обоснование |
---|---|---|
Удаленный доступ к внешним реляционным источникам данных |
Создание имени пользователя базы данных для учетной записи службы |
Под обработкой понимается получение данных из внешнего источника данных (обычно это реляционная база данных), которые затем загружаются в базу данных служб Службы Analysis Services. Одним из вариантов применения учетных данных для получения внешних данных является использование учетной записи службы. Такой вариант можно использовать только в том случае, если будет создано имя входа в базу данных для учетной записи службы и предоставлены разрешения для базы данных-источника. Дополнительные сведения об использовании варианта с учетной записью службы для этой задачи см. в разделе Задание параметров олицетворения (службы SSAS — многомерные). Таким же образом, если в качестве режима хранения используется ROLAP, доступны такие же варианты олицетворения. В этом случае учетная запись также должна иметь доступ на запись в данные источника, чтобы обрабатывать секции ROLAP (то есть сохранять агрегаты). |
DirectQuery |
Создание имени пользователя базы данных для учетной записи службы |
DirectQuery — это табличный компонент, используемый для запросов ко внешним наборам данных, которые либо слишком велики и не помещаются в табличную модель, либо имеют другие характеристики, делающие DirectQuery более удачным вариантом, чем используемое по умолчанию хранение в памяти. Одним из вариантов подключения, доступных в режиме DirectQuery, является использование учетной записи службы. Опять же этот вариант работает только тогда, когда учетная запись службы имеет имя входа в базу данных и разрешения на чтение в целевом источнике данных. Дополнительные сведения об использовании варианта с учетной записью службы для этой задачи см. в разделе Задание параметров олицетворения (службы SSAS — многомерные). Кроме того, для получения данных можно использовать учетные данные текущего пользователя. В большинстве случаев этот вариант подразумевает использование подключения в два этапа, поэтому обязательно настройте в учетной записи службы ограниченное делегирование Kerberos с тем, чтобы учетная запись службы могла делегировать удостоверения нижестоящему серверу. Дополнительные сведения см. в разделе Настройка служб Analysis Services для ограниченного делегирования Kerberos. |
Удаленный доступ к другим экземплярам служб 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. Дополнительные сведения см. в разделах Улучшение производительности служб SQL Server Analysis Services с помощью мастера оптимизации с учетом использования (блог) и Ведение журнала запросов в службах Analysis Services (блог). |
См. также
Справочник
Настройка учетных записей службы Windows и разрешений
Другие ресурсы
Учетная запись службы SQL Server и идентификатор безопасности службы (блог)