Делает ли SPSecurity.RunWithElevatedPrivileges что-нибудь в консольном приложении?

StackOverflow https://stackoverflow.com/questions/121504

  •  02-07-2019
  •  | 
  •  

Вопрос

Судя по тому, что я узнал из рефлектора, RunWithElevatedPriveleges просто возвращает идентификатор текущего потока к базовому (неолицетворенному) идентификатору.Это имеет смысл в случае кода, выполняющегося внутри пула приложений WSS, поскольку базовая учетная запись службы является суперпользователем.Имеет ли это какой-либо эффект при запуске во внешнем (консольном или служебном) приложении, когда олицетворение не существует?Думаю, что нет, но хотелось бы знать наверняка.В гугле я видел разные мнения по этому поводу.

Это было полезно?

Решение

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

Другие советы

Я думаю, было бы, если бы вы запустили исполняемый файл под одной учетной записью, а затем изменили его учетные данные с помощью кода (как это делает SP).В противном случае он не сможет получить разрешения, которых у него не было при запуске, без какого-либо способа создания объекта Credentials.

RunWithElevatedPriveleges не работает, если HTTPContext имеет значение null.В консоли HTTPContext имеет значение null.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top