Настройка учетных записей пользователей кэша объектов в SharePoint Server

ОБЛАСТЬ ПРИМЕНЕНИЯ:yes-img-132013 yes-img-162016 yes-img-192019 yes-img-seSubscription Edition no-img-sopSharePoint в Microsoft 365

В кэше объектов хранятся свойства элементов в SharePoint Server. Элементы в этом кэше используются компонентом публикации при отображении веб-страниц. Задачей кэша объектов является снижение нагрузки на компьютер, на котором выполняется SQL Server, сокращение задержки и увеличение пропускной способности. Кэш объектов выполняет свои запросы с использованием одной из двух встроенных учетных записей: "Суперпользователь портала" и "Суперчитатель портала". Для обеспечения правильной работы кэша объектов эти пользовательские учетные записи должны быть правильно настроены. У учетной записи "Суперпользователь портала" должно быть разрешение "Полный доступ" для веб-приложения. У учетной записи "Суперчитатель портала" должно быть разрешение "Полное чтение" для веб-приложения.

Важно!

Учетные записи "Суперпользователь портала" и "Суперчитатель портала" должны быть разными, и их нельзя использовать для обычного входа на сайт.

В этой статье объясняется, почему необходимо настроить учетные записи пользователей кэша объектов, и описывается настройка учетных записей. Сведения о кэше объектов см. в разделе Операции с параметрами кэша в SharePoint Server.

В SharePoint Server запрос элементов связан с учетной записью пользователя, которая выполняет запрос. Различные функции компонента публикации выполняют запросы, результаты которых помещаются в кэш объектов. Кэширование результатов осуществляется в соответствии с пользователем, выполняющим запрос. Чтобы оптимизировать частоту попаданий в кэше и требования к памяти, запросы должны зависеть от того, может ли пользователь видеть черновики. Когда компонент публикации запрашивает кэш объектов с целью получить данные для элемента управления, кэш выполняет запрос не от имени запросившего пользователя, а сначала с использованием учетной записи "Суперпользователь портала", а затем с использованием учетной записи "Суперчитатель портала". Результаты этих двух запросов сохраняются в кэше объектов. Результаты для учетной записи "Суперпользователь портала" включают черновики, а результаты для учетной записи "Суперчитатель портала" включают только опубликованные элементы. Затем кэш объектов проверяет списки управления доступом для пользователя, направившего запрос, и возвращает соответствующие результаты этому пользователю, которые зависят от того, может ли он видеть черновики. Добавление в веб-приложение учетных записей "Суперпользователь портала" и "Суперчитатель портала" позволяет хранить в кэше результаты только для двух пользователей. Это приводит к увеличению числа результатов, возвращаемых для запроса, и сокращению объема памяти, необходимой для хранения кэша.

По умолчанию учетная запись "Суперпользователь портала" является системной учетной записью сайта, а учетная запись "Суперчитатель портала" — учетной записью NT Authority\Local Service. При использовании встроенных учетных записей нужно иметь в виду два момента.

  1. Во-первых, в системную учетную запись извлекаются некоторые элементы, поэтому при выполнении запроса, включающего эти элементы, возвращается извлеченная версия, а не последняя опубликованная версия элемента. Это создает проблему, так как пользователь обычно ожидает другого результата, поэтому кэш должен выполнить второй запрос, чтобы получить правильную версию файла. Это негативно отражается на производительности сервера для всех запросов, включающих подобные элементы. Та же проблема возникает для любого пользователя, который имеет извлеченные элементы, если учетная запись этого пользователя сделана учетной записью "Суперпользователь портала". Именно поэтому учетные записи "Суперпользователь портала" и "Суперчитатель портала" не должны быть учетными записями пользователей для входа на сайт. Это гарантирует, что пользователь не сможет случайно извлечь элементы и таким образом содействовать снижению производительности.

  2. Учетной записью "Суперпользователь портала" по умолчанию является NT Authority\Local Service, которая неправильно распознается в приложениях с проверкой подлинности на основе утверждений. В результате если для приложения с проверкой подлинности на основе утверждений учетная запись "Суперпользователь портала" не настроена явно, переход к семействам веб-сайтов в этом приложении приведет к ошибке "Доступ запрещен" даже для администратора сайта. Эта ошибка будет возникать на любом сайте, на котором используются какие-либо компоненты, которые явно обращаются к кэшу объектов, такие как инфраструктура публикации SharePoint Server, навигация для метаданных, веб-часть "Запрос контента" или навигация.

Настройка пользовательских учетных записей кэша объектов с помощью центра администрирования и Windows PowerShell

Учетные записи пользователей для кэша объектов можно настроить на веб-сайте центра администрирования SharePoint и Microsoft PowerShell. Сначала необходимо создать учетные записи в центре администрирования, а затем добавить их в веб-приложение с помощью PowerShell. Учетные записи нужно добавить в каждое веб-приложение.

Предостережение

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

Создание учетных записей пользователей с помощью центра администрирования

  1. Убедитесь в том, что учетная запись пользователя, используемая для выполнения этой процедуры, является участником группы "Администраторы фермы" на компьютере, на котором запущен веб-сайт центра администрирования SharePoint.

  2. В центре администрирования в разделе Управление приложениями щелкните Управление веб-приложениями, а затем выберите имя веб-приложения, которое требуется настроить.

  3. На вкладке Веб-приложения в группе Политика выберите Политика пользователей.

  4. В окне "Политика для веб-приложения" нажмите кнопку Добавить пользователей.

  5. В списке Зоны выберите Все зоны и нажмите кнопку Далее.

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

  7. В разделе Выбор разрешений установите флажок Полный доступ — имеет полный доступ и нажмите кнопку Готово.

  8. Повторите шаги 5–7 для учетной записи Супер читателя портала.

  9. В разделе Выбор разрешений установите флажок Полное чтение.

  10. Нажмите кнопку Готово.

  11. Обратите внимание, что имена учетных записей "Суперпользователь портала" и "Суперчитатель портала" отображаются в столбце Имя пользователя. Показанные строки могут быть другими, если для веб-приложения используется служба проверки подлинности на основе утверждений.

Добавление учетных записей пользователей в веб-приложение с помощью Microsoft PowerShell

  1. Убедитесь, что вы являетесь участником следующих групп:
  • Предопределенная роль сервера securityadmin для экземпляра SQL Server.

  • Предопределенная роль базы данных db_owner во всех базах данных, которые должны обновляться.

  • Группа администраторов для сервера, на котором выполняются командлеты PowerShell.

  • Добавьте участие в группах, необходимое помимо приведенных выше минимальных требований.

    С помощью командлета Add-SPShellAdmin администратор может предоставлять разрешения на использование командлетов SharePoint Server.

    Примечание.

    При отсутствии разрешений обратитесь к своему администратору программы установки или администратору SQL Server за разрешениями. Дополнительные сведения о разрешениях PowerShell см. в разделах Разрешения и Add-SPShellAdmin.

  1. Вставьте следующий код в текстовый редактор, например Блокнот:
$wa = Get-SPWebApplication -Identity "<WebApplication>"
$wa.Properties["portalsuperuseraccount"] = "<SuperUser>"
$wa.Properties["portalsuperreaderaccount"] = "<SuperReader>"
$wa.Update()
  1. Замените следующие заполнители значениями:
  • <WebApplication> — это имя веб-приложения, в которое добавляются учетные записи.

  • <SuperUser> — это учетная запись, используемая для учетной записи суперпользователя портала, как она отображалась в столбце Имя пользователя , упомянутом на шаге 11 предыдущей процедуры.

  • <SuperReader> — это учетная запись, используемая для учетной записи суперчитателя портала, как она отображалась в столбце Имя пользователя , упомянутом на шаге 11 предыдущей процедуры.

  1. Сохраните файл с именем SetUsers.ps1.

    Примечание.

    В качестве имени файла можно указать любое другое имя, однако его необходимо сохранить в виде текстового файла в формате ANSI с расширением PS1.

  2. Закройте текстовый редактор.

  3. Откройте Командная консоль SharePoint.

  4. Измените каталог сохранения файла.

  5. В командной строке PowerShell введите следующую команду: ./SetUsers.ps1

  6. Сброс служб IIS. Дополнительные сведения о IISReset см. в разделе Запуск или остановка веб-сервера (IIS 8).

См. также

Концепции

Cache settings operations in SharePoint Server