Можно ли использовать RunWithElevatedPrivileges в сценарии PowerShell? - PullRequest
1 голос
/ 28 января 2010

Если да, приведите пример.

UPDATE:

У меня есть сценарий PowerShell, который перебирает все семейства сайтов в выбранном веб-приложении и изменяет свойство siteCollection.Audit.AuditFlags. Он отлично работает на моей машине для разработки, но команда siteCollection.Audit.Update() завершается неудачно с Доступ запрещен ошибка на рабочем сервере, хотя я пытаюсь запустить его как пользователь, являющийся администратором фермы. *

Ответы [ 3 ]

7 голосов
/ 23 декабря 2011

Да, может.

[Microsoft.SharePoint.SPSecurity]::RunWithElevatedPrivileges({ 
    $site = get-spsite "http://localhost/nonfarmadminsitecollection";
}); 

Будь осторожен с этим. Поскольку вы олицетворяете учетную запись процесса, вы теряете информацию о пользователе в журналах аудита.

4 голосов
/ 28 января 2010

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

3 голосов
/ 28 января 2010

Запуск powershell от имени администратора или пользователя пула приложений веб-приложения.

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