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

 

Применимо к: SharePoint Server 2010

Последнее изменение раздела: 2016-11-30

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

Важно!

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

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

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

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

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

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

Содержание:

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

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

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

Предупреждение

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

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

  1. Проверьте наличие следующих административных учетных данных.

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

  3. Щелкните имя веб-приложения, которое нужно настроить.

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

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

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

  7. В поле Пользователи введите имя пользователя для учетной записи "Суперпользователь портала".

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

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

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

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

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

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

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

Чтобы добавить пользовательские учетные записи в веб-приложение с помощью Windows PowerShell, выполните перечисленные ниже действия.

  1. Убедитесь в соответствии следующим минимальным требованиям: См. статью Add-SPShellAdmin.

  2. Скопируйте следующий код и вставьте его в текстовый редактор, например "Блокнот".

    $wa = Get-SPWebApplication -Identity "<WebApplication>"
    $wa.Properties["portalsuperuseraccount"] = "<SuperUser>"
    $wa.Properties["portalsuperreaderaccount"] = "<SuperReader>"
    $wa.Update()
    
  3. Замените следующие заполнители значениями:

    • <WebApplication> — это имя веб-приложения, в которое добавляются учетные записи.

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

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

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

    Примечание

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

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

  6. В меню Пуск выберите пункт Все программы.

  7. Выберите пункт Продукты Microsoft SharePoint 2010.

  8. Щелкните компонент Командная консоль SharePoint 2010.

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

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

  11. Сбросьте службы IIS. Дополнительные сведения о команде IISReset см. в статье, посвященной выполнению сброса IIS (Возможно, на английском языке)

See Also

Concepts

Настройка параметров кэширования (SharePoint Server 2010)